Commit Graph

59 Commits

Author SHA1 Message Date
itojun dd859d3462 enable VJC only with INET 2000-10-02 03:54:10 +00:00
augustss c1ebd1929a Kill some more register declarations. 2000-03-30 09:45:33 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
hannken 2a59794a70 Fix typo introduced in rev. 1.55.
It caused IP6 packets to be sent as AF_UNSPEC instead of AF_INET6.
1999-11-27 18:45:08 +00:00
itojun 06c350054d remove reference to in6_systm.h (file itself will be removed afterwords) 1999-07-30 10:35:34 +00:00
itojun 118d2b1d4f 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.
1999-07-01 08:12:45 +00:00
tron 81897066b9 Fix compilation problem caused by recent changes to filtering code. 1999-05-14 21:33:41 +00:00
thorpej 7e3a0bf0c5 Decouple inbound and outbound filters. Now instead of using "active-filter"
and "pass-filter" and "inbound" and "outbound" qualifiers in the filter
expression, use new "active-filter-in", "active-filter-out", "pass-filter-in",
and "pass-filter-out" without these qualifiers.

This is necessary due to the horrible, awful way "inbound" and "outbound"
were specified for the filter programs when a packet was passed through them.
Basically, the "address" byte in the serial PPP header was overwritten with
a value to indicate the direction.  However, the "address" byte doesn't even
exist on PPP headers for all other PPP encaps!  So, this old method worked
only for serial encaps, and corrupted packets for all others (PPPoE, ATM, etc.)
1999-05-12 18:50:51 +00:00
thorpej 4c89a367d5 * Start out with a data link type of DLT_NULL. When we change an interface
to serial encap, change its data link type to DLT_PPP_SERIAL.
* Work around some serious bogosity in the filtering code which utterly
breaks proper functioning of BPF.  The PPP code and pppd(8) WILL be changed
to fix this.
1999-05-11 02:18:52 +00:00
thorpej d70bb64a38 Use M_LINK{0,1} for our own mbuf flags, rather than arbitrarily picking
2 bits.
1999-01-09 21:47:09 +00:00
christos 52f565dcfd Revert IPX changes that I committed accidentally. 1998-12-10 17:48:40 +00:00
christos c7578c510a defopt 1998-12-10 11:01:01 +00:00
christos 564a4c75d0 PR/5414: Ronald Khoo: tcpdump ppp does not respect inbound/outbound qualifiers. 1998-09-03 14:12:36 +00:00
sommerfe 6ee9772e54 Fix PR5898: ppp delays last packet. 1998-08-02 15:09:50 +00:00
thorpej e552760fbe Glue in fast forwarding. 1998-07-09 22:30:01 +00:00
sommerfe 3858a1179a Only run pppasyncstart (sc->sc_start) from the netisr handler.
This allows pppoutput to be called from splimp (e.g., when ipflow is
in use.) without requiring pppasyncstart to run at splimp.
This is believed to fix PR5624.
1998-07-08 18:05:48 +00:00
jtk 14119e2944 use #ifdef INET so this compiles again 1998-07-06 13:51:32 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
christos 0f39feb773 Merge changes from pppd-2.3.4; adds ppp-deflate-draft stuff and updates
zlib. Maybe we can merge our other copy of zlib with this one now and
avoid having two copies?
1998-05-02 14:34:24 +00:00
christos d980c28e1d From Paul Mackerras: use sl_compress_setup, not sl_compress_init 1997-06-16 17:01:36 +00:00
christos cf463415ec Update to ppp-2.3b5 1997-05-17 21:11:59 +00:00
is f4271c55fd Made pppoutput() public again on behalf of Martin Husemann (PR 3455).
Apparently, the BISDN package uses this function.
1997-04-16 12:54:42 +00:00
christos e775167e27 Update to ppp-2.3b4; from Paul Mackerras 1997-03-12 20:26:46 +00:00
mycroft e4bbd86a82 Use splimp() to block interrupts, not splhigh(). 1997-03-04 21:40:07 +00:00
christos a1dcf4b026 backout previous kprintf change 1996-10-13 02:10:01 +00:00
christos 10191279fb - printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:59:41 +00:00
cgd 1f29d4b51f no need for a local implementation of SIOCGIFMTU; delete it. 1996-06-13 21:50:32 +00:00
mycroft 49d52c9b1c Pass a proc pointer down to the usrreq and pcbbind functions for PRU_ATTACH, PRU_BIND and
PRU_CONTROL.  The usrreq interface really needs to be split up, but this will have to wait.
Remove SS_PRIV completely.
1996-05-22 13:54:55 +00:00
thorpej 4edabe2501 Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_reset)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 02:40:22 +00:00
paulus fa78064f7c Make inclusion of the PPP BSD-Compress and Deflate compressors
dependent on the PPP_BSDCOMP and PPP_DEFLATE kernel configuration
options, respectively.
1996-03-19 01:00:49 +00:00
paulus 6654fd558b Added packet filtering, support for "PPP Deflate" packet compression,
trivial multicast support, and support for xon/xoff output flow
control to the PPP subsystem.  Fixed several bugs, including making
the accumulation and resetting of statistics more consistent.  State
for the VJ compressor is now dynamically allocated.
1996-03-15 02:28:00 +00:00
christos 206e75c6f1 Net prototypes 1996-02-13 21:59:53 +00:00
pk c633b5aae2 wrt. previous change: can't compute `ilen' that early; just do computation
separately when logging.
Notes: consider using mbuf pkthdr length field in PPP code.
       condider doing packet log after de-compression.
1996-02-07 12:43:41 +00:00
pk b77eaf2c1c Init variable before use (PRs 1646 & 2042). 1996-02-07 10:25:58 +00:00
mycroft 813ecfb64a Remove old workaround for a bug. 1995-12-27 06:30:38 +00:00
mycroft c594af848d Add some missing statistics. From Thorsten Lockert. 1995-10-05 05:55:09 +00:00
mycroft 5482957905 splnet --> splsoftnet 1995-08-12 23:59:09 +00:00
paulus 7f06ab8b0b Latest version of PPP stuff, with packet compression and other
improvements.  The PPP kernel code is now split into if_ppp.c,
containing generic PPP support, and ppp_tty.c, which specifically
supports PPP on async tty devices (as a line discipline).  This is
so that other devices can be supported without making them look
like ttys.
1995-07-04 06:28:17 +00:00
cgd e363664703 fixed sized types, where appropriate. when casting pointers to
integers to do math on them, cast to long.  ioctl commands are
u_longs.
1995-03-08 02:56:49 +00:00
cgd 6ac2bbfc35 be more careful with types, also pull in headers where necessary. 1994-10-30 21:43:03 +00:00
deraadt fb42f63898 bug 367. paulus says the fix is right & critical. 1994-07-27 09:05:33 +00:00
paulus ce6d680c66 The ppp interface now retries the mbuf allocation when it receives
a character and it doesn't already have enough space allocated.
It still needs cluster mbufs to be able to decompress VJ-compressed
packets.  It drops packets if it can't allocate mbufs rather than
taking the interface down.
1994-07-20 01:49:20 +00:00
paulus 09264a28ec Due to popular revulsion, the ppp interface now drops packets if 1994-07-20 01:40:11 +00:00
paulus e7ba8f6b5a If we can't get mbuf clusters, take the ppp interface down instead
of writing beyond the end of ordinary mbufs.
1994-07-18 23:45:33 +00:00
deraadt 5044aff065 bug #319. fix from <alasdair@wildcat.demon.co.uk> 1994-07-03 06:44:03 +00:00
cgd cf92afd66e New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD' 1994-06-29 06:29:24 +00:00
paulus 45c7c2fc56 Some restructuring of the PPP packet input procedure to make it easier
to implement PPP over sync lines and PPP compression protocols.
1994-06-20 00:35:39 +00:00
paulus aa01a834a4 some minor splx-type bug fixes from christos@deshaw.com. 1994-06-14 03:09:23 +00:00
paulus 5d72d095e8 check for escaped char before checking for escape char
so if peer escapes 0x5d we interpret it correctly
1994-05-29 23:44:23 +00:00
cgd f42a80c7ea MIN -> min, MAX -> max 1994-05-24 02:33:03 +00:00