summaryrefslogtreecommitdiffstats
path: root/sys/netgraph/ng_pppoe.c
Commit message (Collapse)AuthorAgeFilesLines
* MFS: change name of sysctl to something more diplomatic.julian2001-09-041-9/+9
|
* Pack struct uniqtag declarations to stop our data field from being pushedbrian2001-08-021-2/+2
| | | | | | | 4 bytes to the right on the alpha. Tested by: Thomas Pornin <Thomas.Pornin@ens.fr> MFC after: 1 week
* If an attempt is made to LISTEN for a service tag that's already beingbrian2001-07-251-14/+28
| | | | | | | | | | | | | LISTENed for, return EEXISTS. Only match the magic "*" service tag if no other LISTEN service tags match. Require an explicit LISTEN for an empty service tag in order to match empty service requests. Approved by: julian MFC after: 3 days
* Shuffle sysctls a bit (thankyou whoever made them dynamic for modules)julian2001-02-231-5/+46
| | | | | | | | | | | | and add a sysctl to pppoe to activate non standard ethertypes so that idiot ISPs (apparently in France) who use equipment from idiot suppliers (rumour says 3com) who use nonstandard ethertypes can still connect. "yep, sure we do pppoe, we use a different identifier to that dictated in the standard, but sure it's pppoe!" sysctl -w net.graph.stupid_isp=1 enables the changeover.
* Implement direct support for semipersistant nodes.julian2001-01-301-0/+2
| | | | | | | | | | | | | (e.g. ethernet nodes are persistent until you rip out the hardware) Use this support in the ethernet and sample nodes. Add some more abstraction on the 'item's so that node and hook reference counting can be checked easier. Slight man page correction. Make pppoe type dependent on ethernet type. Clean up node shutdown a little. Move a mutex from MTX_SPIN to MTX_DEF (oops) Fix small ref-counting bug. remove warning on one2many type.
* Add an exported function ng_rmhook_self() that removes a hookjulian2001-01-111-2/+2
| | | | | | | | from a node, but does it via the locking queue, thus ensuring that the node is locked when it's hook is removed. Add 'deadnode' and 'deadhook' structures for when a node or hook is invalidated but not yet freed. (not yet freed)
* Fix uninitialised pointer.julian2001-01-111-0/+1
| | | | Found by: Brian Sommers
* Only free items that are not already free or passed to other nodes.julian2001-01-101-1/+2
| | | | Clever work by: Brian Sommers (Brian@freeBSD.org)
* Fix some memory leaksjulian2001-01-101-10/+16
| | | | Add memory leak detection assitance.
* Part 2 of the netgraph rewrite.julian2001-01-081-63/+62
| | | | | | This is mostly cosmetic changes, (though I caught a bug or two while makeing them) Reviewed by: archie@freebsd.org
* Rewrite of netgraph to start getting ready for SMP.julian2001-01-061-55/+57
| | | | | | | | This version is functional and is aproaching solid.. notice I said APROACHING. There are many node types I cannot test I have tested: echo hole ppp socket vjc iface tee bpf async tty The rest compile and "Look" right. More changes to follow. DEBUGGING is enabled in this code to help if people have problems.
* Divorce the kernel binary ABI version number from the messagejulian2000-12-181-1/+1
| | | | | | | | | format version number. (userland programs should not need to be recompiled when the netgraph kernel internal ABI is changed. Also fix modules that don;t handle the fact that a caller may not supply a return message pointer. (benign at the moment because the calling code checks, but that will change)
* Impossible to see typo.. |= instead of !=julian2000-12-181-1/+1
|
* Reviewed by: Archie@freebsd.orgjulian2000-12-121-9/+51
| | | | | | | | | | | | | This clears out my outstanding netgraph changes. There is a netgraph change of design in the offing and this is to some extent a superset of soem of the new functionality and some of the old functionality that may be removed. This code works as before, but allows some new features that I want to work with and evaluate. It is the basis for a version of netgraph with integral locking for SMP use. This is running on my test machine with no new problems :-)
* Add the use of M_ZERO to netgraph.dwmalone2000-11-181-6/+5
| | | | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net> Submitted by: archie Approved by: archie
* Go back to using data_len in struct ngpppoe_init_data after discussionsbrian2000-11-161-59/+34
| | | | | | | | | | | with Julian and Archie. Implement a new ``sizedstring'' parse type for dealing with field pairs consisting of a uint16_t followed by a data field of that size, and use this to deal with the data_len and data fields. Written by: Archie with some input by me Agreed in principle by: julian
* Swap the order of two tags in the pppoe PADI and PADS packetsjulian2000-10-311-3/+3
| | | | | as there are apparently some buggy switches that need them in that order. (I hope there aren't any that require them in the old order!)
* Change the format of ngpppoe_init_data so that the provider is NULbrian2000-10-311-27/+120
| | | | | | | | | | | terminated and the data_len field is no longer necessary. Add ASCII2BINARY and BINARY2ASCII capabilities. The old format is still understood and dealt with, but can't do the ASCII2BINARY and BINARY2ASCII stuff. Approved by: archie
* Since neither archie nor I work at Whistle any more, change our emailjulian2000-10-241-1/+1
| | | | | | addresses to be the more usefu @freebsd.org ones so we can keep getting bug-reports. - man pages to follow..
* Allocate all memory (including within node constructors) with M_NOWAITarchie2000-09-211-3/+3
| | | | instead of M_WAITOK, to allow for maximum flexibility.
* Rename "struct session" to "struct sess_con" to avoid conflict witharchie2000-09-191-4/+4
| | | | | | upcoming "struct session" in proc.h. Requested by: jasone
* RFC 1661 requires that all LCP packets are sent with no address andarchie2000-08-101-0/+14
| | | | | | | | | | control field compression. The ng_ppp(4) node correctly follows this rule. However, PPPoE is an exception: when doing PPPoE *all* frames are sent with address and control field compression. Alter this node's behavior so that when an outgoing frame is received, any leading address and control field bytes are removed. This makes this node compatible with ng_ppp(4).
* Fix typo, teh -> the.asmodai2000-07-141-1/+1
|
* Two simple changes to the kernel internal API for netgraph modules,julian2000-04-281-7/+18
| | | | | | | to support future work in flow-control and 'packet reject/replace' processing modes. reviewed by: phk, archie
* Remove a bunch of un-needed includes.julian1999-12-071-1/+0
| | | | Submitted by: phk@freebsd.org
* change intial timeout for session negotiation from 1 to 2 seconds.julian1999-12-011-2/+3
| | | | One second was being hit too many times in normal situations.
* Add two new generic control messages, NGM_ASCII2BINARY andarchie1999-11-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | NGM_BINARY2ASCII, which convert control messages to ASCII and back. This allows control messages to be sent and received in ASCII form using ngctl(8), which makes ngctl a lot more useful. This also allows all the type-specific debugging code in libnetgraph to go away -- instead, we just ask the node itself to do the ASCII translation for us. Currently, all generic control messages are supported, as well as messages associated with the following node types: async, cisco, ksocket, and ppp. See /usr/share/examples/netgraph/ngctl for an example of using this. Also give ngctl(8) the ability to print out incoming data and control messages at any time. Eventually nghook(8) may be subsumed. Several other misc. bug fixes. Reviewed by: julian
* Fixes from brian. With some changes from me.julian1999-11-211-20/+35
| | | | | Allows FreeBSD to run as a PPPOE server One patch still not included.
* Move misplaced #define.archie1999-11-191-1/+3
|
* Small fixes from Brian for the Server side of PPPoE.julian1999-11-151-9/+9
|
* Rework some tag handling, prompted by Brian Somers.julian1999-11-141-35/+25
|
* Try handle missing packet tags better.julian1999-11-141-12/+19
| | | | Inspired by changes suggested by brian Somers.
* Remove a null pointer referencejulian1999-11-091-0/+2
| | | | Submitted by: Brian Somers (brian@freebsd.org)
* Add typedefs for node methodsjulian1999-11-011-9/+8
| | | | Suggested by phk.
* When the session is running, don't include the ethernet header in the length ↵julian1999-10-291-1/+2
| | | | of the payload.
* fix typojulian1999-10-271-2/+2
|
* The node goes away when last session disconnects or when disconnected fromjulian1999-10-271-0/+9
| | | | the ethernet node.
* change PPPoE occurences to pppoe. Not JUST a cosmeting change.julian1999-10-271-31/+31
| | | | | some occurrances needed to be the same as the filenmnae which was pppoe not PPPoE.
* cleanups regarding misused m_pullup() and similar.julian1999-10-261-1/+2
|
* Send the negotiated session ID on our packets (DUH!).julian1999-10-261-1/+2
|
* Send a PADT message to the peer when a session is closed down.julian1999-10-261-1/+35
|
* This one actually gets session data to the waiting ppp daemonjulian1999-10-261-38/+5
| | | | (well, my test program at least).
* This one actually negotiated it's way into a session.julian1999-10-261-12/+58
| | | | still tuning to be done.
* more fixes, braino's, typo's, etc.julian1999-10-231-8/+19
|
* A version of the pppoe code ellicits a response from the ISP endjulian1999-10-231-19/+65
| | | | (but still not quite right)
* Now that Netgraph is in the system there are some cleanups we can do.julian1999-10-231-2/+25
| | | | | | Also save a slightly closer to completion version of the PPPOE code. Submitted by: Archie Cobbs <archie@freebsd.org>
* Whistle's Netgraph link-layer (sometimes more) networking infrastructure.julian1999-10-211-0/+1343
Been in production for 3 years now. Gives Instant Frame relay to if_sr and if_ar drivers, and PPPOE support soon. See: ftp://ftp.whistle.com/pub/archie/netgraph/index.html for on-line manual pages. Reviewed by: Doug Rabson (dfr@freebsd.org) Obtained from: Whistle CVS tree
OpenPOWER on IntegriCloud