Package: dhcp
Version: 2.0pl5-19.1
Severity: normal

Hi,

the token-ring patch does this in common/dispatch.c:

+#ifndef HAVE_ARPHRD_IEEE802_TR
+# define ARPHRD_IEEE802_TR HTYPE_IEEE802_TR
+#endif
+                     case ARPHRD_IEEE802_TR:
+                       tmp -> hw_address.hlen = 6;
+                       tmp -> hw_address.htype = ARPHRD_IEEE802;
+                       memcpy (tmp -> hw_address.haddr, sa.sa_data, 6);
+                       break;
+

However, it seems to not #define HTYPE_IEEE802_TR anywhere, so this code
is bound to fail on systems which do not #define HAVE_ARPHRD_IEEE802_TR
in their include/cf/foo.h header file. The other HTYPE_* get #defined in
include/dhcp.h, so this belong there as well I guess. However, I am not
sure what HTYPE_IEEE802_TR actually should be defined as. <net/if_arp.h>
#defines HAVE_ARPHRD_IEEE802_TR as 800, but it also #defines ARPHRD_FDDI
as 774, while include/dhcp.h has HTYPE_FDDI as 8.

Also, I think it be better to move the #endif down the block, as is done
for most of the other types:

#ifdef HAVE_ARPHRD_NETROM
                      case ARPHRD_NETROM:
                        tmp -> hw_address.hlen = 6;
                        tmp -> hw_address.htype = ARPHRD_NETROM;
                        memcpy (tmp -> hw_address.haddr, sa.sa_data, 6);
                        break;
#endif

and just add an addtional check like

#ifndef ARPHRD_IEEE802_TR
# define ARPHRD_IEEE802_TR HTYPE_IEEE802_TR
#endif

The last issue is that it should be checked whether ARPHRD_ETHER is
defined and probably be defined to HTYPE_ETHER if not.


cheers,

Michael

-- 
Michael Banck
Debian Developer
[EMAIL PROTECTED]
http://www.advogato.org/person/mbanck/diary.html


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to