我们从Python开源项目中,提取了以下6个代码示例,用于说明如何使用netaddr.valid_mac()。
def serialize(self, _payload=None, _prev=None): opt_buf = bytearray() if self.options is not None: opt_buf = self.options.serialize() if netaddr.valid_mac(self.chaddr): chaddr = addrconv.mac.text_to_bin(self.chaddr) else: chaddr = self.chaddr self.hlen = len(chaddr) return struct.pack(self._DHCP_PACK_STR, self.op, self.htype, self.hlen, self.hops, self.xid, self.secs, self.flags, addrconv.ipv4.text_to_bin(self.ciaddr), addrconv.ipv4.text_to_bin(self.yiaddr), addrconv.ipv4.text_to_bin(self.siaddr), addrconv.ipv4.text_to_bin(self.giaddr), chaddr, self.sname.encode('ascii'), self.boot_file.encode('ascii')) + opt_buf
def validate(value): if isinstance(value, six.string_types) and netaddr.valid_mac(value): return value raise ValueError(_("Expected MAC String, got '%s'") % value)
def __init__(self, dl_addr): super(OFPActionDlAddr, self).__init__() if (isinstance(dl_addr, (six.text_type, str)) and netaddr.valid_mac(dl_addr)): dl_addr = addrconv.mac.text_to_bin(dl_addr) self.dl_addr = dl_addr
def serialize(self): # fixup if netaddr.valid_mac(self.hw_addr): # MAC address hw_addr_len = 6 hw_addr = addrconv.mac.text_to_bin(self.hw_addr) else: # Unknown hardware address hw_addr_len = len(self.hw_addr) hw_addr = self.hw_addr if self.ll_type: # Assumption: version<=2 buf = struct.pack( self._HEADER_FMT, self.ifname.encode('ascii'), self.ifindex, self.status, self.if_flags, self.metric, self.ifmtu, self.ifmtu6, self.bandwidth, self.ll_type, hw_addr_len) + hw_addr else: buf = struct.pack( self._HEADER_SHORT_FMT, self.ifname.encode('ascii'), self.ifindex, self.status, self.if_flags, self.metric, self.ifmtu, self.ifmtu6, self.bandwidth, hw_addr_len) + hw_addr if isinstance(self.link_params, InterfaceLinkParams): buf += struct.pack(self._LP_STATE_FMT, True) buf += self.link_params.serialize() elif self.ll_type is None: # Assumption: version<=2 pass else: buf += struct.pack(self._LP_STATE_FMT, False) return buf
def test_list_virtual_interfaces(self): # Positive test:Should be able to GET the virtual interfaces list # for a given server_id resp, output = self.client.list_virtual_interfaces(self.server_id) self.assertEqual(200, resp.status) self.assertIsNotNone(output) virt_ifaces = output self.assertNotEqual(0, len(virt_ifaces['virtual_interfaces']), 'Expected virtual interfaces, got 0 interfaces.') for virt_iface in virt_ifaces['virtual_interfaces']: mac_address = virt_iface['mac_address'] self.assertTrue(netaddr.valid_mac(mac_address), "Invalid mac address detected.")