arp
arp copied to clipboard
added functions to pad mac strings for net.ParseMAC()
On MacOS the MAC address strings returned by the ARP library are not directly consumable by the standard library's net.ParseMAC() function because the values aren't printed with a consistent number of digits.
This change adds a function that left pads the chunks between delimiters. If the delimiter is ":" or "-", the string is padded to 2 characters. If the delimiter is "." the string is padded to 4 characters:
0:0:c:7:ac:0 -> 00:00:0c:07:ac:00 0-0-c-7-ac-0 -> 00-00-0c-07-ac-00 0.c07.ac00 -> 0000.0c07.ac00
If the string consists of anything other than hex chars and a single delimiter the string is returned unmodified.