+extern uint32_t os_cpu_in_cksum_mbuf(struct mbuf *m, int len, int off,
+ uint32_t initial_sum);
+
+extern uint16_t inet_cksum(struct mbuf *, uint32_t, uint32_t, uint32_t);
+extern uint16_t inet_cksum_buffer(const void *, uint32_t, uint32_t, uint32_t);
+extern uint16_t in_addword(uint16_t, uint16_t);
+extern uint16_t in_pseudo(uint32_t, uint32_t, uint32_t);
+extern uint16_t in_pseudo64(uint64_t, uint64_t, uint64_t);
+extern uint16_t in_cksum_hdr_opt(const struct ip *);
+extern uint16_t ip_cksum_hdr_dir(struct mbuf *, uint32_t, int);
+extern uint16_t ip_cksum_hdr_dir_buffer(const void *, uint32_t, uint32_t, int);
+extern uint32_t in_finalize_cksum(struct mbuf *, uint32_t, uint32_t);
+extern uint16_t b_sum16(const void *buf, int len);
+#if DEBUG || DEVELOPMENT
+extern uint32_t in_cksum_mbuf_ref(struct mbuf *, int, int, uint32_t);
+#endif /* DEBUG || DEVELOPMENT */
+
+extern int in_getconninfo(struct socket *, sae_connid_t, uint32_t *,
+ uint32_t *, int32_t *, user_addr_t, socklen_t *, user_addr_t, socklen_t *,
+ uint32_t *, user_addr_t, uint32_t *);
+extern struct in_ifaddr * inifa_ifpwithflag(struct ifnet *, uint32_t);
+extern struct in_ifaddr * inifa_ifpclatv4(struct ifnet *);
+
+#define in_cksum(_m, _l) \
+ inet_cksum(_m, 0, 0, _l)
+#define in_cksum_buffer(_b, _l) \
+ inet_cksum_buffer(_b, 0, 0, _l)
+#define ip_cksum_hdr_in(_m, _l) \
+ ip_cksum_hdr_dir(_m, _l, 0)
+#define ip_cksum_hdr_out(_m, _l) \
+ ip_cksum_hdr_dir(_m, _l, 1)
+
+#define in_cksum_hdr(_ip) \
+ (~b_sum16(_ip, sizeof (struct ip)) & 0xffff)
+
+#define in_cksum_offset(_m, _o) \
+ ((void) in_finalize_cksum(_m, _o, CSUM_DELAY_IP))
+#define in_delayed_cksum(_m) \
+ ((void) in_finalize_cksum(_m, 0, CSUM_DELAY_DATA))
+#define in_delayed_cksum_offset(_m, _o) \
+ ((void) in_finalize_cksum(_m, _o, CSUM_DELAY_DATA))