| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
PR: kern/86258
Submitted by: Hiroshi Oota <ghelp excite.co.jp>
|
|
|
|
|
|
|
|
|
|
| |
PPPoE modes. The interface was declared obsoleted before 5.3-RELEASE.
When running as access concentrator ng_pppoe(4) supports both modes
simultanously. When running as client mode can be swicthed in ppp(8)
configuration.
Approved by: re (scottl)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
- remove spl(9) calls
Tested by: Ilya Pizik
Approved by: julian (mentor)
|
|
|
|
|
|
|
|
| |
macros with 'do {} while (0)' to avoid error in case macro is
not defined.
Prodded by: julian, archie
Pointy hat to: glebius
|
|
|
|
|
| |
Requested by: maxim
Approved by: julian (mentor)
|
|
|
|
|
|
|
|
| |
in enum {}, and then redefined with #define.
No warnings from compiler, though.
Submitted by: bz
Pointy hat to: glebius
|
|
|
|
|
|
|
|
|
|
| |
clients simultaneously. When node is client its mode is configured
with a control message.
sysctl net.graph.nonstandard_pppoe is deprecated but kept for
backward compatibility for some time.
Approved by: julian
|
|
|
|
| |
ethernet headers is unsynchronized.
|
|
|
|
|
|
| |
the old way of doing it.
Submitted by: Gleb Smirnoff <glebius@cell.sick.ru>
|
|
|
|
|
|
|
|
| |
Should make no binary difference.
Submitted by: Gleb Smirnoff <glebius@cell.sick.ru>
Reviewed by: Harti Brandt <harti@freebsd.org>
MFC after: 1 week
|
|
|
|
| |
*SIZ constants that include the trailing \0 byte.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
which means "always stay in the standard mode of PPPoE operation
regardless of any junk floating around."
As the referenced PR stated clearly, the old default setting of 0
was extremely dangerous because it opened a possibility for a
spurious frame not only to put down a single PPPoE node running
FreeBSD, but to plague *every* FreeBSD node in a PPPoE network in
such a way that those nodes would keep poisoning each other until
rebooted simultaneously.
PR: kern/47920
Reviewed by: Gleb Smirnoff <glebius <at> cell.sick.ru>
MFC after: 1 week
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nonstandard. They differ in the values of certain fields in
the PPPoE frame. Previously, ng_pppoe would start in standard
mode, yet switch to nonstandard one upon reception of a single
nonstandard frame. After having done so, ng_pppoe would be unable
to interact with standard PPPoE peers. Thus, a DoS condition
existed that could be triggered by a buggy peer or malicious party.
Since few people have expressed their displeasure WRT this problem,
the default operation of ng_pppoe is left untouched for now. However,
a new value for the sysctl net.graph.nonstandard_pppoe is introduced,
-1, which will force ng_pppoe stay in standard mode regardless of any
bogus frames floating around.
PR: kern/47920
Submitted by: Gleb Smirnoff <glebius <at> cell.sick.ru>
MFC after: 1 week
|
|
|
|
| |
Approved by: trb
|
|
|
|
| |
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Reviewed by: julian, brian
MFC after: 1 week
|
|
|
|
|
|
|
| |
simply things a bit by getting rid of 'struct ng_parse_struct_info' which
was useless because it only contained one field.
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
This message is sent to the control socket when the SessionID
is established.
Approved by: archie (after a very cursory glance)
|
|
|
|
|
|
| |
Submitted by: Andre Albsmeier <andre@albsmeier.net>
Shuffled about by: brian
Approved by: julian
|
|
|
|
| |
also don't use ANSI string concatenation.
|
| |
|
|
|
|
|
|
|
| |
4 bytes to the right on the alpha.
Tested by: Thomas Pornin <Thomas.Pornin@ens.fr>
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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.
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
| |
Found by: Brian Sommers
|
|
|
|
| |
Clever work by: Brian Sommers (Brian@freeBSD.org)
|
|
|
|
| |
Add memory leak detection assitance.
|
|
|
|
|
|
| |
This is mostly cosmetic changes, (though I caught a bug or two while
makeing them)
Reviewed by: archie@freebsd.org
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 :-)
|
|
|
|
|
|
|
| |
Submitted by: josh@zipperup.org
Submitted by: Robert Drehmel <robd@gmx.net>
Submitted by: archie
Approved by: archie
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
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!)
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
addresses to be the more usefu @freebsd.org ones
so we can keep getting bug-reports.
- man pages to follow..
|
|
|
|
| |
instead of M_WAITOK, to allow for maximum flexibility.
|
|
|
|
|
|
| |
upcoming "struct session" in proc.h.
Requested by: jasone
|
|
|
|
|
|
|
|
|
|
| |
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).
|