summaryrefslogtreecommitdiff
path: root/lib/libc/gen
diff options
context:
space:
mode:
authorcmetz <cmetz@cvs.openbsd.org>1999-07-02 20:39:09 +0000
committercmetz <cmetz@cvs.openbsd.org>1999-07-02 20:39:09 +0000
commitc876f9efb3b83f94108fa2967b221cbd0d561957 (patch)
tree0e640a9c328f7568219a36fecf45683f61a0b486 /lib/libc/gen
parentc32e9f278eee5d56ba2a77dd005657f17c956ca4 (diff)
Significant cleanups in the way TCP is made to handle multiple network
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).
Diffstat (limited to 'lib/libc/gen')
0 files changed, 0 insertions, 0 deletions