Home | History | Annotate | Download | only in netinet
History log of /src/sys/netinet/ip_icmp.h
RevisionDateAuthorComments
 1.44  24-May-2022  andvar fix various typos in comment, documentation and log messages.
 1.43  03-Feb-2021  roy CTASSERT -> __CTASSERT to unbreak userland build.

While here move __packed in tcp_debug.h back to where it was and
note removal warrants more investigation.
 1.42  03-Feb-2021  roy Sprinkle CTASSERT to enforce on-wire layout without __packed
 1.41  03-Feb-2021  roy Remove __packed from various network structures

They are already network aligned and adding the __packed attribute
just causes needless compiler warnings about accssing members of packed
objects.
 1.40  14-Sep-2018  maxv branches: 1.40.12;
Use non-variadic function pointer in protosw::pr_input.
 1.39  08-Feb-2018  maxv branches: 1.39.2; 1.39.4;
Use C99 types - in particular, stop using n_time and n_short -, style, and
remove prototype of icmp_sysctl (does not exist). No functional change.
 1.38  23-Jan-2018  maxv Style, localify icmp_send, and add a clear KASSERT (that replaces a vague
comment).
 1.37  19-Jan-2018  maxv Move the ICMP Extension structures from mpls_ttl.c to ip_icmp.h; that's
part of the ICMP protocol (per RFC4884), and not specific to MPLS. Also
add ih_exthdr in struct icmp, the 'length' field appeared.

While here, style in MPLS.
 1.36  19-Jan-2018  maxv Style, explain a bit, and fix icmp_radv, it should be icmp_dun.id_radv.
 1.35  17-Feb-2017  ozaki-r Protect sysctl_net_inet_ip_pmtudto with icmp_mtx instead of softnet_lock
 1.34  18-Feb-2015  christos branches: 1.34.2; 1.34.4;
PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows
XXX: pullup-7
 1.33  24-Dec-2011  christos branches: 1.33.2; 1.33.6; 1.33.8; 1.33.16; 1.33.22; 1.33.24;
missing comma
 1.32  24-Dec-2011  christos add ICMP_STRINGS, a few more missing constants.
 1.31  24-Dec-2011  christos fix whitespace only
 1.30  24-Dec-2011  christos add SKIP, fix PHOTURIS codes
 1.29  23-Dec-2011  jmc Include the ICMP_PHOTURIS error codes if we're going to define ICMP_PHOTURIS
 1.28  23-Dec-2011  christos make ICMP_MAXTYPE 18 again to unbreak stats.
 1.27  23-Dec-2011  christos add missing icmp types.
 1.26  26-Jun-2010  kefren branches: 1.26.8; 1.26.12;
Add MPLS support, proposed on tech-net@ a couple of days ago

Welcome to 5.99.33
 1.25  08-Sep-2008  gmcgarry branches: 1.25.4; 1.25.14; 1.25.16;
Replace most gcc-specific __attribute__ uses with BSD-style sys/cdef.h
preprocessor macros.
 1.24  25-Dec-2007  perry branches: 1.24.6; 1.24.10; 1.24.12; 1.24.16;
Convert many of the uses of __attribute__ to equivalent
__packed, __unused and __dead macros from cdefs.h
 1.23  14-May-2006  christos branches: 1.23.34; 1.23.40; 1.23.44; 1.23.48;
Comment out attribute packed. Gcc4 warns us that the field is too narrow
for packing. Produces the same size struct on i386 (28 bytes)
 1.22  10-Dec-2005  elad branches: 1.22.4; 1.22.6; 1.22.8; 1.22.12;
Multiple inclusion protection, as suggested by christos@ on tech-kern@
few days ago.
 1.21  23-Oct-2005  christos No need to pass an interface when only the mtu is needed. From OpenBSD via
Liam Foy.
 1.20  21-Apr-2004  itojun branches: 1.20.12; 1.20.14;
no space between function name and paren: foo (blah) -> foo(blah)
 1.19  18-Apr-2004  matt De __P()
 1.18  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.17  09-Jun-2002  itojun branches: 1.17.6;
whitespace
 1.16  30-Oct-2001  kml branches: 1.16.8;
Add in support for timing out IPv4 routes added due to redirects,
as discussed in tech-net several weeks ago. It turned out that
KAME had already added this functionality to the IPv6 stack, so
I followed their example in adding the sysctl variables
net.inet.icmp.rediraccept and net.inet.icmp.redirtimeout.
 1.15  18-Oct-2000  thorpej branches: 1.15.2; 1.15.4; 1.15.8;
Restructure the Path MTU Discovery code somewhat to avoid
entering rtentry's for hosts we're not actually communicating
with.

Do this by invoking the ctlinput for the protocol, which is
responsible for validating the ICMP message:
* TCP -- Lookup the connection based on the address/port
pairs in the ICMP message.
* AH/ESP -- Lookup the SA based on the SPI in the ICMP message.

If validation succeeds, ctlinput is responsible for calling
icmp_mtudisc(). icmp_mtudisc() then invokes callbacks registered
by protocols (such as TCP) which want to take some sort of special
action when a path's MTU changes. For TCP, this is where we now
refresh cached routes and re-enter slow-start.

As a side-effect, this fixes the problem where TCP would not be
notified when a path's MTU changed if AH/ESP were being used.

XXX Note, this is only a fix for the IPv4 case. For the IPv6
XXX case, we need to wait for the KAME folks.

Reviewed by sommerfeld@netbsd.org and itojun@netbsd.org.
 1.14  20-Nov-1999  thorpej Add the `packed' attribute to structures which describe wire protocol data.
 1.13  10-Feb-1998  perry branches: 1.13.12; 1.13.14; 1.13.20;
add/cleanup multiple inclusion protection.
 1.12  26-Aug-1997  thorpej Add ICMP unreachable code #13 - "Communication Administratively Prohibited",
per RFC 1716. From Havard Eidnes <he@vader.runit.sintef.no>, PR #4038.
 1.11  03-Aug-1996  neil branches: 1.11.10;
Prototypes and definitions for ICMP Router Discovery, From FreeBSD.

rdisc coming soon! :-)
 1.10  13-Feb-1996  christos netinet prototypes
 1.9  17-Apr-1995  cgd spacing cleaup. also, minor type mixup fixups.
 1.8  13-Apr-1995  cgd be a bit more careful and explicit with types. (basically a large no-op.)
 1.7  26-Mar-1995  jtc KERNEL -> _KERNEL
 1.6  29-Jun-1994  cgd New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
 1.5  13-May-1994  mycroft Update to 4.4-Lite networking code, with a few local changes.
 1.4  08-Jan-1994  mycroft More prototypes.
 1.3  20-May-1993  cgd more rcsid additions and file header cleanups
 1.2  19-Apr-1993  mycroft Add consistent multiple-inclusion protection.
 1.1  21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2  05-Jan-1998  thorpej Import sys/netinet from 4.4BSD-Lite for reference purposes.
 1.1.1.1  21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.11.10.1  28-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.13.20.1  27-Dec-1999  wrstuden Pull up to last week's -current.
 1.13.14.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
 1.13.12.3  30-Nov-1999  itojun bring in latest KAME (as of 19991130, KAME/NetBSD141) into kame branch
just for reference purposes.
This commit includes 1.4 -> 1.4.1 sync for kame branch.

The branch does not compile at all (due to the lack of ALTQ and some other
source code). Please do not try to modify the branch, this is just for
referenre purposes.

synchronization to latest KAME will take place on HEAD branch soon.
 1.13.12.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.13.12.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.15.8.1  12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.15.4.2  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.15.4.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.15.2.2  20-Jun-2002  nathanw Catch up to -current.
 1.15.2.1  14-Nov-2001  nathanw Catch up to -current.
 1.16.8.1  20-Jun-2002  gehenna catch up with -current.
 1.17.6.5  11-Dec-2005  christos Sync with head.
 1.17.6.4  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.17.6.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.17.6.2  18-Sep-2004  skrll Sync with HEAD.
 1.17.6.1  03-Aug-2004  skrll Sync with HEAD
 1.20.14.1  26-Oct-2005  yamt sync with head
 1.20.12.2  21-Jan-2008  yamt sync with head
 1.20.12.1  21-Jun-2006  yamt sync with head.
 1.22.12.1  24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.22.8.1  24-May-2006  yamt sync with head.
 1.22.6.1  01-Jun-2006  kardel Sync with head.
 1.22.4.1  09-Sep-2006  rpaulo sync with head
 1.23.48.1  02-Jan-2008  bouyer Sync with HEAD
 1.23.44.1  26-Dec-2007  ad Sync with head.
 1.23.40.1  18-Feb-2008  mjf Sync with HEAD.
 1.23.34.1  09-Jan-2008  matt sync with HEAD
 1.24.16.1  19-Oct-2008  haad Sync with HEAD.
 1.24.12.1  24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.24.10.2  11-Aug-2010  yamt sync with head.
 1.24.10.1  04-May-2009  yamt sync with head.
 1.24.6.1  28-Sep-2008  mjf Sync with HEAD.
 1.25.16.1  03-Jul-2010  rmind sync with head
 1.25.14.1  17-Aug-2010  uebayasi Sync with HEAD.
 1.25.4.1  09-Jun-2013  msaitoh Apply patch (in ticket #1855):
Add some macros. This is a part of ip_icmp.h rev. 1.32.
 1.26.12.1  18-Feb-2012  mrg merge to -current.
 1.26.8.1  17-Apr-2012  yamt sync with head
 1.33.24.2  28-Aug-2017  skrll Sync with HEAD
 1.33.24.1  06-Apr-2015  skrll Sync with HEAD
 1.33.22.1  21-Feb-2015  martin Pull up following revision(s) (requested by christos in ticket #537):
sys/netinet/icmp_var.h: revision 1.30
sys/netinet/ip_icmp.h: revision 1.34
PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows
XXX: pullup-7
 1.33.16.1  21-Feb-2015  martin Pull up following revision(s) (requested by christos in ticket #1258):
sys/netinet/icmp_var.h: revision 1.30
sys/netinet/ip_icmp.h: revision 1.34
PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows
 1.33.8.1  21-Feb-2015  martin Pull up following revision(s) (requested by christos in ticket #1258):
sys/netinet/icmp_var.h: revision 1.30
sys/netinet/ip_icmp.h: revision 1.34
PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows
 1.33.6.1  03-Dec-2017  jdolecek update from HEAD
 1.33.2.1  21-Feb-2015  martin Pull up following revision(s) (requested by christos in ticket #1258):
sys/netinet/icmp_var.h: revision 1.30
sys/netinet/ip_icmp.h: revision 1.34
PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows
 1.34.4.1  21-Apr-2017  bouyer Sync with HEAD
 1.34.2.1  20-Mar-2017  pgoyette Sync with HEAD
 1.39.4.1  10-Jun-2019  christos Sync with HEAD
 1.39.2.1  30-Sep-2018  pgoyette Ssync with HEAD
 1.40.12.1  03-Apr-2021  thorpej Sync with HEAD.

RSS XML Feed