Hi All,
Thanks for your comments and questions and special thanks to Jim Carlson
for answering the difficult ones.
I think it will help the discussion if I added some background. When I
started looking at this issue Jim suggested that I try to be compatible
with Linux as much as possible but I decide to diverge a little because
I could not find a clear description on how the option was suppose to
work. You can see this in the man page descriptions below.
Debian:
http://manpages.debian.net/cgi-bin/display_man.cgi?id=719767c6f553f49d5b0ed43486cb0619&format=html
Redhat:
http://www.penguin-soft.com/penguin/man/7/ip.html
Others:
http://unixhelp.ed.ac.uk/CGI/man-cgi?ip+7
If you are interested in knowing how the Redhat page has evolved please
read the thread
http://www.uwsg.iu.edu/hypermail/linux/kernel/0302.2/0515.html
I find the Redhat man page to be confusing and I do not understand what
'primary local address of the interface' means.
Further more on Redhat Linux when I tried to send a packet using sendmsg
and specified source address using IP_PKTINFO it went out with source
address being the address of the outgoing interface. I guess that's
because I the system had not received a packet with my source address as
the destination address and route lookup failed. So on Linux IP_PKTINFO
is really a hint and not a guarantee which is not clear from the man page.
All this undocumented behavior made me look for a standard and I decide
to implement the IPV6 semantics as defined in RFC 3542. This is a
standard that we can quote to defend Solaris implementation and
provides symmetry with IPV6. If you believe that semantics of RFC 3542
should not be applied to IPV4 please speak up.
To address the issues regarding compiling may I suggest use of
IPV4_PKTINFO ?
Once again thanks for your comments. I hope those of you who develop
both on Linux and Solaris will weigh in.
Rao.
_______________________________________________
networking-discuss mailing list
[email protected]