diff options
Diffstat (limited to 'ldpd/ldp_zebra.c')
| -rw-r--r-- | ldpd/ldp_zebra.c | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/ldpd/ldp_zebra.c b/ldpd/ldp_zebra.c index 3852d8d23b..df9832a281 100644 --- a/ldpd/ldp_zebra.c +++ b/ldpd/ldp_zebra.c @@ -127,8 +127,12 @@ ldp_zebra_opaque_unregister(void) int ldp_sync_zebra_send_state_update(struct ldp_igp_sync_if_state *state) { - return zclient_send_opaque(zclient, LDP_IGP_SYNC_IF_STATE_UPDATE, - (const uint8_t *) state, sizeof(*state)); + if (zclient_send_opaque(zclient, LDP_IGP_SYNC_IF_STATE_UPDATE, + (const uint8_t *)state, sizeof(*state)) + == ZCLIENT_SEND_FAILURE) + return -1; + else + return 0; } static int @@ -137,8 +141,12 @@ ldp_sync_zebra_send_announce(void) struct ldp_igp_sync_announce announce; announce.proto = ZEBRA_ROUTE_LDP; - return zclient_send_opaque(zclient, LDP_IGP_SYNC_ANNOUNCE_UPDATE, - (const uint8_t *) &announce, sizeof(announce)); + if (zclient_send_opaque(zclient, LDP_IGP_SYNC_ANNOUNCE_UPDATE, + (const uint8_t *)&announce, sizeof(announce)) + == ZCLIENT_SEND_FAILURE) + return -1; + else + return 0; } static int @@ -272,7 +280,10 @@ ldp_zebra_send_mpls_labels(int cmd, struct kroute *kr) znh->label_num = 1; znh->labels[0] = kr->remote_label; - return zebra_send_mpls_labels(zclient, cmd, &zl); + if (zebra_send_mpls_labels(zclient, cmd, &zl) == ZCLIENT_SEND_FAILURE) + return -1; + + return 0; } int @@ -293,7 +304,8 @@ kmpw_add(struct zapi_pw *zpw) debug_zebra_out("pseudowire %s nexthop %s (add)", zpw->ifname, log_addr(zpw->af, (union ldpd_addr *)&zpw->nexthop)); - return (zebra_send_pw(zclient, ZEBRA_PW_ADD, zpw)); + return zebra_send_pw(zclient, ZEBRA_PW_ADD, zpw) + == ZCLIENT_SEND_FAILURE; } int @@ -302,7 +314,8 @@ kmpw_del(struct zapi_pw *zpw) debug_zebra_out("pseudowire %s nexthop %s (del)", zpw->ifname, log_addr(zpw->af, (union ldpd_addr *)&zpw->nexthop)); - return (zebra_send_pw(zclient, ZEBRA_PW_DELETE, zpw)); + return zebra_send_pw(zclient, ZEBRA_PW_DELETE, zpw) + == ZCLIENT_SEND_FAILURE; } int @@ -312,7 +325,8 @@ kmpw_set(struct zapi_pw *zpw) zpw->ifname, log_addr(zpw->af, (union ldpd_addr *)&zpw->nexthop), zpw->local_label, zpw->remote_label); - return (zebra_send_pw(zclient, ZEBRA_PW_SET, zpw)); + return zebra_send_pw(zclient, ZEBRA_PW_SET, zpw) + == ZCLIENT_SEND_FAILURE; } int @@ -321,7 +335,8 @@ kmpw_unset(struct zapi_pw *zpw) debug_zebra_out("pseudowire %s nexthop %s (unset)", zpw->ifname, log_addr(zpw->af, (union ldpd_addr *)&zpw->nexthop)); - return (zebra_send_pw(zclient, ZEBRA_PW_UNSET, zpw)); + return zebra_send_pw(zclient, ZEBRA_PW_UNSET, zpw) + == ZCLIENT_SEND_FAILURE; } void |
