Skip to content

Commit

Permalink
Add comment questioning part of previous change (Denis?).
Browse files Browse the repository at this point in the history
Fix indentation to match accumulated changes.
  • Loading branch information
Greg Troxel committed Aug 2, 2007
1 parent f76594a commit dfdb8f1
Showing 1 changed file with 31 additions and 26 deletions.
57 changes: 31 additions & 26 deletions zebra/rt_socket.c
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,11 @@ kernel_rtm_ipv4 (int cmd, struct prefix *p, struct rib *rib, int family)
{
gate = 0;

/*
* XXX We need to refrain from kernel operations in some cases,
* but this if statement seems overly cautious - what about
* other than ADD and DELETE?
*/
if ((cmd == RTM_ADD
&& CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_ACTIVE))
|| (cmd == RTM_DELETE
Expand Down Expand Up @@ -127,14 +132,14 @@ kernel_rtm_ipv4 (int cmd, struct prefix *p, struct rib *rib, int family)
|| nexthop->type == NEXTHOP_TYPE_IFNAME
|| nexthop->type == NEXTHOP_TYPE_IPV4_IFINDEX)
ifindex = nexthop->ifindex;
if (nexthop->type == NEXTHOP_TYPE_BLACKHOLE)
{
struct in_addr loopback;
loopback.s_addr = htonl (INADDR_LOOPBACK);
sin_gate.sin_addr = loopback;
gate = 1;
}
}
if (nexthop->type == NEXTHOP_TYPE_BLACKHOLE)
{
struct in_addr loopback;
loopback.s_addr = htonl (INADDR_LOOPBACK);
sin_gate.sin_addr = loopback;
gate = 1;
}
}

if (gate && p->prefixlen == 32)
mask = NULL;
Expand All @@ -148,27 +153,27 @@ kernel_rtm_ipv4 (int cmd, struct prefix *p, struct rib *rib, int family)
mask = &sin_mask;
}

error = rtm_write (cmd,
(union sockunion *)&sin_dest,
(union sockunion *)mask,
gate ? (union sockunion *)&sin_gate : NULL,
ifindex,
rib->flags,
rib->metric);
error = rtm_write (cmd,
(union sockunion *)&sin_dest,
(union sockunion *)mask,
gate ? (union sockunion *)&sin_gate : NULL,
ifindex,
rib->flags,
rib->metric);

#if 0
if (error)
{
zlog_info ("kernel_rtm_ipv4(): nexthop %d add error=%d.",
nexthop_num, error);
}
if (error)
{
zlog_info ("kernel_rtm_ipv4(): nexthop %d add error=%d.",
nexthop_num, error);
}
#endif
if (error == 0)
{
nexthop_num++;
if (cmd == RTM_ADD)
SET_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB);
}
if (error == 0)
{
nexthop_num++;
if (cmd == RTM_ADD)
SET_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB);
}
}
}

Expand Down

0 comments on commit dfdb8f1

Please sign in to comment.