2004-10-22 Paul Jakma <paul@dishone.st>

* ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
          function.
        * ospf_packet.c: (ospf_read) manually look up ifindex
          if system could not have returned one, eg openbsd.
This commit is contained in:
paul 2004-10-22 12:05:17 +00:00
parent 23b9c61e5b
commit ac1912327e
3 changed files with 15 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2004-10-22 Paul Jakma <paul@dishone.st>
* ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
function.
* ospf_packet.c: (ospf_read) manually look up ifindex
if system could not have returned one, eg openbsd.
2004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com> 2004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
* ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links

View File

@ -201,7 +201,8 @@ ospf_sock_init (void)
zlog_warn ("IP_HDRINCL option not available"); zlog_warn ("IP_HDRINCL option not available");
#endif /* IP_HDRINCL */ #endif /* IP_HDRINCL */
ret = setsockopt_pktinfo (AF_INET, ospf_sock, 1); ret = setsockopt_ifindex (AF_INET, ospf_sock, 1);
if (ret < 0) if (ret < 0)
zlog_warn ("Can't set pktinfo option"); zlog_warn ("Can't set pktinfo option");

View File

@ -2303,6 +2303,12 @@ ospf_read (struct thread *thread)
if (ibuf == NULL) if (ibuf == NULL)
return -1; return -1;
/* openbsd lacks IP_RECVIF */
#if !(defined(IP_PKTINFO) || defined(IP_RECVIF))
if (ifp == NULL)
ifp = if_lookup_address (iph->ip_src);
#endif /* !((defined(IP_PKTINFO) || defined(IP_RECVIF)) */
if (ifp == NULL) if (ifp == NULL)
{ {
stream_free (ibuf); stream_free (ibuf);