vserver 1.9.5.x5
[linux-2.6.git] / include / net / icmp.h
index aa260fc..3fc1924 100644 (file)
@@ -46,22 +46,15 @@ extern void icmp_init(struct net_proto_family *ops);
 /* Move into dst.h ? */
 extern int     xrlim_allow(struct dst_entry *dst, int timeout);
 
-struct raw_opt {
-       struct icmp_filter filter;
-};
-
-struct ipv6_pinfo;
-
-/* WARNING: don't change the layout of the members in raw_sock! */
 struct raw_sock {
-       struct sock       sk;
-#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
-       struct ipv6_pinfo *pinet6;
-#endif
-       struct inet_opt   inet;
-       struct raw_opt    raw4;
+       /* inet_sock has to be the first member */
+       struct inet_sock   inet;
+       struct icmp_filter filter;
 };
 
-#define raw4_sk(__sk) (&((struct raw_sock *)__sk)->raw4)
+static inline struct raw_sock *raw_sk(const struct sock *sk)
+{
+       return (struct raw_sock *)sk;
+}
 
 #endif /* _ICMP_H */