| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
| |
requested by theo
ok markus@ hshoexer@
|
| |
|
|
|
|
|
|
| |
so you can check wether a just accept()ed connection is md5sig'd
ok deraadt@ markus@
|
| |
|
|
|
|
| |
http://www.kohala.com/start/borman.97jun06.txt; ok deraadt@, henning@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
use the the presence of this tag to reverse the match order in
in{6}_pcblookup_listen(). Some daemons (such as portmap) do a double
bind, binding to both * and localhost in order to differentiate local
from non-local connections, and potentially granting more privilege to
local ones. This change ensures that redirected connections to localhost
do not appear local to such a daemon.
Bulk of changes from dhartmei@, some changes markus@
ok dhartmei@ deraadt@
|
|
|
|
|
|
| |
with either in(6)_pcbhashlookup() or in(6)_pcblookup_listen();
in_pcblookup is now only used by bind(2); speeds up pcb lookup for
listening sockets; from Claudio Jeker
|
|
|
|
|
|
| |
>use m_pulldown not m_pullup2. fix some bugs in IPv6 tcp_trace().
PR 3283 fixed (confirmed)
|
|
|
|
| |
rescinded 22 July 1999. Proofed by myself and Theo.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make insertion of data into socket buffers O(C):
* Keep pointers to the first and last mbufs of the last record in the
socket buffer.
* Use the sb_lastrecord pointer in the sbappend*() family of functions
to avoid traversing the packet chain to find the last record.
* Add a new sbappend_stream() function for stream protocols which
guarantee that there will never be more than one record in the
socket buffer. This function uses the sb_mbtail pointer to perform
the data insertion. Make TCP use sbappend_stream(). On a profiling
run, this makes sbappend of a TCP transmission using
a 1M socket buffer go from 50% of the time to .02% of the time. Thanks
to Bill Sommerfeld and YAMAMOTO Takashi for their debugging
assistance!
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
it consists of
- ECN support in TCP
- tunnel-egress and fragment reassembly rules in layer-3 not to lose
congestion info at tunnel-egress and fragment reassembly
to enable ECN in TCP, build a kernel with TCP_ECN, and then,
turn it on by "sysctl -w net.inet.tcp.ecn=1".
ok deraadt@
|
| |
|
|
|
|
| |
tcp connections during tcp_slowtimo. apdapted from thorpej@netbsd.org
|
|
|
|
|
| |
from netbsd; also fix a bug where setting TF_ACKNOW didn't actually
result in an ack.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
validate ICMPv6 too big messages (pmtud) based on pcb. we accept
certain amount of non-validated ones, as IPv6 mandates ICMPv6 (so even for
traffic from unconnected pcb, we need pmtud).
sync with kame
|
|
|
|
| |
to less than N per 1 second.
|
| |
|
|
|
|
| |
on diff from "Pete Kazmier" <pete@kazmier.com>
|
|
|
|
| |
cleanup (indentation, v4-or-v6 conditions)
|
|
|
|
|
|
|
|
|
| |
inconsistency in corner cases (from NRL I believe).
todd (fries) and I have seen panic, with the following call chain:
ip6_input -> tcp_input -> tcp_respond -> ip_input -> bang!
more cleanups should be done, to decrease complexity.
for example, INP_IPV6_MAPPED should be nuked.
|
| |
|
| |
|
|
|
|
| |
PF_INET. we may see other family in the future... (pedant)
|
| |
|
|
|
|
| |
SACK is disabled for the connection or via sysctl
|
|
|
|
|
|
|
| |
not from tcb.
it will present more natural behavior.
af for socket option obeys address family passed to bind(2).
|
|
|
|
|
|
|
|
|
| |
replaces NRL IPv6 layer. reuses NRL pcb layer. no IPsec-on-v6 support.
see sys/netinet6/{TODO,IMPLEMENTATION} for more details.
GENERIC configuration should work fine as before. GENERIC.v6 works fine
as well, but you'll need KAME userland tools to play with IPv6 (will be
bringed into soon).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
protocols.
"struct tcpiphdr" is now gone from much of the code, as are separate pointers
for ti and ti6. The result is fewer variables, which is generally a good thing.
Simple if(is_ipv6) ... else ... tests are gone in favor of a
switch(protocol family), which allows future new protocols to be added easily.
This also makes it possible for someone so inclined to re-implement TUBA (TCP
over CLNP?) and do it right instead of the kluged way it was done in 4.4.
The TCP header template is now referenced through a mbuf rather than done
through a data pointer and dtom()ed as needed. This is partly because dtom() is
evil and partly because max_linkhdr + IPv6 + TCP + MSS/TS/SACK opts won't fit
inside a packet header mbuf, so we need to grab a cluster for that (which the
code now does, if needed).
|
|
|
|
| |
convention that is more common and more specific as to the access size)
|
| |
|
| |
|