Add function to convert macaddress into string

This commit is contained in:
vemax78 2013-09-30 17:36:43 +02:00
parent fb5327a713
commit b94c128a38
2 changed files with 14 additions and 0 deletions

View File

@ -1274,3 +1274,15 @@ void capwap_interface_list(struct capwap_network* net, struct capwap_list* list)
/* Free */ /* Free */
freeifaddrs(ifaddrlist); freeifaddrs(ifaddrlist);
} }
char* capwap_printf_macaddress(char* buffer, unsigned char* macaddress, int type) {
if (type == MACADDRESS_EUI48_LENGTH) {
sprintf(buffer, "%02x:%02x:%02x:%02x:%02x:%02x", macaddress[0], macaddress[1], macaddress[2], macaddress[3], macaddress[4], macaddress[5]);
} else if (type == MACADDRESS_EUI64_LENGTH) {
sprintf(buffer, "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x", macaddress[0], macaddress[1], macaddress[2], macaddress[3], macaddress[4], macaddress[5], macaddress[6], macaddress[7]);
} else {
return NULL;
}
return buffer;
}

View File

@ -92,4 +92,6 @@ int capwap_address_from_string(const char* ip, struct sockaddr_storage* address)
int capwap_get_localaddress_by_remoteaddress(struct sockaddr_storage* local, struct sockaddr_storage* remote, char* oif, int ipv6dualstack); int capwap_get_localaddress_by_remoteaddress(struct sockaddr_storage* local, struct sockaddr_storage* remote, char* oif, int ipv6dualstack);
char* capwap_printf_macaddress(char* buffer, unsigned char* macaddress, int type);
#endif /* __CAPWAP_NETWORK_HEADER__ */ #endif /* __CAPWAP_NETWORK_HEADER__ */