openbsd-ports/net/openafs/patches/patch-src_rx_rx_getaddr_c

56 lines
1.6 KiB
Plaintext
Raw Normal View History

diff -u src/rx/rx_getaddr.c.orig src/rx/rx_getaddr.c
--- src/rx/rx_getaddr.c.orig Wed Oct 11 06:29:02 2006
+++ src/rx/rx_getaddr.c Tue Apr 22 17:22:55 2008
@@ -169,6 +169,12 @@ rx_getAllAddr_internal(afs_int32 buffer[], int maxSize
next = buf;
while (next < lim) {
ifm = (struct if_msghdr *)next;
+#if defined(AFS_OBSD42_ENV)
+ if (ifm->ifm_version != RTM_VERSION) {
+ next += ifm->ifm_msglen;
+ continue;
+ }
+#endif
if (ifm->ifm_type != RTM_IFINFO) {
dpf(("out of sync parsing NET_RT_IFLIST\n"));
free(buf);
@@ -180,6 +186,12 @@ rx_getAllAddr_internal(afs_int32 buffer[], int maxSize
addrcount = 0;
while (next < lim) {
nextifm = (struct if_msghdr *)next;
+#if defined(AFS_OBSD42_ENV)
+ if (nextifm->ifm_version != RTM_VERSION) {
+ next += nextifm->ifm_msglen;
+ continue;
+ }
+#endif
if (nextifm->ifm_type != RTM_NEWADDR)
break;
if (ifam == NULL)
@@ -256,6 +268,12 @@ rxi_getAllAddrMaskMtu(afs_int32 addrBuffer[], afs_int3
next = buf;
while (next < lim) {
ifm = (struct if_msghdr *)next;
+#if defined(AFS_OBSD42_ENV)
+ if (ifm->ifm_version != RTM_VERSION) {
+ next += ifm->ifm_msglen;
+ continue;
+ }
+#endif
if (ifm->ifm_type != RTM_IFINFO) {
dpf(("out of sync parsing NET_RT_IFLIST\n"));
free(buf);
@@ -267,6 +285,12 @@ rxi_getAllAddrMaskMtu(afs_int32 addrBuffer[], afs_int3
addrcount = 0;
while (next < lim) {
nextifm = (struct if_msghdr *)next;
+#if defined(AFS_OBSD42_ENV)
+ if (nextifm->ifm_version != RTM_VERSION) {
+ next += nextifm->ifm_msglen;
+ continue;
+ }
+#endif
if (nextifm->ifm_type != RTM_NEWADDR)
break;
if (ifam == NULL)