Commit Graph

308 Commits

Author SHA1 Message Date
cgd 1f29d4b51f no need for a local implementation of SIOCGIFMTU; delete it. 1996-06-13 21:50:32 +00:00
cgd ba3b2a87a2 implement SIOCGIFMTU in a generic manner, by pulling the MTU out of
each netif's if_data structure.  There's no point in making each
driver implement this ioctl.
1996-06-13 21:49:43 +00:00
cgd 2e3d795708 add an ifru_mtu member to the union in 'struct ifreq', and add a
#define so that ifr_mtu accesses that.  MTU shouldn't be overloaded
with ifr_metric, if only for clarity.  Adding an MTU field to the
union hurts nothing (in fact, does not actually _change_ generated
code), and does improve clarity.
1996-06-13 21:48:34 +00:00
thorpej 5804211474 Initialize sc_unit in the right place, a'la if_sl.c. Thanks to
Jonathan Stone <jonathan@DSG.Stanford.EDU> for pointing this out.
1996-06-05 23:20:49 +00:00
thorpej 2fadbc363c Move a mis-placed line on slattach() so that SLIOCGUNIT works properly.
From Jonathan O'Brien <obrien@phoenix.sfsu.edu>.
1996-06-02 16:22:32 +00:00
pk 2d9344eb4b Prototype new raw_*() functions. 1996-05-28 23:24:50 +00:00
pk ad4c0ccfdf Remove unused variable. 1996-05-28 23:24:23 +00:00
mycroft c630947e89 We must indirect through the higher-level protocol for
PRU_{BIND,CONNECT} so that it can check the sockaddr.
1996-05-23 18:30:57 +00:00
mycroft e149ad8228 Fix race condition in PRU_DISCONNECT.
Unimplement PRU_ABORT, as it's not needed and wasn't correct.
Some stylistic cleanup.
Make sure the control mbufs are freed in all cases.
We must indirect through the higher-level protocol for
PRU_{BIND,CONNECT} so that it can check the sockaddr.
1996-05-23 18:26:26 +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
mycroft 12e6d35d62 Removing a completely unneeded reference to curproc. 1996-05-22 13:42:57 +00:00
mycroft 2a94215734 Remove duplicate definition of bpf_setif(). 1996-05-22 13:41:54 +00:00
jonathan ed314bc45a Catch up to removal of if_unit and addition of if_xname and sc_unit,
blindly following the changes to if_sl.c.
1996-05-19 22:09:36 +00:00
jonathan 32d97e42f6 Packet-mode driver for Metricom Ricochet radios (Starmode Radio IP). 1996-05-19 16:34:36 +00:00
christos 748900c4fc Fix new warnings. 1996-05-07 23:20:21 +00:00
thorpej 527565ac15 Kill a couple of unnecessary calls to strlen(). 1996-05-07 05:26:02 +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
cgd 4d6b6d9082 On new architectures and on the alpha, define SIZEOF_BPF_HDR to be
sizeof(struct bpf_hdr).  On machines that we currently support that
can use the old definition (which just covers the size of the data in
struct bpf_hdr), use it even though it's a hack.  (This was changed
for the 'new architectures' case so as to be fail-safe; BPF may
waste a few bytes of space per captured packet on new architectures,
but now at least it's more likely to work.)
1996-05-02 00:57:28 +00:00
christos 8d33c5c8b4 - Fix fencepost error in ifconf() where if space = n * sizeof(struct ifreq),
only n - 1 interfaces would be obtained. This bug is present in the Lite2
  sources too.
- Support COMPAT_SVR4 in ifconf()
1996-04-22 01:20:34 +00:00
is a5ba4721eb Don't even check the not-yet-initialized mbuf pointers for being !=
NULL in the error exit code of arc_output(), else we see random data
and try to m_freem() it, panic'ing the machine.
1996-04-15 14:01:25 +00:00
christos 7af5cc8190 Eliminate need for and remove net_conf.h 1996-03-30 21:57:30 +00:00
cgd 19b97477b9 make this version of ROUNDUP() consistent with the others in this directory.
(only makes a diff on the alpha.)
1996-03-29 00:32:10 +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
christos d06f8ad7c8 #if 0 unused string 1996-03-16 23:55:40 +00:00
christos 0706109fa5 - fix misparenthesized ((a&(B|C) == 0))
- fix printf format arguments
1996-03-16 23:55:36 +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
mrg d55f4dd0c3 oops; back out previous change and add comment describing what the weird goto does. 1996-03-12 13:07:52 +00:00
mrg c23a9d83e5 eliminate stupid use of "goto next;" where next was: "next: continue;" 1996-03-12 13:01:20 +00:00
mrg 5bc2fce9e1 test for null ifa_dstaddr before using it. (pr#2183 from chuck cranor) 1996-03-12 12:55:52 +00:00
thorpej 7b294ae934 Handle more than 10 interfaces of a given type (well, up to `if99', anyhow).
From Neil McRae, PR #1992.
1996-03-05 01:56:37 +00:00
thorpej 5b663732fa Remove extra RCS id. 1996-03-03 17:18:14 +00:00
mycroft 9fa7b98204 Emulate OSIOCGIFADDR, et al, if COMPAT_LINUX is defined. 1996-02-27 08:17:08 +00:00
mycroft a252a2e3b8 Handle OSIOCGIFCONF if COMPAT_LINUX is defined. 1996-02-27 07:28:38 +00:00
mrg 32cdb91fa3 two more local addr changes, all done differently now (idea from charles) 1996-02-26 23:16:42 +00:00
christos 17de1d7eae Close PR/2105: if.c does not compile without COMPAT_43 due to missing casts. 1996-02-21 14:28:33 +00:00
pk 08fa33d37f struct ifaliasreq: adapt nomenclature to protocol specific counterparts, ie.
swap `ifra_broadaddr' and `ifra_dstaddr'.
1996-02-17 12:32:50 +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
scottr 5517c6a36f Grammar police; noted by Peter Seebach <seebs@solon.com>. Closes PR #1982. 1996-02-05 17:39:25 +00:00
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
mycroft 1107479eaa Rename tunioctl() and tuncioctl() so that cdevsw points to the right one.
From der Mouse, PR 2005.
1996-02-01 07:28:18 +00:00
mycroft 813ecfb64a Remove old workaround for a bug. 1995-12-27 06:30:38 +00:00
mycroft dda46feea9 Avoid extra byte-swapping in average cases. 1995-12-24 03:33:43 +00:00
mycroft 0e11b6eb6c Remove old comment regarding trailers.
Fix a diagnostic message.
Make some variables use fixed-size types.
Initialize if_output in fddi_ifattach().
1995-12-24 03:32:03 +00:00
mycroft d16cabae61 Remove old comment regarding trailers. 1995-12-24 03:12:29 +00:00
mycroft 206addf62d Various cleanup, mostly by me, submitted by Ignatios Souvatzis. 1995-12-24 03:03:55 +00:00
pk 7e6c169434 Return actual packet length in FIONREAD (noted by Bob Smart). 1995-12-13 23:47:40 +00:00
cgd c20292b01b fix casts; should cast pointers to longs, not ints. 1995-11-20 20:43:33 +00:00
mycroft c594af848d Add some missing statistics. From Thorsten Lockert. 1995-10-05 05:55:09 +00:00
phil 475a548732 Move a #include to outside the #ifdef INET so it will compile without
INET defined.
1995-09-29 03:37:43 +00:00
thorpej e1f1a3a9a7 Enhancements to the bpf from Stu Grossman <grossman@cygnus.com>:
* grok FIONBIO, FIOASYNC, and TIOC{G,S}PGRP
	* add BIOC{G,S}RSIG; get/set the signal to be delivered
	  to the process or process group upon packet reception.
	  Defaults to SIGIO.
1995-09-27 18:30:37 +00:00
mycroft 2f38ab0ad1 Garbage collect useless `off' and `len' variables. 1995-08-19 16:33:17 +00:00
cgd 9ee311ead5 Update to latest code from CSRG. 1995-08-19 07:48:14 +00:00
cgd b0dc5d3d7f local adaptations, and fix a could of compilation errors 1995-08-19 04:35:18 +00:00
cgd 9980150670 Generic FDDI support by Matt Thomas. Support for DEC "PDQ" FDDI chipset
and for the PCI attachment of said chipset ("if_fpa"), also from Matt Thomas.
Arguably, pdq* doesn't belong in sys/dev/ic, but it's going to be shared by
various bus attachment devices at some point in the future, and there's no
other place that seems to fit as well.
1995-08-19 00:59:47 +00:00
mycroft 873ed30f83 so_pcb should be a void *. 1995-08-17 02:57:20 +00:00
mycroft f174a96f7b Don't pass through SIOCGIFADDR, per Steve McCanne. 1995-08-13 04:15:38 +00:00
mycroft 5482957905 splnet --> splsoftnet 1995-08-12 23:59:09 +00:00
mycroft 780f5dbe47 Make panic message consistent. 1995-07-23 16:33:08 +00:00
mycroft 90d6423bcb For outgoing packets, always allocate a header mbuf and fill it in. 1995-07-23 16:29:47 +00:00
cgd 6fa924cb38 fix struct member use, as explained in pr 1164. style police
beat the fix into submission.
1995-07-12 08:27:26 +00:00
paulus fdb27420ea Change $Id to $NetBSD 1995-07-04 23:26:10 +00:00
paulus 8f120b82c6 Add definition for NETISR_PPP. 1995-07-04 23:24:07 +00:00
briggs 61405ee181 Use the right prototype for pppioctl(). 1995-07-04 15:30:39 +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 1e4957e020 oops; export that head definition to non-kernel code. 1995-06-19 21:57:28 +00:00
cgd d925296265 define a type for the ifnet queue's head. 1995-06-19 21:41:37 +00:00
mycroft d2307f3ecb Update to match data structure changes. 1995-06-13 05:52:42 +00:00
mycroft 80a0cdd913 There's no reason to set if_next here. 1995-06-13 05:31:00 +00:00
mycroft 4cabe662ac Make sure to initialize ifnet correctly. 1995-06-12 02:22:13 +00:00
mycroft e0d6716b6a Various cleanup, including:
* Convert several data structures to use queue.h.
* Split in_pcbnotify() into two parts; one for notifying a specific PCB, and
one for notifying all PCBs for a particular foreign address.
1995-06-12 01:09:20 +00:00
mycroft 6897f39ae9 Various cleanup, including:
* Convert several data structures to use queue.h.
* Split in_pcbnotify() into two parts; one for notifying a specific PCB, and
one for notifying all PCBs for a particular foreign address.
1995-06-12 00:46:47 +00:00
cgd d4f62dcb69 update from Ignatios Souvatzis 1995-06-07 00:13:52 +00:00
mycroft 0181b81de4 Newer version from CSRG. 1995-05-17 15:50:06 +00:00
cgd c7d6aa46d5 copy routines should take size_t lengths for prototype consistency.
don't assume that tick is >= 1000; loses badly on alpha (div. by zero)
only try unaligned copies if NetBSD's UNALIGNED_ACCESS symbol is defined.
various misc type size cleanups, mostly short -> int16_t.
1995-04-22 13:26:20 +00:00
cgd b5fb8715b0 quiet compiler warning via (ugly) cast 1995-04-22 13:08:30 +00:00
cgd 92fad4a481 be more careful when rounding sockaddr_dl sizes. also, one u_short * ->
u_int16_t * conversion.
1995-04-22 13:07:12 +00:00
chopps 999aa2cc32 update arc_input() proto to match reality. 1995-04-14 17:09:39 +00:00
chopps 5f90c17217 change args to arc_input also add check on link address which fixes pr#922. from Ignatios Souvatzis <is@beverly.rhein.de> 1995-04-14 17:06:39 +00:00
mycroft 8b77f9cd5f Remove some explicit references to loif. 1995-04-11 04:30:47 +00:00
mycroft 1b863c2eca if_start and if_watchdog should return void. 1995-04-07 22:20:24 +00:00
mycroft da0921a4a2 Set if_output in ether_ifattach(). 1995-04-07 22:19:29 +00:00
mycroft 6f131301b0 Make OSI and X.25 work on little-endian machines. 1995-04-05 21:38:50 +00:00
mycroft 0a2cdb6d61 Fix bogus buffer indexing when a value is split across a mbuf boundary,
as suggested by Greg Ansley.  Also, redefine MINDEX() slightly to avoid
duplicating code.
1995-04-01 03:04:49 +00:00
briggs 6efcd1b6d4 KERNEL -> _KERNEL 1995-03-29 21:57:43 +00:00
jtc db0046c14d KERNEL -> _KERNEL 1995-03-28 19:59:56 +00:00
jtc 7c04233887 KERNEL -> _KERNEL 1995-03-26 20:23:52 +00:00
mycroft b468ed3d00 Fix panic when an interface in promiscuous mode goes down and the BPF user
tries to turn off promiscuous mode.  From Lon Willett.
1995-03-22 16:08:32 +00:00
mycroft f75ba16b09 Update to use timer{add,sub}(). 1995-03-21 13:33:34 +00:00
cgd 17d1e137e0 punt on using int8 types for chars, at least for now. char is 8 byts anyway. 1995-03-12 04:19:08 +00:00
mycroft b880de68c5 ifconf() takes a u_long, not an int. 1995-03-09 09:47:25 +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
mycroft 3ab590b35f Undo an #include ordering change. 1995-03-06 10:58:25 +00:00
mycroft 8c5b80f538 Make this more type-safe for the Alpha. From the libpcap 0.0 distribution.
(Needs more work.)
1995-03-06 10:56:06 +00:00
chopps 7908b4858d add prototypes 1995-03-02 09:14:38 +00:00
glass 48b5b94c4f fix some typos. from frank@fwi.uva.nl (Frank van der Linden) 1995-02-27 09:10:24 +00:00
glass f634dc196b preliminary arcnet support. uses lame but RFC address resolution 1995-02-23 07:19:49 +00:00
jtc ca7b8dce12 Protect from multiple inclusion with _NET_BPF_H_, for PR #679. 1995-01-13 00:34:09 +00:00
mycroft 7fab282c89 timevalsub --> __timersub 1994-12-11 21:39:05 +00:00
cgd 6ac2bbfc35 be more careful with types, also pull in headers where necessary. 1994-10-30 21:43:03 +00:00
cgd 36ac18735f fix pr 528; don't define struct if_data inside another structure. 1994-10-19 20:57:56 +00:00
deraadt fb42f63898 bug 367. paulus says the fix is right & critical. 1994-07-27 09:05:33 +00:00
cgd 04753d13bf kill vax code, at ragge's requeust. 1994-07-26 18:56:57 +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
cgd a7ec46ab8f use NetBSD (defined in param.h) not __NetBSD__ to allow x-compilation
with native compiler.
1994-07-16 06:26:28 +00:00
cgd d7fc64af84 don't use inline, use __inline, like cdefs intends (so it can kill it if nongcc 1994-07-15 22:29:22 +00:00
cgd 17c3553caf kill bogus external declaration of time 1994-07-15 22:27:46 +00:00
deraadt 5044aff065 bug #319. fix from <alasdair@wildcat.demon.co.uk> 1994-07-03 06:44:03 +00:00
cgd ef9dc92b8e this is what cdefs.h is for 1994-06-29 21:23:15 +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
deraadt 043657b599 MIN -> min 1994-05-26 00:47:19 +00:00
cgd f42a80c7ea MIN -> min, MAX -> max 1994-05-24 02:33:03 +00:00
deraadt b9753772a1 repair protos and functions 1994-05-15 19:20:02 +00:00
mycroft 07b4f2ab54 Update to 4.4-Lite networking code, with a few local changes. 1994-05-13 06:02:48 +00:00
mycroft d361acde18 Update to 4.4-Lite networking code, with a few local changes. 1994-05-13 06:01:27 +00:00
mycroft d3be517803 Update to RTM version 3. Add prototypes. Add some new constants which are
not used yet.
1994-05-11 09:26:46 +00:00
paulus cd4969fcb4 Version from ppp-2.1 release. 1994-05-08 12:34:20 +00:00
paulus 3f7fd64c45 Version from ppp-2.1 release;
this version has been restructured to make more of the code usable
with sync serial drivers
1994-05-08 12:33:49 +00:00
cgd 5742972bb4 kill kinfo stuff, for now 1994-05-07 04:26:58 +00:00
mycroft e593e490db Remove now-bogus cast. 1994-05-05 09:33:21 +00:00
cgd a0a7429482 lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.
1994-05-05 05:35:42 +00:00
deraadt 946453260a fixes from <brad@fcr.com> who claims it now works correctly 1994-05-03 23:02:07 +00:00
cgd e0db92993a change timeout/untimeout/wakeup/sleep/tsleep args to void * 1994-04-29 23:15:51 +00:00
mycroft 7b52dc20c4 NETISR_RAW is defunct. 1994-04-18 23:30:28 +00:00
mycroft 084a465c9a Add NETISR_ARP. 1994-04-18 23:20:26 +00:00
glass a3b042140f revised nfs diskless support. uses bootp+rpc to gather parameters 1994-04-18 06:18:05 +00:00
cgd ace91bc015 two reference count fixes, and minor cleanup (to offset the added goto! 8-). 1994-03-23 05:05:03 +00:00
glass f5cea46e83 put declarations in argument order 1994-03-14 07:46:05 +00:00
cgd b32da851b9 Some stability/safety/extensibility patches. Inspired by Christoph Badura.
Always make sure our buffer is large enough, and restart hung lines.
1994-03-08 07:27:23 +00:00
andrew bc72e3a892 Fixed a bug with TUN_OPEN flag handling during tunclose(), as noted by
Mark Delany <markd@bushwire.apana.org.au>.
1994-02-28 07:16:10 +00:00
mycroft 73535dd9ce IFF_ALLMULTI is not externally settable. 1994-02-16 20:12:50 +00:00
mycroft 4b8ec6c627 Clean up deleted files. 1994-02-10 17:28:02 +00:00
mycroft 7e9f402331 Clean up deleted files. 1994-02-10 17:26:56 +00:00
mycroft bf98a55f37 Deprecate af.h. 1994-02-10 17:25:03 +00:00
mycroft 39d918e7ce if_init and if_done are not actually used; no point in having them at all. 1994-02-10 17:16:33 +00:00
cgd d2660232c1 mccanne convinced me that slip.h *should* exist. this is what
i "implemented" for 4.4, and the adjustments to the other files to
match.
1994-02-10 05:39:07 +00:00
mycroft 7ef678610c Remove an #ifdef we no longer need. 1994-02-05 08:01:22 +00:00
hpeyerl 1f2c9ecdae Multicast is no longer optional 1994-02-02 01:21:32 +00:00
deraadt b45332d2b5 new from mccanne. be afraid. 1994-01-25 06:10:08 +00:00
deraadt ad054dea7e PPP_HEADER_LEN -> PPP_HDRLEN 1994-01-25 05:56:06 +00:00
deraadt b8fdadd662 ether_output() & ether_input() take ether_type as a net-short.
AF_UNSPEC does not swap byte order of ether_type.
NOTE: this requires driver changes
1994-01-23 23:41:14 +00:00
glass 261832c5df got rid of a warning reported by Bill Sommerfeld 1994-01-21 06:33:31 +00:00
cgd a939028310 include <machine/cpu.h> not <machine/mtpr.h> 1994-01-16 02:22:51 +00:00
deraadt 47ef1f0c2e multiple inclusion protection 1994-01-15 20:13:11 +00:00