]> The Tcpdump Group git mirrors - libpcap/commitdiff
Fix compilation if INET6 isn't defined.
authorGuy Harris <[email protected]>
Tue, 17 Jan 2017 10:58:52 +0000 (02:58 -0800)
committerGuy Harris <[email protected]>
Tue, 17 Jan 2017 10:58:52 +0000 (02:58 -0800)
Addresses GitHub issue #541, but differently from the pull request (it
defines gen_gateway() with a function prototype rather than using a
pre-prototype-style definition).

gencode.c

index a887f2730f7ac55783d869467f7557629affc1f3..60494e3de9741cac60f53e31a5d14d6105d49433 100644 (file)
--- a/gencode.c
+++ b/gencode.c
@@ -523,7 +523,8 @@ static struct block *gen_host6(compiler_state_t *, struct in6_addr *,
     struct in6_addr *, int, int, int);
 #endif
 #ifndef INET6
-static struct block *gen_gateway(const u_char *, bpf_u_int32 **, int, int);
+static struct block *gen_gateway(compiler_state_t *, const u_char *,
+    bpf_u_int32 **, int, int);
 #endif
 static struct block *gen_ipfrag(compiler_state_t *);
 static struct block *gen_portatom(compiler_state_t *, int, bpf_int32);
@@ -690,7 +691,9 @@ pcap_compile(pcap_t *p, struct bpf_program *program,
        }
        initchunks(&cstate);
        cstate.no_optimize = 0;
+#ifdef INET6
        cstate.ai = NULL;
+#endif
        cstate.ic.root = NULL;
        cstate.ic.cur_mark = 0;
        cstate.bpf_pcap = p;
@@ -4902,11 +4905,8 @@ gen_host6(compiler_state_t *cstate, struct in6_addr *addr,
 
 #ifndef INET6
 static struct block *
-gen_gateway(eaddr, alist, proto, dir)
-       const u_char *eaddr;
-       bpf_u_int32 **alist;
-       int proto;
-       int dir;
+gen_gateway(compiler_state_t *cstate, const u_char *eaddr, bpf_u_int32 **alist,
+    int proto, int dir)
 {
        struct block *b0, *b1, *tmp;
 
@@ -6470,7 +6470,7 @@ gen_scode(compiler_state_t *cstate, const char *name, struct qual q)
                alist = pcap_nametoaddr(name);
                if (alist == NULL || *alist == NULL)
                        bpf_error(cstate, "unknown host '%s'", name);
-               b = gen_gateway(eaddr, alist, proto, dir);
+               b = gen_gateway(cstate, eaddr, alist, proto, dir);
                free(eaddr);
                return b;
 #else