Subject: Re: Reserved port range patches
To: Robert Elz <kre@munnari.OZ.AU>
From: None <>
List: tech-net
Date: 08/27/2000 08:53:48
>  | 	i'll look at IPv6 counterpart.
>This really ought to be quite difficult.   Neither IPv4 nor IPv6
>know anything about ports, so there should be no v4 or v6 specific
>code that has anything to do with this at all ... this stuff is
>really all TCP/UDP code, that (in the *BSD implementation) just
>happens to have been dumped in the ip layer code (and ioctl/sysctl)
>to avoid associating it with either TCP or UDP and hence confusing
>the other one of them...

	code is already in the tree.  it is basically:
	- code is separate from netinet (in netinet6/in6_{pcb,src}.c), in
	  in6pcb layer (not tcp/udp layer)
	- sysctl variable is in net.inet6.ip6.{any,low}port{min,max}, so
	  variable is said to be in ip6 layer
	- internal variable is also separate.  you can change IPv6 TCP/UDP
	  port range independently from IPv4 TCP/UDP port range.

>Whether the actual implementation is sharing that code or not I am
>not sure (netinet6 duplicates quite a lot that one day I expect will
>get merged back again, once it is truly stable ... which partly means
>once the IETF stops fiddling around the edges).

	there are many logic difference between netinet and netinet6,
	specifically in source address selection.  we cannot simply merge
	pcb layer.  I may try to merge inpcb structure and in6pcb structure,
	but I want to do that really really carefully.