getifaddrs support for rtems?

Ralf Corsepius ralf.corsepius at rtems.org
Thu Oct 4 16:14:51 UTC 2007


On Wed, 2007-09-19 at 13:21 +0100, Keith Robertson wrote:
> Ralf Corsepius wrote:
> > On Fri, 2007-09-14 at 17:18 +0100, Keith Robertson wrote:
> >> Joel Sherrill wrote:
> >>> Keith Robertson wrote:
> >>>> Hi.
> >>>>
> >>>> http://www.rtems.com/ml/rtems-users/2006/december/thrd1.html#00142
> >>>>
> >>>> indicates this has been asked before, and there appears to be some 
> >>>> sort of a (AFAIK somewhat involved) work around using the SIOCGIFADDR 
> >>>> ioctl.
> >>>>
> >>>> However, most unixes these days seem to have this function and a few 
> >>>> related ones (getifaddrs freeifaddrs if_nametoindex if_indextoname 
> >>>> if_nameindex if_freenameindex).
> >>>>
> >>>> On linux, these appear to be provided by glibc.  As newlib only 
> >>>> provides the core libc routines, it understandably doesn't appear to 
> >>>> provide these.  To improve the clean portability of other applications 
> >>>> to rtems, I'd like to find a way to implement these.   Where would 
> >>>> rtems typically obtain such helper routines?  Write them ourselves?  
> >>>> From somewhere in the *Bsd sources?  Elsewhere?
> >>>>
> >>>>   
> >>> The BSD sources are always the best starting point.   From there,
> >>> all I can say is use the opengroup  description and write it yourself.
> >> Stupid question: the freebsd man pages have entries for getifaddrs and 
> >> similar, however, I can't find it mentioned anywhere on lxr for freebsd 
> >> at: http://fxr.watson.org  For linux, this makes sense, as it's provided 
> >> by glibc, however, who would provide this for freebsd?
> > Their libc - They all are there.
> > 
> > Check out the freebsd source tree from their CVS and you'll find them.
> 
> Good news.  I've been able to add getifaddrs, if_nameindex, if_indextoname.
> 
> The original sources were taken from the freebsd tree and I only needed 
> to make very minor modifications (commented out a few freebsd related 
> header files).
As this patch is pretty straight forward, I went ahead and checked in a
slightly modified version into rtems-4-8-branch and CVS-HEAD.

Thanks,
	Ralf






More information about the users mailing list