Home | History | Annotate | Download | only in netinet
History log of /src/sys/netinet/in_gif.h
RevisionDateAuthorComments
 1.18  27-Nov-2017  knakahara preserve gif(4) configs by psref(9) like vlan(4) and l2tp(4).

After Tx side does not use softint, gif(4) can use psref(9) for config
preservation like vlan(4) and l2tp(4).

update locking notes later.
 1.17  15-Nov-2017  knakahara Add argument to encapsw->pr_input() instead of m_tag.
 1.16  04-Jul-2016  knakahara branches: 1.16.10;
fix: gif(4) receive side race

A panic cause in rn_match() called by encap[46]_lookup(). The reason is that
gif(4) does not suspend receive packet processing in spite of suspending
transmit packet processing while anyone is doing gif(4) ioctl.
 1.15  26-Jan-2016  knakahara eliminate variable argument in encapsw
 1.14  23-Nov-2006  rpaulo branches: 1.14.98; 1.14.118;
New EtherIP driver based on tap(4) and gif(4) by Hans Rosenfeld.
Notable changes:
* Fixes PR 34268.
* Separates the code from gif(4) (which is more cleaner).
* Allows the usage of STP (Spanning Tree Protocol).
* Removed EtherIP implementation from gif(4)/tap(4).

Some input from Christos.
 1.13  10-Dec-2005  elad branches: 1.13.20; 1.13.22;
Multiple inclusion protection, as suggested by christos@ on tech-kern@
few days ago.
 1.12  06-Jun-2005  martin branches: 1.12.2;
Since we decided "const struct mbuf *" would not do the right thing (tm),
remove ~all const from mbuf pointers.
 1.11  31-Jan-2005  kim Add RFC 3378 EtherIP support, ported from OpenBSD to NetBSD by
Hans Rosenfeld (rosenfeld at grumpf.hope-2000.org)

This change makes it possible to add gif interfaces to bridges, which
will then send and receive IP protocol 97 packets. Packets are Ethernet
frames with an EtherIP header prepended.
 1.10  21-Apr-2004  itojun branches: 1.10.4; 1.10.6;
no space between function name and paren: foo (blah) -> foo(blah)
 1.9  18-Apr-2004  matt De __P()
 1.8  11-Nov-2002  itojun branches: 1.8.6;
make USE_ENCAPCHECK (in netinet*/*gif.c) to global option, GIF_ENCAPCHECK.
#ifdef out unneeded code when possible.
From: Krister Walfridsson <cato@df.lth.se>
 1.7  16-Aug-2001  itojun gif interface now uses generic software interrupt
(on archs that support it). also, make gif ALTQ-capable on outgoing.
sync with kame, comments from thorpej.
 1.6  29-Jul-2001  itojun sync gif interface code with latest kame.
IFF_RUNNING is clearified. attach/detach logic is more clearner.
the old code mistakenly set IFF_UP by itself, now the behavior is gone.
 1.5  19-Apr-2000  itojun branches: 1.5.6; 1.5.8;
introduce sys/netinet/ip_encap.c, to dispatch inbound packets
to protocol handlers, based on src/dst (for ip proto #4/41).
see comment in ip_encap.c for details of the problem we have.
there are too many protocol specs for ip proto #4/41.
backward compatibility with MROUTING case is now provided in ip_encap.c.

fix ipip to work with gif (using ip_encap.c). sorry for breakage.

gif now uses ip_encap.c.

introduce stf pseudo interface (implements 6to4, another IPv6-over-IPv4 code
with ip proto #41).
 1.4  06-Jul-1999  itojun branches: 1.4.2;
sync with KAME/NetBSD 1.4, SNAP kit 19990705.
key changes are:
- icmp6 redirect fix (dst check)
- revised ip6 multicast check for loopback i/f
- several RCS ID cleanups
 1.3  03-Jul-1999  thorpej RCS ID police.
 1.2  01-Jul-1999  itojun branches: 1.2.2;
IPv6 kernel code, based on KAME/NetBSD 1.4, SNAP kit 19990628.
(Sorry for a big commit, I can't separate this into several pieces...)
Pls check sys/netinet6/TODO and sys/netinet6/IMPLEMENTATION for details.

- sys/kern: do not assume single mbuf, accept chained mbuf on passing
data from userland to kernel (or other way round).
- "midway" ATM card: ATM PVC pseudo device support, like those done in ALTQ
package (ftp://ftp.csl.sony.co.jp/pub/kjc/).
- sys/netinet/tcp*: IPv4/v6 dual stack tcp support.
- sys/netinet/{ip6,icmp6}.h, sys/net/pfkeyv2.h: IETF document assumes those
file to be there so we patch it up.
- sys/netinet: IPsec additions are here and there.
- sys/netinet6/*: most of IPv6 code sits here.
- sys/netkey: IPsec key management code
- dev/pci/pcidevs: regen

In my understanding no code here is subject to export control so it
should be safe.
 1.1  28-Jun-1999  itojun branches: 1.1.2;
file in_gif.h was initially added on branch kame.
 1.1.2.2  06-Jul-1999  itojun KAME/NetBSD 1.4, SNAP kit 1999/07/05.
NOTE: this branch is just for reference purposes (i.e. for taking cvs diff).
do not touch anything on the branch. actual work must be done on HEAD branch.
 1.1.2.1  28-Jun-1999  itojun KAME/NetBSD 1.4 SNAP kit, dated 19990628.

NOTE: this branch (kame) is used just for refernce. this may not compile
due to multiple reasons.
 1.2.2.3  02-Aug-1999  thorpej Update from trunk.
 1.2.2.2  01-Jul-1999  thorpej Sync w/ -current.
 1.2.2.1  01-Jul-1999  thorpej file in_gif.h was added on branch chs-ubc2 on 1999-07-01 23:47:00 +0000
 1.4.2.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
 1.5.8.2  25-Aug-2001  thorpej Merge Aug 24 -current into the kqueue branch.
 1.5.8.1  03-Aug-2001  lukem update to -current
 1.5.6.2  11-Dec-2002  thorpej Sync with HEAD.
 1.5.6.1  24-Aug-2001  nathanw Catch up with -current.
 1.8.6.6  11-Dec-2005  christos Sync with head.
 1.8.6.5  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.8.6.4  04-Feb-2005  skrll Sync with HEAD.
 1.8.6.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.8.6.2  18-Sep-2004  skrll Sync with HEAD.
 1.8.6.1  03-Aug-2004  skrll Sync with HEAD
 1.10.6.1  12-Feb-2005  yamt sync with head.
 1.10.4.1  29-Apr-2005  kent sync with -current
 1.12.2.2  30-Dec-2006  yamt sync with head.
 1.12.2.1  21-Jun-2006  yamt sync with head.
 1.13.22.1  10-Dec-2006  yamt sync with head.
 1.13.20.1  12-Jan-2007  ad Sync with head.
 1.14.118.2  09-Jul-2016  skrll Sync with HEAD
 1.14.118.1  19-Mar-2016  skrll Sync with HEAD
 1.14.98.1  03-Dec-2017  jdolecek update from HEAD
 1.16.10.2  02-Jan-2018  snj Pull up following revision(s) (requested by knakahara in ticket #462):
sys/net/if_gif.c: revision 1.133, 1.134, 1.137
sys/net/if_gif.h: revision 1.28-1.29
sys/netinet/in_gif.c: revision 1.90-1.91
sys/netinet/in_gif.h: revision 1.18
sys/netinet6/in6_gif.c: revision 1.88-1.89
sys/netinet6/in6_gif.h: revision 1.17
preserve gif(4) configs by psref(9) like vlan(4) and l2tp(4).
After Tx side does not use softint, gif(4) can use psref(9) for config
preservation like vlan(4) and l2tp(4).
update locking notes later.
--
update gif(4) locking notes.
--
IFF_RUNNING checking in Rx and Tx processing is unnecessary now.
Because the configs of gif (members of gif_var) are protected by psref(9).
--
remove duplicated null ckeck
 1.16.10.1  10-Dec-2017  snj Pull up following revision(s) (requested by knakahara in ticket #419):
sys/net/if_stf.c: revision 1.103
sys/net/if_stf.h: revision 1.8
sys/netinet/in_gif.c: revision 1.89
sys/netinet/in_gif.h: revision 1.17
sys/netinet/in_l2tp.c: revision 1.4
sys/netinet/ip_encap.c: revision 1.66
sys/netinet/ip_encap.h: revision 1.23
sys/netinet/ip_mroute.c: revision 1.148
sys/netinet6/in6_gif.c: revision 1.87
sys/netinet6/in6_gif.h: revision 1.16
sys/netinet6/in6_l2tp.c: revision 1.7
sys/netipsec/xform.h: revision 1.13
sys/netipsec/xform_ipip.c: revision 1.55
Add argument to encapsw->pr_input() instead of m_tag.

RSS XML Feed