我们从Python开源项目中,提取了以下5个代码示例,用于说明如何使用netaddr.mac_bare()。
def sendWoL(mac, broadcast=findBroadcast()): """Given string mac and broadcast: Turn on computer using WoL This was taken from http://code.activestate.com/recipes/358449-wake-on-lan/. Thanks, Fadly! """ # Cleans and removes delimiters from MAC try: mac = format_mac(EUI(mac), mac_bare) except AddrFormatError: raise ValueError('Incorrect MAC address format') # Pad the synchronization stream. data = ''.join(['FFFFFFFFFFFF', mac * 20]) send_data = b'' # Split up the hex values and pack. for i in range(0, len(data), 2): send_data = b''.join([send_data, pack('B', int(data[i: i + 2], 16))]) # Broadcast it to the LAN. sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) sock.sendto(send_data, (broadcast, 7))
def _bare_query(v): v.dialect = netaddr.mac_bare return str(v)
def hwaddr(value, query = '', alias = 'hwaddr'): ''' Check if string is a HW/MAC address and filter it ''' try: v = netaddr.EUI(value) except: if query and query not in [ 'bool' ]: raise errors.AnsibleFilterError(alias + ': not a hardware address: %s' % value) if not query: if v: return value elif query == 'bool': if v: return True elif query in [ 'win', 'eui48' ]: v.dialect = netaddr.mac_eui48 return str(v) elif query == 'unix': v.dialect = netaddr.mac_unix return str(v) elif query in [ 'pgsql', 'postgresql', 'psql' ]: v.dialect = netaddr.mac_pgsql return str(v) elif query == 'cisco': v.dialect = netaddr.mac_cisco return str(v) elif query == 'bare': v.dialect = netaddr.mac_bare return str(v) elif query == 'linux': v.dialect = mac_linux return str(v) else: raise errors.AnsibleFilterError(alias + ': unknown filter type: %s' % query) return False