zebra: deal with irdp compile warnings
* zebra/irdp.h
* irdp_send_thread(): move prototype to common header file
* irdp_advert_off(): idem
* process_solicit(): idem
* irdp_read_raw(): idem
* send_packet(): idem
* zebra/irdp_interface.c
* inet_2a(): move function to where it is used
* in_cksum(): lib/checksum.h already provides prototype
* irdp_send_thread(): prototype moved away
* inet_2a(): idem
* irdp_advert_off(): idem
* b1, b2, b3, b4: get rid of global buffers for inet_2a()
* if_group(): add local buffer for inet_2a()
* if_add_group(): idem
* if_drop_group(): idem
* irdp_config_write(): idem
* Adv_new(): make static
* zebra/irdp_main.c
* irdp_read_raw(): prototype moved away
* send_packet(): idem
* in_cksum(): lib/checksum.h already provides prototype
* inet_2a(): function moved to irdp_interface.c
* zebra/irdp_packet.c
* b1, b2, b3, b4: get rid of global buffers for inet_2a()
* in_cksum(): lib/checksum.h already provides prototype
* process_solicit(): prototype moved away
* irdp_read_raw(): fix uninitialized variable
diff --git a/zebra/irdp_packet.c b/zebra/irdp_packet.c
index 6003837..28dc171 100644
--- a/zebra/irdp_packet.c
+++ b/zebra/irdp_packet.c
@@ -59,6 +59,7 @@
#include "zebra/irdp.h"
#include <netinet/ip_icmp.h>
#include "if.h"
+#include "checksum.h"
#include "sockunion.h"
#include "log.h"
#include "sockopt.h"
@@ -67,12 +68,9 @@
/* GLOBAL VARS */
int irdp_sock = -1;
-char b1[16], b2[16], b3[16], b4[16]; /* For inet_2a */
extern struct zebra_t zebrad;
extern struct thread *t_irdp_raw;
-int in_cksum (void *ptr, int nbytes);
-void process_solicit (struct interface *ifp);
static void
parse_irdp_packet(char *p,
@@ -231,7 +229,7 @@
struct zebra_if *zi;
struct irdp_interface *irdp;
char buf[IRDP_RX_BUF];
- int ret, ifindex;
+ int ret, ifindex = 0;
int irdp_sock = THREAD_FD (r);
t_irdp_raw = thread_add_read (zebrad.master, irdp_read_raw, NULL, irdp_sock);