summaryrefslogtreecommitdiffstats
path: root/proto/bgp/bgp.h
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>2000-04-25 23:13:25 +0200
committerMartin Mares <mj@ucw.cz>2000-04-25 23:13:25 +0200
commitefcece2da3054d9a0e5b5d2233549b3323428023 (patch)
tree835c92c6f7c6691c22cc998607251ce12431dcbd /proto/bgp/bgp.h
parenta47a01083b6ff9196f39136d68ed32ac70b31d15 (diff)
downloadbird-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.h6
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 */