Hi Jeff,
thanks for your comments.
I just committed a version (to the 3.14 branch) that should address
topics 1) and 3) of your list. Would you cross-check if that's what you
meant? Thanks.
About topic 2): as the code calls into socket_ioctl() in the same
fashion, I would say: yes.
If you and Eric don't disagree, I will add those changes (later, not
today, as my shift ends in 5 minutes...)
Cheers,
Ralph
Jeff Hill wrote:
(Waiting for Jeff to approve the changes in osdNetIntf.c)
After a very quick look I have these comments:
1) I think I see that the data structure for the first network interface is
skipped over (never seen) because of the following sequence of events. On
many, but not all, UNIX-like systems the first interface might be the
loopback interface. That might explain why this hasn't been observed to be a
problem?
O pIfreqList = (struct ifreq *) calloc ( nelem, sizeof(*pifreq) );
O the ioctl copies the struct ifreq data structures to pIfreqList
O pifreq = pIfreqList; //the for loop initializer
O pnextifreq = ifreqNext (pifreq);
O // oops! skipped over the first network interface
O memmove(pIfreqList, pnextifreq, current_ifreqsize);
O use pIfreqList to look at the current struct ifreq
O pifreq = pnextifreq //for loop increment
2) Do we need the same type of changes also in osiLocalAddr?
3) At line 120 this code was added. Similar code is also at line 43. Perhaps
this code could be repackaged into a common function - a wrapper for the osd
ifreq_size() with the goal being that the wrapper is the only caller of OSD
ifreq_size()? Otherwise we could move this code into OSD ifreq_size() but
that would probably be a less fault tolerant approach (mistakes made by a
programmers porting to new os are what we might be concerned about).
if ( current_ifreqsize < sizeof ( *pifreq ) ) {
current_ifreqsize = sizeof ( *pifreq );
}
Jeff
- Replies:
- RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- References:
- RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- Navigate by Date:
- Prev:
RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- Next:
RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- Next:
RE: Changes for RTEMS on ARM (at91rm9200ek) Jeff Hill
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|