-#ifndef IPFORWARDING
-#ifdef GATEWAY
-#define IPFORWARDING 1 /* forward IP packets not for us */
-#else /* GATEWAY */
-#define IPFORWARDING 0 /* don't forward IP packets not for us */
-#endif /* GATEWAY */
-#endif /* IPFORWARDING */
-#ifndef IPSENDREDIRECTS
-#define IPSENDREDIRECTS 1
-#endif
-int ipforwarding = IPFORWARDING;
-int ipsendredirects = IPSENDREDIRECTS;
-#ifdef DIAGNOSTIC
-int ipprintfs = 0;
-#endif
-
-extern struct domain inetdomain;
-extern struct protosw inetsw[];
-u_char ip_protox[IPPROTO_MAX];
-int ipqmaxlen = IFQ_MAXLEN;
-struct in_ifaddr *in_ifaddr; /* first inet address */
+static void ip_freef(struct ipq *);
+static void ip_enq(struct ipasfrag *, struct ipasfrag *);
+static void ip_deq(struct ipasfrag *);
+static void save_rte(u_char *, struct in_addr);
+static void ip_forward(struct mbuf *, int);
+static struct ip *ip_reass(struct ipasfrag *, struct ipq *);