diff options
author | whitespace / reindent <invalid@invalid.invalid> | 2017-07-17 14:03:14 +0200 |
---|---|---|
committer | whitespace / reindent <invalid@invalid.invalid> | 2017-07-17 14:04:07 +0200 |
commit | d62a17aedeb0eebdba98238874bb13d62c48dbf9 (patch) | |
tree | 3b319b1d61c8b85b4d1f06adf8b844bb8a9b5107 /ospfd/ospf_network.c | |
parent | *: add indent control files (diff) | |
download | frr-d62a17aedeb0eebdba98238874bb13d62c48dbf9.tar.xz frr-d62a17aedeb0eebdba98238874bb13d62c48dbf9.zip |
*: reindentreindent-master-after
indent.py `git ls-files | pcregrep '\.[ch]$' | pcregrep -v '^(ldpd|babeld|nhrpd)/'`
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'ospfd/ospf_network.c')
-rw-r--r-- | ospfd/ospf_network.c | 312 |
1 files changed, 160 insertions, 152 deletions
diff --git a/ospfd/ospf_network.c b/ospfd/ospf_network.c index 0f5785966..c72c69856 100644 --- a/ospfd/ospf_network.c +++ b/ospfd/ospf_network.c @@ -42,185 +42,193 @@ extern struct zebra_privs_t ospfd_privs; #include "ospfd/ospf_packet.h" - /* Join to the OSPF ALL SPF ROUTERS multicast group. */ -int -ospf_if_add_allspfrouters (struct ospf *top, struct prefix *p, - ifindex_t ifindex) +int ospf_if_add_allspfrouters(struct ospf *top, struct prefix *p, + ifindex_t ifindex) { - int ret; - - ret = setsockopt_ipv4_multicast (top->fd, IP_ADD_MEMBERSHIP, - p->u.prefix4, htonl (OSPF_ALLSPFROUTERS), - ifindex); - if (ret < 0) - zlog_warn ("can't setsockopt IP_ADD_MEMBERSHIP (fd %d, addr %s, " - "ifindex %u, AllSPFRouters): %s; perhaps a kernel limit " - "on # of multicast group memberships has been exceeded?", - top->fd, inet_ntoa(p->u.prefix4), ifindex, safe_strerror(errno)); - else - zlog_debug ("interface %s [%u] join AllSPFRouters Multicast group.", - inet_ntoa (p->u.prefix4), ifindex); - - return ret; + int ret; + + ret = setsockopt_ipv4_multicast(top->fd, IP_ADD_MEMBERSHIP, + p->u.prefix4, htonl(OSPF_ALLSPFROUTERS), + ifindex); + if (ret < 0) + zlog_warn( + "can't setsockopt IP_ADD_MEMBERSHIP (fd %d, addr %s, " + "ifindex %u, AllSPFRouters): %s; perhaps a kernel limit " + "on # of multicast group memberships has been exceeded?", + top->fd, inet_ntoa(p->u.prefix4), ifindex, + safe_strerror(errno)); + else + zlog_debug( + "interface %s [%u] join AllSPFRouters Multicast group.", + inet_ntoa(p->u.prefix4), ifindex); + + return ret; } -int -ospf_if_drop_allspfrouters (struct ospf *top, struct prefix *p, - ifindex_t ifindex) +int ospf_if_drop_allspfrouters(struct ospf *top, struct prefix *p, + ifindex_t ifindex) { - int ret; - - ret = setsockopt_ipv4_multicast (top->fd, IP_DROP_MEMBERSHIP, - p->u.prefix4, htonl (OSPF_ALLSPFROUTERS), - ifindex); - if (ret < 0) - zlog_warn ("can't setsockopt IP_DROP_MEMBERSHIP (fd %d, addr %s, " - "ifindex %u, AllSPFRouters): %s", - top->fd, inet_ntoa(p->u.prefix4), ifindex, safe_strerror(errno)); - else - zlog_debug ("interface %s [%u] leave AllSPFRouters Multicast group.", - inet_ntoa (p->u.prefix4), ifindex); - - return ret; + int ret; + + ret = setsockopt_ipv4_multicast(top->fd, IP_DROP_MEMBERSHIP, + p->u.prefix4, htonl(OSPF_ALLSPFROUTERS), + ifindex); + if (ret < 0) + zlog_warn( + "can't setsockopt IP_DROP_MEMBERSHIP (fd %d, addr %s, " + "ifindex %u, AllSPFRouters): %s", + top->fd, inet_ntoa(p->u.prefix4), ifindex, + safe_strerror(errno)); + else + zlog_debug( + "interface %s [%u] leave AllSPFRouters Multicast group.", + inet_ntoa(p->u.prefix4), ifindex); + + return ret; } /* Join to the OSPF ALL Designated ROUTERS multicast group. */ -int -ospf_if_add_alldrouters (struct ospf *top, struct prefix *p, ifindex_t ifindex) +int ospf_if_add_alldrouters(struct ospf *top, struct prefix *p, + ifindex_t ifindex) { - int ret; - - ret = setsockopt_ipv4_multicast (top->fd, IP_ADD_MEMBERSHIP, - p->u.prefix4, htonl (OSPF_ALLDROUTERS), - ifindex); - if (ret < 0) - zlog_warn ("can't setsockopt IP_ADD_MEMBERSHIP (fd %d, addr %s, " - "ifindex %u, AllDRouters): %s; perhaps a kernel limit " - "on # of multicast group memberships has been exceeded?", - top->fd, inet_ntoa(p->u.prefix4), ifindex, safe_strerror(errno)); - else - zlog_debug ("interface %s [%u] join AllDRouters Multicast group.", - inet_ntoa (p->u.prefix4), ifindex); - - return ret; + int ret; + + ret = setsockopt_ipv4_multicast(top->fd, IP_ADD_MEMBERSHIP, + p->u.prefix4, htonl(OSPF_ALLDROUTERS), + ifindex); + if (ret < 0) + zlog_warn( + "can't setsockopt IP_ADD_MEMBERSHIP (fd %d, addr %s, " + "ifindex %u, AllDRouters): %s; perhaps a kernel limit " + "on # of multicast group memberships has been exceeded?", + top->fd, inet_ntoa(p->u.prefix4), ifindex, + safe_strerror(errno)); + else + zlog_debug( + "interface %s [%u] join AllDRouters Multicast group.", + inet_ntoa(p->u.prefix4), ifindex); + + return ret; } -int -ospf_if_drop_alldrouters (struct ospf *top, struct prefix *p, ifindex_t ifindex) +int ospf_if_drop_alldrouters(struct ospf *top, struct prefix *p, + ifindex_t ifindex) { - int ret; - - ret = setsockopt_ipv4_multicast (top->fd, IP_DROP_MEMBERSHIP, - p->u.prefix4, htonl (OSPF_ALLDROUTERS), - ifindex); - if (ret < 0) - zlog_warn ("can't setsockopt IP_DROP_MEMBERSHIP (fd %d, addr %s, " - "ifindex %u, AllDRouters): %s", - top->fd, inet_ntoa(p->u.prefix4), ifindex, safe_strerror(errno)); - else - zlog_debug ("interface %s [%u] leave AllDRouters Multicast group.", - inet_ntoa (p->u.prefix4), ifindex); - - return ret; + int ret; + + ret = setsockopt_ipv4_multicast(top->fd, IP_DROP_MEMBERSHIP, + p->u.prefix4, htonl(OSPF_ALLDROUTERS), + ifindex); + if (ret < 0) + zlog_warn( + "can't setsockopt IP_DROP_MEMBERSHIP (fd %d, addr %s, " + "ifindex %u, AllDRouters): %s", + top->fd, inet_ntoa(p->u.prefix4), ifindex, + safe_strerror(errno)); + else + zlog_debug( + "interface %s [%u] leave AllDRouters Multicast group.", + inet_ntoa(p->u.prefix4), ifindex); + + return ret; } -int -ospf_if_ipmulticast (struct ospf *top, struct prefix *p, ifindex_t ifindex) +int ospf_if_ipmulticast(struct ospf *top, struct prefix *p, ifindex_t ifindex) { - u_char val; - int ret, len; - - /* Prevent receiving self-origined multicast packets. */ - ret = setsockopt_ipv4_multicast_loop (top->fd, 0); - if (ret < 0) - zlog_warn ("can't setsockopt IP_MULTICAST_LOOP(0) for fd %d: %s", - top->fd, safe_strerror(errno)); - - /* Explicitly set multicast ttl to 1 -- endo. */ - val = 1; - len = sizeof (val); - ret = setsockopt (top->fd, IPPROTO_IP, IP_MULTICAST_TTL, (void *)&val, len); - if (ret < 0) - zlog_warn ("can't setsockopt IP_MULTICAST_TTL(1) for fd %d: %s", - top->fd, safe_strerror (errno)); - - ret = setsockopt_ipv4_multicast_if (top->fd, p->u.prefix4, ifindex); - if (ret < 0) - zlog_warn("can't setsockopt IP_MULTICAST_IF(fd %d, addr %s, " - "ifindex %u): %s", - top->fd, inet_ntoa(p->u.prefix4), ifindex, safe_strerror(errno)); - - return ret; + u_char val; + int ret, len; + + /* Prevent receiving self-origined multicast packets. */ + ret = setsockopt_ipv4_multicast_loop(top->fd, 0); + if (ret < 0) + zlog_warn("can't setsockopt IP_MULTICAST_LOOP(0) for fd %d: %s", + top->fd, safe_strerror(errno)); + + /* Explicitly set multicast ttl to 1 -- endo. */ + val = 1; + len = sizeof(val); + ret = setsockopt(top->fd, IPPROTO_IP, IP_MULTICAST_TTL, (void *)&val, + len); + if (ret < 0) + zlog_warn("can't setsockopt IP_MULTICAST_TTL(1) for fd %d: %s", + top->fd, safe_strerror(errno)); + + ret = setsockopt_ipv4_multicast_if(top->fd, p->u.prefix4, ifindex); + if (ret < 0) + zlog_warn( + "can't setsockopt IP_MULTICAST_IF(fd %d, addr %s, " + "ifindex %u): %s", + top->fd, inet_ntoa(p->u.prefix4), ifindex, + safe_strerror(errno)); + + return ret; } -int -ospf_sock_init (void) +int ospf_sock_init(void) { - int ospf_sock; - int ret, hincl = 1; - int bufsize = (8 * 1024 * 1024); - - if ( ospfd_privs.change (ZPRIVS_RAISE) ) - zlog_err ("ospf_sock_init: could not raise privs, %s", - safe_strerror (errno) ); - - ospf_sock = socket (AF_INET, SOCK_RAW, IPPROTO_OSPFIGP); - if (ospf_sock < 0) - { - int save_errno = errno; - if ( ospfd_privs.change (ZPRIVS_LOWER) ) - zlog_err ("ospf_sock_init: could not lower privs, %s", - safe_strerror (errno) ); - zlog_err ("ospf_read_sock_init: socket: %s", safe_strerror (save_errno)); - exit(1); - } - + int ospf_sock; + int ret, hincl = 1; + int bufsize = (8 * 1024 * 1024); + + if (ospfd_privs.change(ZPRIVS_RAISE)) + zlog_err("ospf_sock_init: could not raise privs, %s", + safe_strerror(errno)); + + ospf_sock = socket(AF_INET, SOCK_RAW, IPPROTO_OSPFIGP); + if (ospf_sock < 0) { + int save_errno = errno; + if (ospfd_privs.change(ZPRIVS_LOWER)) + zlog_err("ospf_sock_init: could not lower privs, %s", + safe_strerror(errno)); + zlog_err("ospf_read_sock_init: socket: %s", + safe_strerror(save_errno)); + exit(1); + } + #ifdef IP_HDRINCL - /* we will include IP header with packet */ - ret = setsockopt (ospf_sock, IPPROTO_IP, IP_HDRINCL, &hincl, sizeof (hincl)); - if (ret < 0) - { - int save_errno = errno; - if ( ospfd_privs.change (ZPRIVS_LOWER) ) - zlog_err ("ospf_sock_init: could not lower privs, %s", - safe_strerror (errno) ); - zlog_warn ("Can't set IP_HDRINCL option for fd %d: %s", - ospf_sock, safe_strerror(save_errno)); - } -#elif defined (IPTOS_PREC_INTERNETCONTROL) + /* we will include IP header with packet */ + ret = setsockopt(ospf_sock, IPPROTO_IP, IP_HDRINCL, &hincl, + sizeof(hincl)); + if (ret < 0) { + int save_errno = errno; + if (ospfd_privs.change(ZPRIVS_LOWER)) + zlog_err("ospf_sock_init: could not lower privs, %s", + safe_strerror(errno)); + zlog_warn("Can't set IP_HDRINCL option for fd %d: %s", + ospf_sock, safe_strerror(save_errno)); + } +#elif defined(IPTOS_PREC_INTERNETCONTROL) #warning "IP_HDRINCL not available on this system" #warning "using IPTOS_PREC_INTERNETCONTROL" - ret = setsockopt_ipv4_tos(ospf_sock, IPTOS_PREC_INTERNETCONTROL); - if (ret < 0) - { - int save_errno = errno; - if ( ospfd_privs.change (ZPRIVS_LOWER) ) - zlog_err ("ospf_sock_init: could not lower privs, %s", - safe_strerror (errno) ); - zlog_warn ("can't set sockopt IP_TOS %d to socket %d: %s", - tos, ospf_sock, safe_strerror(save_errno)); - close (ospf_sock); /* Prevent sd leak. */ - return ret; - } + ret = setsockopt_ipv4_tos(ospf_sock, IPTOS_PREC_INTERNETCONTROL); + if (ret < 0) { + int save_errno = errno; + if (ospfd_privs.change(ZPRIVS_LOWER)) + zlog_err("ospf_sock_init: could not lower privs, %s", + safe_strerror(errno)); + zlog_warn("can't set sockopt IP_TOS %d to socket %d: %s", tos, + ospf_sock, safe_strerror(save_errno)); + close(ospf_sock); /* Prevent sd leak. */ + return ret; + } #else /* !IPTOS_PREC_INTERNETCONTROL */ #warning "IP_HDRINCL not available, nor is IPTOS_PREC_INTERNETCONTROL" - zlog_warn ("IP_HDRINCL option not available"); + zlog_warn("IP_HDRINCL option not available"); #endif /* IP_HDRINCL */ - ret = setsockopt_ifindex (AF_INET, ospf_sock, 1); + ret = setsockopt_ifindex(AF_INET, ospf_sock, 1); - if (ret < 0) - zlog_warn ("Can't set pktinfo option for fd %d", ospf_sock); + if (ret < 0) + zlog_warn("Can't set pktinfo option for fd %d", ospf_sock); - if (ospfd_privs.change (ZPRIVS_LOWER)) - { - zlog_err ("ospf_sock_init: could not lower privs, %s", - safe_strerror (errno) ); - } + if (ospfd_privs.change(ZPRIVS_LOWER)) { + zlog_err("ospf_sock_init: could not lower privs, %s", + safe_strerror(errno)); + } - setsockopt_so_sendbuf (ospf_sock, bufsize); - setsockopt_so_recvbuf (ospf_sock, bufsize); + setsockopt_so_sendbuf(ospf_sock, bufsize); + setsockopt_so_recvbuf(ospf_sock, bufsize); - return ospf_sock; + return ospf_sock; } |