-struct ip6aux *ip6_addaux(struct mbuf *);
-struct ip6aux *ip6_findaux(struct mbuf *);
-void ip6_delaux(struct mbuf *);
-extern void ip6_destroyaux(struct ip6aux *);
-extern void ip6_copyaux(struct ip6aux *, struct ip6aux *);
-
-int ip6_mforward(struct ip6_hdr *, struct ifnet *, struct mbuf *);
-int ip6_process_hopopts(struct mbuf *, u_int8_t *, int, u_int32_t *,
- u_int32_t *);
-struct mbuf **ip6_savecontrol_v4(struct inpcb *, struct mbuf *,
- struct mbuf **, int *);
-int ip6_savecontrol(struct inpcb *, struct mbuf *, struct mbuf **);
-struct mbuf *ip6_forward(struct mbuf *, struct route_in6 *, int);
-void ip6_notify_pmtu __P((struct inpcb *, struct sockaddr_in6 *,
- u_int32_t *));
-void ip6_mloopback(struct ifnet *, struct mbuf *, struct sockaddr_in6 *);
-int ip6_output(struct mbuf *, struct ip6_pktopts *, struct route_in6 *,
- int, struct ip6_moptions *, struct ifnet **, struct ip6_out_args *);
-int ip6_output_list(struct mbuf *, int, struct ip6_pktopts *,
- struct route_in6 *, int, struct ip6_moptions *, struct ifnet **,
- struct ip6_out_args *);
-int ip6_ctloutput(struct socket *, struct sockopt *sopt);
-void ip6_initpktopts(struct ip6_pktopts *);
-int ip6_setpktoptions(struct mbuf *, struct ip6_pktopts *, int, int);
-void ip6_clearpktopts(struct ip6_pktopts *, int);
-struct ip6_pktopts *ip6_copypktopts(struct ip6_pktopts *, int);
-int ip6_optlen(struct inpcb *);
-
-int route6_input(struct mbuf **, int *, int);
-
-void frag6_init(void);
-int frag6_input(struct mbuf **, int *, int);
-void frag6_slowtimo(void);
-void frag6_drain(void);
-
-int rip6_input(struct mbuf **, int *, int);
-void rip6_ctlinput(int, struct sockaddr *, void *);
-int rip6_ctloutput(struct socket *so, struct sockopt *sopt);
-int rip6_output(struct mbuf *, struct socket *, struct sockaddr_in6 *, struct mbuf *, int);
-
-int dest6_input(struct mbuf **, int *, int);
+extern struct ip6aux *ip6_addaux(struct mbuf *);
+extern struct ip6aux *ip6_findaux(struct mbuf *);
+extern void ip6_delaux(struct mbuf *);
+
+extern int ip6_process_hopopts(struct mbuf *, u_int8_t *, int, u_int32_t *,
+ u_int32_t *);
+extern struct mbuf **ip6_savecontrol_v4(struct inpcb *, struct mbuf *,
+ struct mbuf **, int *);
+extern int ip6_savecontrol(struct inpcb *, struct mbuf *, struct mbuf **);
+extern struct mbuf *ip6_forward(struct mbuf *, struct route_in6 *, int);
+extern void ip6_notify_pmtu(struct inpcb *, struct sockaddr_in6 *, u_int32_t *);
+extern void ip6_mloopback(struct ifnet *, struct ifnet *, struct mbuf *,
+ struct sockaddr_in6 *, uint32_t, int32_t);
+extern int ip6_output(struct mbuf *, struct ip6_pktopts *, struct route_in6 *,
+ int, struct ip6_moptions *, struct ifnet **, struct ip6_out_args *);
+extern int ip6_output_list(struct mbuf *, int, struct ip6_pktopts *,
+ struct route_in6 *, int, struct ip6_moptions *, struct ifnet **,
+ struct ip6_out_args *);
+extern int ip6_ctloutput(struct socket *, struct sockopt *);
+extern int ip6_raw_ctloutput(struct socket *, struct sockopt *);
+extern void ip6_initpktopts(struct ip6_pktopts *);
+extern int ip6_setpktoptions(struct mbuf *, struct ip6_pktopts *, int, int);
+extern void ip6_clearpktopts(struct ip6_pktopts *, int);
+extern struct ip6_pktopts *ip6_copypktopts(struct ip6_pktopts *, int);
+extern int ip6_optlen(struct inpcb *);
+extern void ip6_drain(void);
+
+extern int route6_input(struct mbuf **, int *, int);
+
+extern void frag6_init(void);
+extern int frag6_input(struct mbuf **, int *, int);
+extern void frag6_drain(void);
+
+extern int rip6_input(struct mbuf **, int *, int);
+extern void rip6_ctlinput(int, struct sockaddr *, void *);
+extern int rip6_ctloutput(struct socket *so, struct sockopt *sopt);
+extern int rip6_output(struct mbuf *, struct socket *, struct sockaddr_in6 *,
+ struct mbuf *, int);
+
+extern int dest6_input(struct mbuf **, int *, int);