Alexander Motin
148ac1dacc
Make ng_l2tp irrelevant to data alignment.
2010-03-31 22:11:06 +00:00
Ed Schouten
802cb57e34
Add memmove() to the kernel, making the kernel compile with Clang.
...
When copying big structures, LLVM generates calls to memmove(), because
it may not be able to figure out whether structures overlap. This caused
linker errors to occur. memmove() is now implemented using bcopy().
Ideally it would be the other way around, but that can be solved in the
future. On ARM we don't do add anything, because it already has
memmove().
Discussed on: arch@
Reviewed by: rdivacky
2009-02-28 16:21:25 +00:00
Alexander Motin
b023993708
Fix typo. Clear session stats instead of config and part of stats.
...
Found with: Coverity Prevent(tm)
CID: 2472
2008-11-22 16:40:12 +00:00
Dag-Erling Smørgrav
e11e3f187d
Fix a number of style issues in the MALLOC / FREE commit. I've tried to
...
be careful not to fix anything that was already broken; the NFSv4 code is
particularly bad in this respect.
2008-10-23 20:26:15 +00:00
Dag-Erling Smørgrav
1ede983cc9
Retire the MALLOC and FREE macros. They are an abomination unto style(9).
...
MFC after: 3 months
2008-10-23 15:53:51 +00:00
Alexander Motin
280d6bd758
Don't use memcpy() to copy several bytes.
...
Store IDs is host order. It is not so important to bloat code for it.
Combine m_adj() and M_PREPEND() into single M_PREPEND().
2008-07-28 22:22:38 +00:00
Alexander Motin
4e7597635f
Add session ID hashing to speedup incoming packets dispatch in case
...
of many connections working via the same tunnel. For example, in case
of full "client <-> LAC <-> LNS" setup.
2008-03-16 21:33:12 +00:00
Alexander Motin
395adfbe34
Addition to the previous commit. Release inproc in case of memory error.
2008-03-09 11:17:00 +00:00
Alexander Motin
af63939c67
To avoid control data losses do not acknowledge recieving of control packet
...
if netgraph reported error while delivering to destination.
Reset 'next send' counter to the last requested by peer on ack timeout
to resend all subsequest packets after lost one again without additional hints.
2008-03-08 23:55:29 +00:00
Alexander Motin
52b9b77f78
Increase control channel xmit queue to 128 packets.
...
Previous value 16 was too small for real LAC as temporal activity
spike cound easily overflow queue demanding tunnel disconnection due
to possible state inconsistency.
2007-12-12 19:04:30 +00:00
Alexander Motin
702f98951d
Protect struct seq with mutex.
...
Approved by: glebius (mentor)
2007-10-12 04:56:26 +00:00
Alexander Motin
058ef12167
Remove one unneded assertion. It is also checked in
...
ng_l2tp_seq_check().
Approved by: glebius (mentor)
2007-10-12 04:54:43 +00:00
Alexander Motin
bf741e4d08
Replace single rcvdata with 3 distinct to simplify code and
...
reduce stack usage.
Approved by: mentor (glebius)
2007-10-12 04:53:23 +00:00
Alexander Motin
40097c5d9f
Remove duplicate variables.
2007-10-12 04:51:30 +00:00
Alexander Motin
206fa244b7
Avoid false assertion on transmit and delayed ack timeout with enabled invariants.
...
Replace callout_pending() by callout_active() to remove race window.
Reviewed by: archie
Approved by: glebius (mentor)
2007-04-24 10:50:25 +00:00
Alexander Motin
34d16c641d
Global xmit stats calculation fix.
...
Approved by: glebius (mentor)
2007-04-23 15:25:14 +00:00
David E. O'Brien
7e2b43eeb3
Use the ISO standard function variable vs. a GCC'ism.
2005-08-10 06:25:41 +00:00
Gleb Smirnoff
0ef8db8ff2
- Use ng_callout() instead of callout_reset(9).
...
- Use callout_pending() instead of our own flags.
- Remove home-grown protection of node, which has a scheduled
callout().
- Remove spl(9) calls.
Tested by: bz
2005-01-11 11:51:17 +00:00
Warner Losh
c398230b64
/* -> /*- for license, minor formatting changes
2005-01-07 01:45:51 +00:00
Bjoern A. Zeeb
4807330cff
Implement minimalistic L2TP sessions statistics and correct man page
...
for L2TP tunnel statistics (which do not take an argument sessionID).
Reviewed by: archie
Approved by: pjd (mentor)
2004-08-03 06:52:55 +00:00
Bjoern A. Zeeb
1e0313242d
add a new control message to set sequence numbers on an uninitialized node.
...
Reviewed by: archie
Approved by: pjd (mentor)
2004-08-03 06:45:38 +00:00
Bjoern A. Zeeb
ddb7229415
Correct L2TP header offset handling:
...
- according to RFC2661 an offset size of 0 is allowed.
- when skipping offset padding do not forget to also skip
the 2 octets of the offset size field.
Reviewed by: archie
Approved by: pjd (mentor)
2004-08-03 06:37:46 +00:00
Julian Elischer
3ca24c284d
Having moved metadata usage to mbuf tags, remove code that supports
...
the old way of doing it.
Submitted by: Gleb Smirnoff <glebius@cell.sick.ru>
2004-06-26 22:24:16 +00:00
Julian Elischer
f8aae7776f
Switch to using C99 sparse initialisers for the type methods array.
...
Should make no binary difference.
Submitted by: Gleb Smirnoff <glebius@cell.sick.ru>
Reviewed by: Harti Brandt <harti@freebsd.org>
MFC after: 1 week
2004-05-29 00:51:19 +00:00
Archie Cobbs
2c9027fcba
Rename internal structure to fix cut & paste error.
...
Submitted by: Bjoern A. Zeeb <bzeeb+freebsd@zabbadoz.net>
MFC After: 3 days
2004-04-04 21:33:09 +00:00
Dag-Erling Smørgrav
f7854568f5
Don't use ovbcopy().
2003-04-04 12:12:34 +00:00
Warner Losh
a163d034fa
Back out M_* changes, per decision of the TRB.
...
Approved by: trb
2003-02-19 05:47:46 +00:00
Alfred Perlstein
44956c9863
Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.
...
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
2003-01-21 08:56:16 +00:00
Bosko Milekic
86fea6be59
o Untangle the confusion with the malloc flags {M_WAITOK, M_NOWAIT} and
...
the mbuf allocator flags {M_TRYWAIT, M_DONTWAIT}.
o Fix a bpf_compat issue where malloc() was defined to just call
bpf_alloc() and pass the 'canwait' flag(s) along. It's been changed
to call bpf_alloc() but pass the corresponding M_TRYWAIT or M_DONTWAIT
flag (and only one of those two).
Submitted by: Hiten Pandya <hiten@unixdaemons.com> (hiten->commit_count++)
2002-12-19 22:58:27 +00:00
Archie Cobbs
facfd88935
Don't use "NULL" when "0" is really meant.
2002-08-22 00:30:03 +00:00
Archie Cobbs
901fadf792
New L2TP netgraph node type.
...
Obtained from: Packet Design
2002-08-20 21:59:50 +00:00