Add netGetMacAddr function

git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@1301 e54a6e83-5905-42d5-8d5c-058d10e6a962


Origin commit data
------------------
Branch: ni/coolstream
Commit: ddbbb73760
Author: [CST] Focus <focus.cst@gmail.com>
Date: 2011-03-16 (Wed, 16 Mar 2011)



------------------
This commit was generated by Migit
This commit is contained in:
[CST] Focus
2011-03-16 10:52:08 +00:00
parent 2a3307ea24
commit e2a6a8f2d6
2 changed files with 21 additions and 0 deletions

View File

@@ -265,3 +265,23 @@ void netGetNameserver( char *ip )
}
fclose(fp);
}
void netGetMacAddr(char * ifname, unsigned char * mac)
{
int fd;
struct ifreq ifr;
memset(mac, 0, 6);
fd = socket(AF_INET, SOCK_DGRAM, 0);
if(fd < 0)
return;
ifr.ifr_addr.sa_family = AF_INET;
strncpy(ifr.ifr_name, ifname, IFNAMSIZ-1);
if(ioctl(fd, SIOCGIFHWADDR, &ifr) < 0)
return;
memmove(mac, ifr.ifr_hwaddr.sa_data, 6);
}

View File

@@ -17,6 +17,7 @@ extern char *netGetHostname( void );
extern void netSetHostname( char *host );
extern void netSetNameserver(const char *ip);
extern void netGetNameserver( char *ip );
extern void netGetMacAddr(char * ifname, unsigned char * mac);
#ifdef __cplusplus