Date: Wed, 21 Feb 2007 16:49:41 -0600 From: Don Hinton <don.hinton@vanderbilt.edu> To: freebsd-questions@freebsd.org Cc: nocturnal <nocturnal@swehack.se>, freebsd-hackers@freebsd.org, Pietro Cerutti <pietro.cerutti@gmail.com> Subject: Re: Which file to request SIOCGIFMAC on? Message-ID: <200702211649.49108.don.hinton@vanderbilt.edu> In-Reply-To: <45DCB3AC.8090609@swehack.se> References: <45DB63B1.7050004@swehack.se> <e572718c0702201518i67ab5289pc24592625a9ec6d4@mail.gmail.com> <45DCB3AC.8090609@swehack.se>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart6855273.rMar1JWdIm Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Wednesday 21 February 2007 15:03, nocturnal wrote: > Hi > > Well that's weird, is MAC defined by default at all? I tried searching > for the definition but couldn't find it. > > I never thought it would be this hard just to get the ethernet address > from an ethernet interface in FreeBSD. I think i'll take a look at the > netlib source next, something tells me it will be easier to just > plagiarize their method than going through the kernel source any more. Have you tried google? This was asked on freebsd-hackers a few months ago: http://lists.freebsd.org/pipermail/freebsd-hackers/2006-August/017601.html hth... don > > > > Med v=C3=A4nliga h=C3=A4lsningar > > Stefan Midjich aka nocturnal > [Swehack] http://swehack.se > > Pietro Cerutti wrote: > > On 2/20/07, nocturnal <nocturnal@swehack.se> wrote: > >> Hi > >> > >> The original plan is to only run it on FreeBSD 5 and higher, actually > >> only 6 by now. It's a program i'm writing for work and at work the most > >> active servers run FreeBSD 6 and are updated frequently. The ones with > >> older versions don't run anything of interest. > >> > >> I am buying a MacBook for personal use though so it would be nice to r= un > >> it on osx. I wouldn't like to start using another library just to get > >> the hardware address of an interface though, that seems kinda overkill > >> for what should be a simple task. The program is already using libpcap > >> but that is included in FreeBSD by default so you don't have to > >> install it. > >> > >> Do you have any idea of why i'm getting this error from ioctl when i'm > >> doing what the manual says i should do? I am of course running it as > >> root to because the libpcap operations require it. > >> > >> What might help me is to take a look at the source of that > >> libnet_get_hwaddr function in libnet. I'll try that, thank you very mu= ch > >> for the tip. > >> > >> So far i've been trying to look at the source for ifconfig to figure o= ut > >> how it gets the hardware address. Of course it uses SIOCGIFMAC but i > >> can't find the socket it opens because i can't find where it uses the > >> maclabel_status function. > > > > The problem isn't with the socket type or options. > > If you debug ifconfig, you'll find out that the ioctl call always > > returns -1, and the program goes on to the "goto mac_free" line. > > > > Take a look at /usr/src/sys/net/if.c, line 1258 > > > > Should we deduce that the particular ioctl isn't supported? > > > > P.S. I'm forwarding this to freebsd-hackers@ too, so sorry for cross > > posting > > > >> Med v=C3=A4nliga h=C3=A4lsningar > >> > >> Stefan Midjich aka nocturnal > >> [Swehack] http://swehack.se > >> > >> Chuck Swiger wrote: > >> > On Feb 20, 2007, at 1:10 PM, nocturnal wrote: > >> >> I'm trying to get the ethernet address and from the manuals i > >> >> understand that i need the ifreq structure for this. So i'm trying = to > >> >> request SIOCGIFMAC with ioctl on a socket of type SOCK_DGRAM. > >> > > >> > If you're just targetting FreeBSD >=3D 5.x platforms, your current > >> > approach is reasonable (assuming you can fix whatever the problem is= ); > >> > if you're targetting other platforms such FreeBSD 4, Dfly, OS X, or > >> > >> SysV > >> > >> > things like Solaris, try installing the libnet port and invoke > >> > libnet_get_hwaddr(). > >> > > >> > ---Chuck > >> > >> _______________________________________________ > > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to > "freebsd-questions-unsubscribe@freebsd.org" =2D-=20 Don Hinton <don.hinton at vanderbilt.edu> or <hintonda at gmail.com> Institute for Software Integrated Systems (ISIS), Vanderbilt University tel: 615.480.5667 or 615.870.9728 --nextPart6855273.rMar1JWdIm Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (FreeBSD) iD4DBQBF3MyM0U0xbM5cLs0RApisAJjup24/r9abRSffaFdlOdLS3IAPAKDCsx/9 O07xX/nrHhQWVldfRVKx9w== =7V6+ -----END PGP SIGNATURE----- --nextPart6855273.rMar1JWdIm--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200702211649.49108.don.hinton>