diff options
author | Martin Mares <mj@ucw.cz> | 2000-04-25 23:13:25 +0200 |
---|---|---|
committer | Martin Mares <mj@ucw.cz> | 2000-04-25 23:13:25 +0200 |
commit | efcece2da3054d9a0e5b5d2233549b3323428023 (patch) | |
tree | 835c92c6f7c6691c22cc998607251ce12431dcbd /proto/bgp/bgp.h | |
parent | a47a01083b6ff9196f39136d68ed32ac70b31d15 (diff) | |
download | bird-efcece2da3054d9a0e5b5d2233549b3323428023.tar bird-efcece2da3054d9a0e5b5d2233549b3323428023.zip |
Better reporting of both local and remote errors.
Diffstat (limited to 'proto/bgp/bgp.h')
-rw-r--r-- | proto/bgp/bgp.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/proto/bgp/bgp.h b/proto/bgp/bgp.h index 2e22111..85399c1 100644 --- a/proto/bgp/bgp.h +++ b/proto/bgp/bgp.h @@ -38,7 +38,8 @@ struct bgp_conn { struct timer *hold_timer; struct timer *keepalive_timer; int packets_to_send; /* Bitmap of packet types to be sent */ - int notify_code, notify_subcode, notify_arg, notify_arg_size; + int notify_code, notify_subcode, notify_size; + byte *notify_data; int error_flag; /* Error state, ignore all input */ int primary; /* This connection is primary */ unsigned hold_time, keepalive_time; /* Times calculated from my and neighbor's requirements */ @@ -90,7 +91,7 @@ extern struct linpool *bgp_linpool; void bgp_start_timer(struct timer *t, int value); void bgp_check(struct bgp_config *c); -void bgp_error(struct bgp_conn *c, unsigned code, unsigned subcode, unsigned data, unsigned len); +void bgp_error(struct bgp_conn *c, unsigned code, unsigned subcode, byte *data, int len); void bgp_close_conn(struct bgp_conn *c); /* attrs.c */ @@ -109,6 +110,7 @@ void bgp_free_bucket(struct bgp_proto *p, struct bgp_bucket *buck); void bgp_schedule_packet(struct bgp_conn *conn, int type); void bgp_tx(struct birdsock *sk); int bgp_rx(struct birdsock *sk, int size); +void bgp_log_error(struct bgp_proto *p, char *msg, unsigned code, unsigned subcode, byte *data, unsigned len); /* Packet types */ |