Re: why struct ip -> p_ip==0

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

 



cyx_mail wrote:
> Hi,all
> 
> When I read the igmpproxy code ,I found a piece of code in igmp.c :
> 
> /* 
>      * this is most likely a message from the kernel indicating that
>      * a new src grp pair message has arrived and so, it would be 
>      * necessary to install a route into the kernel for this.
>      */
>     if (ip->ip_p == 0) {
>         if (src == 0 || dst == 0) {
>             log(LOG_WARNING, 0, "kernel request not accurate");
>         }
> 
> I don't know why ip->ip_p == 0 ???

I am not sure where the interface is documented. Basically they are
internal messages from the kernel, not real IP/IGMP packets. Every time
a new "flow" is seen by the kerenl a dummy IP header with a protocol of
0, is sent up to userspace. There the userspace code needs to fill out a
"TTL" arrary of for the possible output interfaces, based on the SRC,
Dest IP, and input inteface of the packet and send it back into the kernel.

You may be able to find more info on google. Or just look in the kernel
code.
http://www.linuxjournal.com/article/6070
--
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux