[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