On Mon, 30 Aug 2010 14:36:09 +0200 lano <mail4l...@web.de> wrote: > Moin, > könnt mir nochmal jemand erklärend helfen, ich dreh hier auf kurz oder > lang durch. > Da denkste da haste was verstanden, nix ist, und try`n error nervt > langsam. > > *-------net.c------* > #include <stdio.h> > #include <string.h> > #include <net/if.h> > #include <netinet/in.h> > #include <sys/ioctl.h> > > #define BUFSIZE 60 > > unsigned char *get_mac(void) { > int sd; > struct ifreq ifr; > char *buffer=malloc(BUFSIZE+1); > buffer[0]=0; > > > sd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP); > if (sd < 0) { > perror("socket"); > exit(1); > } > > strncpy(&ifr.ifr_name, "eth0", IFNAMSIZ); > > if (ioctl(sd, SIOCGIFHWADDR, &ifr) < 0) { > perror("ioctl SIOCGIFHWADDR"); > exit(1); > } > > buffer = (unsigned char *) &ifr.ifr_hwaddr.sa_data; > > //printf("%02x:%02x:%02x:%02x:%02x:%02x\n", > buffer[0],buffer[1],buffer[2],buffer[3],buffer[4],buffer[5]); > *------- Wenn ich printf auskommentiere wird die mac auch > angezeigt------* return buffer; > } > > *------net.h------* > #ifndef __NET_H__ > #define __NET_H__ > > unsigned char *get_mac(void); > > #endif > > *-------main.c------* > #include "net.h" > char *buffer; > int main(int argc, char **argv) { > printf("Mac: %s\n", get_mac()); > free(buffer); > return 0; > } > > > > Was mach ich da wieder fürn blödsinn? > Buch lesen ist ja ganz nett, aber nen buch kann ich keine fragen > stellen. Das deprimiert dermaßen, hab langsam echt kein bock mehr. > > trotzdem vielen dank für eure hilfe und die bemühungen. > > -Sven- <--- der sich jetzt erstmal abreagieren muss Ich hab ehrlich gesagt Sowas noch nie gemacht, aber ... was genau ist denn da dein Problem?
Gruß, Nathanael -- ---------------------------------------------------------------------------- PUG - Penguin User Group Wiesbaden - http://www.pug.org