===== net/ipv4/af_inet.c 1.86 vs edited ===== --- 1.86/net/ipv4/af_inet.c 2005-03-27 09:04:35 +10:00 +++ edited/net/ipv4/af_inet.c 2005-05-06 07:41:44 +10:00 @@ -1010,6 +1010,15 @@ static int ipv4_proc_init(void); extern void ipfrag_init(void); +/* + * IP protocol layer initialiser + */ + +static struct packet_type ip_packet_type = { + .type = __constant_htons(ETH_P_IP), + .func = ip_rcv, +}; + static int __init inet_init(void) { struct sk_buff *dummy_skb; @@ -1102,6 +1111,8 @@ ipv4_proc_init(); ipfrag_init(); + + dev_add_pack(&ip_packet_type); rc = 0; out: ===== net/ipv4/ip_output.c 1.82 vs edited ===== --- 1.82/net/ipv4/ip_output.c 2005-03-24 07:17:35 +11:00 +++ edited/net/ipv4/ip_output.c 2005-05-06 07:41:29 +10:00 @@ -1323,23 +1323,8 @@ ip_rt_put(rt); } -/* - * IP protocol layer initialiser - */ - -static struct packet_type ip_packet_type = { - .type = __constant_htons(ETH_P_IP), - .func = ip_rcv, -}; - -/* - * IP registers the packet type and then calls the subprotocol initialisers - */ - void __init ip_init(void) { - dev_add_pack(&ip_packet_type); - ip_rt_init(); inet_initpeers();