[quagga-dev 1005] bugzilla #86: ospf_recv_packet will fail on Solaris/x86
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog
index ca9dd04..140f87a 100644
--- a/ospfd/ChangeLog
+++ b/ospfd/ChangeLog
@@ -1,3 +1,8 @@
+2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
+
+ * ospf_packet.c: Don't drop packets in Solaris x86.
+ [quagga-dev 1005].
+
2004-03-18 Amir Guindehi <amir@datacore.ch>
* ospf_opaque.c: Attempt to correct the incorrect behavior of
diff --git a/ospfd/ospf_packet.c b/ospfd/ospf_packet.c
index 528e8d3..1f8ecd4 100644
--- a/ospfd/ospf_packet.c
+++ b/ospfd/ospf_packet.c
@@ -2018,8 +2018,12 @@
pktinfo = (struct in_pktinfo *)CMSG_DATA(cmsg);
ifindex = pktinfo->ipi_ifindex;
#elif defined (IP_RECVIF)
+#ifdef SUNOS_5
+ ifindex = *(uint_t *)CMSG_DATA(cmsg);
+#else
pktinfo = (struct sockaddr_dl *)CMSG_DATA(cmsg);
ifindex = pktinfo->sdl_index;
+#endif /* SUNOS_5 */
#else
ifindex = 0;
#endif