.. | .. |
---|
17 | 17 | struct udp_table udplite_table __read_mostly; |
---|
18 | 18 | EXPORT_SYMBOL(udplite_table); |
---|
19 | 19 | |
---|
| 20 | +/* Designate sk as UDP-Lite socket */ |
---|
| 21 | +static int udplite_sk_init(struct sock *sk) |
---|
| 22 | +{ |
---|
| 23 | + udp_init_sock(sk); |
---|
| 24 | + udp_sk(sk)->pcflag = UDPLITE_BIT; |
---|
| 25 | + return 0; |
---|
| 26 | +} |
---|
| 27 | + |
---|
20 | 28 | static int udplite_rcv(struct sk_buff *skb) |
---|
21 | 29 | { |
---|
22 | 30 | return __udp4_lib_rcv(skb, &udplite_table, IPPROTO_UDPLITE); |
---|
.. | .. |
---|
54 | 62 | .get_port = udp_v4_get_port, |
---|
55 | 63 | .memory_allocated = &udp_memory_allocated, |
---|
56 | 64 | .sysctl_mem = sysctl_udp_mem, |
---|
| 65 | + .sysctl_wmem_offset = offsetof(struct net, ipv4.sysctl_udp_wmem_min), |
---|
| 66 | + .sysctl_rmem_offset = offsetof(struct net, ipv4.sysctl_udp_rmem_min), |
---|
57 | 67 | .obj_size = sizeof(struct udp_sock), |
---|
58 | 68 | .h.udp_table = &udplite_table, |
---|
59 | 69 | }; |
---|