diff options
author | itojun <itojun@FreeBSD.org> | 2000-07-04 16:35:15 +0000 |
---|---|---|
committer | itojun <itojun@FreeBSD.org> | 2000-07-04 16:35:15 +0000 |
commit | 5f4e854de19331a53788d6100bbcd42845056bc1 (patch) | |
tree | 3ff8c876a5868b103fb8713055d83e29a3fa38d5 /sys/sys | |
parent | bdc16885232d771a99d7dfc247cd27a44cd061f9 (diff) | |
download | FreeBSD-src-5f4e854de19331a53788d6100bbcd42845056bc1.zip FreeBSD-src-5f4e854de19331a53788d6100bbcd42845056bc1.tar.gz |
sync with kame tree as of july00. tons of bug fixes/improvements.
API changes:
- additional IPv6 ioctls
- IPsec PF_KEY API was changed, it is mandatory to upgrade setkey(8).
(also syntax change)
Diffstat (limited to 'sys/sys')
-rw-r--r-- | sys/sys/mbuf.h | 18 | ||||
-rw-r--r-- | sys/sys/sockio.h | 2 |
2 files changed, 19 insertions, 1 deletions
diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index f81a97e..98c87fa 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -79,10 +79,11 @@ struct pkthdr { struct ifnet *rcvif; /* rcv interface */ int len; /* total packet length */ /* variables for ip and tcp reassembly */ - void *header; /* pointer to packet header */ + caddr_t header; /* pointer to packet header */ /* variables for hardware checksum */ int csum_flags; /* flags regarding checksum */ int csum_data; /* data field used by csum routines */ + struct mbuf *aux; /* extra data buffer; ipsec/others */ }; /* description of external storage mapped into mbuf, valid if M_EXT set */ @@ -322,6 +323,7 @@ union mcluster { _mm->m_flags = M_PKTHDR; \ _mm->m_pkthdr.rcvif = NULL; \ _mm->m_pkthdr.csum_flags = 0; \ + _mm->m_pkthdr.aux = (struct mbuf *)NULL; \ (m) = _mm; \ splx(_ms); \ } else { \ @@ -431,6 +433,7 @@ union mcluster { /* * Copy mbuf pkthdr from "from" to "to". * from must have M_PKTHDR set, and to must be empty. + * aux pointer will be moved to `to'. */ #define M_COPY_PKTHDR(to, from) do { \ struct mbuf *_mfrom = (from); \ @@ -439,6 +442,7 @@ union mcluster { _mto->m_data = _mto->m_pktdat; \ _mto->m_flags = _mfrom->m_flags & M_COPYFLAGS; \ _mto->m_pkthdr = _mfrom->m_pkthdr; \ + _mfrom->m_pkthdr.aux = (struct mbuf *)NULL; \ } while (0) /* @@ -516,6 +520,14 @@ union mcluster { /* compatibility with 4.3 */ #define m_copy(m, o, l) m_copym((m), (o), (l), M_DONTWAIT) +/* + * pkthdr.aux type tags. + */ +struct mauxtag { + int af; + int type; +}; + #ifdef _KERNEL extern u_int m_clalloc_wid; /* mbuf cluster wait count */ extern u_int m_mballoc_wid; /* mbuf wait count */ @@ -552,11 +564,15 @@ struct mbuf *m_gethdr __P((int, int)); int m_mballoc __P((int, int)); struct mbuf *m_mballoc_wait __P((int, int)); struct mbuf *m_prepend __P((struct mbuf *,int,int)); +struct mbuf *m_pulldown __P((struct mbuf *, int, int, int *)); void m_print __P((const struct mbuf *m)); struct mbuf *m_pullup __P((struct mbuf *, int)); struct mbuf *m_retry __P((int, int)); struct mbuf *m_retryhdr __P((int, int)); struct mbuf *m_split __P((struct mbuf *,int,int)); +struct mbuf *m_aux_add __P((struct mbuf *, int, int)); +struct mbuf *m_aux_find __P((struct mbuf *, int, int)); +void m_aux_delete __P((struct mbuf *, struct mbuf *)); #endif /* _KERNEL */ #endif /* !_SYS_MBUF_H_ */ diff --git a/sys/sys/sockio.h b/sys/sys/sockio.h index efa3cbc..c107562 100644 --- a/sys/sys/sockio.h +++ b/sys/sys/sockio.h @@ -90,6 +90,8 @@ #define SIOCSIFPHYADDR _IOW('i', 70, struct ifaliasreq) /* set gif addres */ #define SIOCGIFPSRCADDR _IOWR('i', 71, struct ifreq) /* get gif psrc addr */ #define SIOCGIFPDSTADDR _IOWR('i', 72, struct ifreq) /* get gif pdst addr */ +#define SIOCDIFPHYADDR _IOW('i', 73, struct ifreq) /* delete gif addrs */ + #define SIOCSIFGENERIC _IOW('i', 57, struct ifreq) /* generic IF set op */ #define SIOCGIFGENERIC _IOWR('i', 58, struct ifreq) /* generic IF get op */ |