NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/48166: struct in_pktinfo incompatible with all other systems



On Aug 31,  9:10am, jnemeth%CornerstoneService.ca@localhost 
(jnemeth%CornerstoneService.ca@localhost) wrote:
-- Subject: kern/48166: struct in_pktinfo incompatible with all other systems

| struct in_pktinfo {
|       struct          in_addr ipi_addr;       /* src/dst address */
|       unsigned        int     ipi_ifindex;    /* interface index */
| };
| 
| On all other systems that I've checked (Illumos, Linux, and MacOSX) {none
| of the other BSDs have it} the struct is defined like:
| 
| typedef struct in_pktinfo {
|       unsigned        int     ipi_ifindex;    /* send/recv interface index */
|       struct          in_addr ipi_spec_dst;   /* matched source address */
|       struct          in_addr ipi_addr;       /* src/dst address in IP hdr */
| } in_pktinfo_t;
| 

And some don't have it:

Windows:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms738572(v=vs.85).aspx
AIX:
https://publib.boulder.ibm.com/infocenter/ieduasst/stgv1r0/topic/com.ibm.iea.zos/zos/1.13/Application-Middleware-Workload_Enablement/zOS_V1R13_zOS_UNIX_IPV4-pktinfo-Support.pdf?dmuid=20110825162439438278
Cygwin:
http://cygwin.com/ml/cygwin/2009-09/msg00150.html

We could provide it, but it does not seem necessary or symmetric to the
IPV6 interface:

/*                   
 * IPV6_PKTINFO: Packet information(RFC2292 sec 5)
 */
struct in6_pktinfo {            
        struct in6_addr ipi6_addr;      /* src/dst IPv6 address */
        unsigned int    ipi6_ifindex;   /* send/recv interface index */
};

christos


Home | Main Index | Thread Index | Old Index