summaryrefslogtreecommitdiff
path: root/include/linux/ip.h
AgeCommit message (Collapse)Author
2005-03-26[NET] make all protos partially use sk_protArnaldo Carvalho de Melo
sk_alloc_slab becomes proto_register, that receives a struct proto not necessarily completely filled, but at least with the proto name, owner and obj_size (aka proto specific sock size), with this we can remove the struct sock sk_owner and sk_slab, using sk->sk_prot->{owner,slab} instead. This patch also makes sk_set_owner not necessary anymore, as at sk_alloc time we have now access to the struct proto onwer and slab members, so we can bump the module refcount exactly at sock allocation time. Another nice "side effect" is that this patch removes the generic sk_cachep slab cache, making the only last two protocols that used it use just kmalloc, informing a struct proto obj_size equal to sizeof(struct sock). Ah, almost forgot that with this patch it is very easy to use a slab cache, as it is now created at proto_register time, and all protocols need to use proto_register, so its just a matter of switching the second parameter of proto_register to '1', heck, this can be done even at module load time with some small additional patch. Another optimization that will be possible in the future is to move the sk_protocol and sk_type struct sock members to struct proto, but this has to wait for all protocols to move completely to sk_prot. This changeset also introduces /proc/net/protocols, that lists the registered protocols details, some may seem excessive, but I'd like to keep them while working on further struct sock hierarchy work and also to realize which protocols are old ones, i.e. that still use struct proto_ops, etc, yeah, this is a bit of an exaggeration, as all protos still use struct proto_ops, but in time the idea is to move all to use sk->sk_prot and make the proto_ops infrastructure be shared among all protos, reducing one level of indirection. Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: David S. Miller <davem@davemloft.net>
2005-03-16[NET] Reorder struct inet_sockThomas Graf
tos: int -> 8bit uc_ttl: int -> 16 bit cmsg_flags: int -> 16 bit hdrincl: 8bit -> 1 bit mc_loop: 8bit -> 1 bit Saves 12 bytes together with the reordering. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
2005-03-04[IPV6] Always add a fragment header after receiving TOO BIG w/ pmtu < 1280.Hideaki Yoshifuji
According to RFC2460, PMTU is set to the IPv6 Minimum Link MTU (1280) and a fragment header should always be included after a node receiving Too Big message reporting PMTU is less than the IPv6 Minimum Link MTU (1280). Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
2005-01-14[SCTP] merge sctp_sock with sctp_optArnaldo Carvalho de Melo
No need for two structs, follow the new inet_sock layout style. Also introduce inet_sk_copy_descendant, to copy just the inet_sock descendant specific area from one sock to another. Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: David S. Miller <davem@davemloft.net>
2004-12-27[INET] move inet_sock into inet_opt and rename it to inet_sockArnaldo Carvalho de Melo
With this we can remove all the cut'n'pasted layouts in all inet_sock derived classes, such as tcp_sock, udp_sock, sctp_sock, etc. Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: David S. Miller <davem@davemloft.net>
2004-06-22[NET] Move sndmsg_page and sndmsg_off to struct sockArnaldo Carvalho de Melo
Yeah, the poor cousins will use this as well :-)
2003-12-31[NET]: Do type checking in {udp,inet6,raw6,inet}_sk().Ingo Molnar
2003-10-26[IPV4,6]: Use common storage for cork'd flow, needed to handle mapped-ipv4 ↵Hideaki Yoshifuji
ipv6 addresses properly.
2003-05-16[IPV6]: Add IPCOMP support.Mitsuru Kanda
2003-05-15[IPV4]: Respect hoplimit route metric.David S. Miller
2003-04-15[IPV6]: Add MLDv2 support.David Stevens
2003-04-02[IPSEC]: Use of "sizeof" for header sizes, part IIHideaki Yoshifuji
2003-03-19[NET]: miscellaneous fixes.Alexey Kuznetsov
1. Fix illegal dereference of potentially freed memory in xfrm_policy.c 2. Complete wildcard flow addresses to real ones in xfrm_lookup(). 3. Respect optional flag when chacking for input policy. 4. Delete orphaned comments in ip.h. 5. Fix mistakedly freed route in tcp connect.
2002-10-24include/linux/ip.h: Define AH/ESP header layout.Alexey Kuznetsov
2002-10-15[NET]: Prepare for zerocopy NFS and IPSEC.Alexey Kuznetsov
- Import va10-hwchecksum-2.5.36.patch - Import va11-udpsendfile-2.5.36.patch - Implement new encapsulation friendly ipv4 output path.
2002-03-10Move IP-specific identity informationDavid S. Miller
out of struct sock. Fix -EFAULT handling in TCP direct user copy handling. Use struct initializers in IPV6 ndisc code.
2002-02-10Split protocol specific information out from struct sock.David S. Miller
Work done by Arnaldo Carvalho de Melo.
2002-02-04Import changesetLinus Torvalds