それでMACアドレスが正常に取得されているかどうかはどこでわかるのでしょうか?
ソースコードを貼り付けさせて頂きます。(C言語で御座います。)
#include <stdio.h>
#include <string.h>
#include <ifaddrs.h>
#include <sys/socket.h>
#include <net/if.h>
#include <net/if_dl.h>
#include <net/if_types.h>
int main()
{
struct ifaddrs *ifa_list, *ifa;
struct sockaddr_dl *dl;
char name[12];
unsigned char *addr;
if (getifaddrs(&ifa_list) < 0) {
return 1;
}
for (ifa = ifa_list; ifa != NULL; ifa = ifa->ifa_next) {
dl = (struct sockaddr_dl*)ifa->ifa_addr;
if (dl->sdl_family == AF_LINK && dl->sdl_type == IFT_ETHER) {
memcpy(name, dl->sdl_data, dl->sdl_nlen);
name[dl->sdl_nlen] = '\0';
addr = LLADDR(dl);
printf("%s: %02x:%02x:%02x:%02x:%02x:%02x\n",
name,
addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);
}
}
freeifaddrs(ifa_list);
return 0;
}
eclipseのコンソール画面には何も出ないので困っています。
非常に馬鹿ですがキーワードだけでも零してもらえると嬉しいです。(MacOSです)