diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-08-24 19:15:20 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-08-24 20:34:20 -0400 |
| commit | dbfd865b05d6c4e9395a39bb24f5eaf0b850451c (patch) | |
| tree | 91addae6b8793292c899a3c64a56511507a152d1 /eigrpd/eigrp_interface.c | |
| parent | 32e5503d8f987bbc1e8193ce94139d72e7ea7582 (diff) | |
eigrpd: Cleanup various SA Issues
1) Handle key value not found on interface
2) Handle various NULL pointer possibilities
3) Fix possible integer overflow
4) Fix memory leak
5) Check return codes on sscanf
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'eigrpd/eigrp_interface.c')
| -rw-r--r-- | eigrpd/eigrp_interface.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/eigrpd/eigrp_interface.c b/eigrpd/eigrp_interface.c index ae9ec293ce..59b1724f85 100644 --- a/eigrpd/eigrp_interface.c +++ b/eigrpd/eigrp_interface.c @@ -249,15 +249,14 @@ int eigrp_if_up(struct eigrp_interface *ei) struct eigrp_metrics metric; struct eigrp_interface *ei2; struct listnode *node, *nnode; - struct eigrp *eigrp = eigrp_lookup(); + struct eigrp *eigrp; if (ei == NULL) return 0; - if (eigrp != NULL) - eigrp_adjust_sndbuflen(eigrp, ei->ifp->mtu); - else - zlog_warn("%s: eigrp_lookup () returned NULL", __func__); + eigrp = ei->eigrp; + eigrp_adjust_sndbuflen(eigrp, ei->ifp->mtu); + eigrp_if_stream_set(ei); /* Set multicast memberships appropriately for new state. */ |
