]> err.no Git - linux-2.6/blobdiff - net/ipv4/xfrm4_policy.c
[PATCH] make 1-bit bitfields unsigned
[linux-2.6] / net / ipv4 / xfrm4_policy.c
index 1bed0cdf53e30c42f7d9f0ea82f2c75b59429d7f..d4107bb701b58ba4492c68b51d902fb6e286b05a 100644 (file)
@@ -72,8 +72,8 @@ __xfrm4_bundle_create(struct xfrm_policy *policy, struct xfrm_state **xfrm, int
        struct dst_entry *dst, *dst_prev;
        struct rtable *rt0 = (struct rtable*)(*dst_p);
        struct rtable *rt = rt0;
-       u32 remote = fl->fl4_dst;
-       u32 local  = fl->fl4_src;
+       __be32 remote = fl->fl4_dst;
+       __be32 local  = fl->fl4_src;
        struct flowi fl_tunnel = {
                .nl_u = {
                        .ip4_u = {
@@ -199,11 +199,12 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl)
        if (!(iph->frag_off & htons(IP_MF | IP_OFFSET))) {
                switch (iph->protocol) {
                case IPPROTO_UDP:
+               case IPPROTO_UDPLITE:
                case IPPROTO_TCP:
                case IPPROTO_SCTP:
                case IPPROTO_DCCP:
                        if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
-                               u16 *ports = (u16 *)xprth;
+                               __be16 *ports = (__be16 *)xprth;
 
                                fl->fl_ip_sport = ports[0];
                                fl->fl_ip_dport = ports[1];