summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove advertising clause from University of California Regent'simp2004-04-071-4/+0
| | | | | | | license, per letter dated July 22, 1999 and email from Peter Wemm, Alan Cox and Robert Watson. Approved by: core, peter, alc, rwatson
* Spell types consistently throughout this file. Do not use the __packed ↵bms2004-02-161-4/+4
| | | | | | attribute, as we are often #include'd from userland without <sys/cdefs.h> in front of us, and it is not strictly necessary. Noticed by: Sascha Blank
* Initial import of RFC 2385 (TCP-MD5) digest support.bms2004-02-111-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first of two commits; bringing in the kernel support first. This can be enabled by compiling a kernel with options TCP_SIGNATURE and FAST_IPSEC. For the uninitiated, this is a TCP option which provides for a means of authenticating TCP sessions which came into being before IPSEC. It is still relevant today, however, as it is used by many commercial router vendors, particularly with BGP, and as such has become a requirement for interconnect at many major Internet points of presence. Several parts of the TCP and IP headers, including the segment payload, are digested with MD5, including a shared secret. The PF_KEY interface is used to manage the secrets using security associations in the SADB. There is a limitation here in that as there is no way to map a TCP flow per-port back to an SPI without polluting tcpcb or using the SPD; the code to do the latter is unstable at this time. Therefore this code only supports per-host keying granularity. Whilst FAST_IPSEC is mutually exclusive with KAME IPSEC (and thus IPv6), TCP_SIGNATURE applies only to IPv4. For the vast majority of prospective users of this feature, this will not pose any problem. This implementation is output-only; that is, the option is honoured when responding to a host initiating a TCP session, but no effort is made [yet] to authenticate inbound traffic. This is, however, sufficient to interwork with Cisco equipment. Tested with a Cisco 2501 running IOS 12.0(27), and Quagga 0.96.4 with local patches. Patches for tcpdump to validate TCP-MD5 sessions are also available from me upon request. Sponsored by: sentex.net
* add ECN support in layer-3.ume2003-10-291-4/+15
| | | | | | | | | - implement the tunnel egress rule in ip_ecn_egress() in ip_ecn.c. make ip{,6}_ecn_egress() return integer to tell the caller that this packet should be dropped. - handle ECN at fragment reassembly in ip_input.c and frag6.c. Obtained from: KAME
* Back out support for RFC3514.mdodd2003-04-021-1/+0
| | | | RFC3514 poses an unacceptale risk to compliant systems.
* Sync constant define with NetBSD.mdodd2003-04-021-1/+1
| | | | Requested by: Tom Spindler <dogcow@babymeat.com>
* Implement support for RFC 3514 (The Security Flag in the IPv4 Header).mdodd2003-04-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (See: ftp://ftp.rfc-editor.org/in-notes/rfc3514.txt) This fulfills the host requirements for userland support by way of the setsockopt() IP_EVIL_INTENT message. There are three sysctl tunables provided to govern system behavior. net.inet.ip.rfc3514: Enables support for rfc3514. As this is an Informational RFC and support is not yet widespread this option is disabled by default. net.inet.ip.hear_no_evil If set the host will discard all received evil packets. net.inet.ip.speak_no_evil If set the host will discard all transmitted evil packets. The IP statistics counter 'ips_evil' (available via 'netstat') provides information on the number of 'evil' packets recieved. For reference, the '-E' option to 'ping' has been provided to demonstrate and test the implementation.
* Use __packed instead of __attribute__((__packed__)).mux2003-03-221-1/+3
|
* Fix two instances of variant struct definitions in sys/netinet:phk2002-10-201-10/+3
| | | | | | | | | | | | | | Remove the never completed _IP_VHL version, it has not caught on anywhere and it would make us incompatible with other BSD netstacks to retain this version. Add a CTASSERT protecting sizeof(struct ip) == 20. Don't let the size of struct ipq depend on the IPDIVERT option. This is a functional no-op commit. Approved by: re
* o Add IPOPT_ESO for the 'Extended Security' IP option (RFC1108)rwatson2001-12-141-0/+1
| | | | Obtained from: TrustedBSD Project
* o Add definition for IPOPT_CIPSO, the commercial security IP optionrwatson2001-12-141-0/+1
| | | | | | | number. Submitted by: Ilmar S. Habibulin <ilmar@watson.org> Obtained from: TrustedBSD Project
* IPSEC support in the kernel.shin1999-12-221-0/+4
| | | | | | | | pr_input() routines prototype is also changed to support IPSEC and IPV6 chained protocol headers. Reviewed by: freebsd-arch, cvs-committers Obtained from: KAME project
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Fixed pedantic semantics errors (bitfields not of type int, signed intbde1998-06-071-5/+5
| | | | or unsigned int).
* NetBSD PR# 2772dima1998-02-261-1/+2
| | | | Reviewed by: David Greenman
* Removed a stale comment. (We don't declare ip_len and ip_offset asbde1997-12-191-5/+1
| | | | | short. I guess we depend on bogus ANSI value-preserving extension of u_short to int to avoid unsigned comparison bugs.)
* Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are notpeter1997-02-221-1/+1
| | | | ready for it yet.
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Give ip_len and ip_off more natural, unsigned types.wollman1996-10-231-3/+3
|
* Define a few macros useful in the _IP_VHL case.wollman1996-04-181-1/+8
|
* IGMPv2 routines rewritten, to be more compact and to fully complyfenner1996-03-141-1/+2
| | | | with the IGMPv2 Internet Draft (including Router Alert IP option)
* If _IP_VHL is defined, declare a single ip_vhl member in struct ip ratherwollman1995-12-211-1/+5
| | | | | than separate ip_v and ip_hl members. Should have no effect on current code, but I'd eventually like to get rid of those obnoxious bitfields completely.
* Merge 4.4-Lite-2 by updating the version number.wollman1995-09-211-2/+2
| | | | Obtained from: 4.4BSD-Lite-2
* Remove trailing whitespace.rgrimes1995-05-301-5/+5
|
* Add IPTOS_MINCOST according to RFC 1349ache1995-05-051-2/+3
| | | | | | Change IPTOS_PREC_ROUTINE to 0 (was conflict with IPTOS_LOWDELAY) according to RFC 791 (unchanged since it) and BSDI 2.0 style Submitted by: Igor Sviridov <siac@ua.net>
* Made idempotent.paul1994-08-211-1/+6
| | | | Submitted by: Paul
* Added $Id$dg1994-08-021-0/+1
|
* BSD 4.4 Lite Kernel Sourcesrgrimes1994-05-241-0/+168
OpenPOWER on IntegriCloud