Category Archives: Networking

How does the IPv4 Receiving Mechanism Assemble Fragmented Datagrams?

Posted in kerneltrap.org on October 4, 2008 – 9:26pm How does the IP receiving mechanism assemble fragmented datagrams? First of all, this writing is based on Linux kernel 2.6.21.5. When I looked into ip_frag_reasm() that was commented with /* Build … Continue reading

Posted in Hacking, Linux Kernel, Networking, Software | Tagged , | 2 Comments

Information On skb_copy_datagram_iovec()

Posted in kerneltrap.org on October 3, 2008 – 2:01pm Information on skb_copy_datagram_iovec() This writing is based on Linux kernel 2.6.21.5. This function is defined in net/core/datagram.c. The main task of this function is to copy the data of an skb … Continue reading

Posted in Hacking, Linux Kernel, Networking, Software | Tagged , | 1 Comment

Tuning to a New Unusual Multicast Address

Posted in kerneltrap.org on September 28, 2008 – 10:52am During my work on the ATN TP4/CLNP Networking Suite, I helped a friend of mine to be able to capture Ethernet frames destined to unusual Ethernet multicast addresses. What I mean … Continue reading

Posted in Hacking, Linux Kernel, Network, Networking, Software | Tagged , , | 1 Comment

What does SOCK_ZAPPED mean?

Posted in kerneltrap.org on June 13, 2008 – 11:38am SOCK_ZAPPED, which is defined in include/net/sock.h, is a status flag of a socket (struct sock) to indicate that the socket has a name assigned to it already (i.e., the socket is … Continue reading

Posted in Hacking, Linux Kernel, Networking, Software | Tagged , , , , | Leave a comment

What Kind of Ethernet MAC Addresses are These?

Posted in kerneltrap.org on June 12, 2008 – 1:47am It turned out that any wireless Ethernet card’s device driver in a non-promiscuous mode does not drop any Ethernet frame with the following destination MAC address: YY:xx:xx:xx:xx:xx, where YY is an … Continue reading

Posted in Hacking, ifconfig, Linux Kernel, Networking, Software, Software Usage | Tagged | Leave a comment

The Relation between `skb->len’ and `skb->data_len’ and What They Represent

Posted in kerneltrap.org on June 1, 2008 – 10:16pm This writing is based on Linux kernel 2.6.21.5. If skb is linear (i.e., skb->data_len == 0), the length of skb->data is skb->len. If skb is not linear (i.e., skb->data_len != 0), … Continue reading

Posted in Hacking, Linux Kernel, Networking, Software | Tagged , , , | 1 Comment

Where `skb->len’ is set so that ip_rcv() can directly perform `skb->len tot_len’?

Posted in kerneltrap.org on May 22, 2008 – 8:47pm As an example, let’s use Realtek 8139 as the NIC. In Linux kernel 2.6.21.5, I traced from drivers/net/8139cp.c starting at the place where an SKB is admitted at the very first … Continue reading

Posted in Hacking, Linux Kernel, Networking, Software | Tagged | Leave a comment