diff options
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/ip_output.c | 3 | ||||
-rw-r--r-- | net/ipv4/raw.c | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c index 6e4d5f493bf9..341779e685d9 100644 --- a/net/ipv4/ip_output.c +++ b/net/ipv4/ip_output.c | |||
@@ -168,6 +168,7 @@ int ip_build_and_send_pkt(struct sk_buff *skb, struct sock *sk, | |||
168 | } | 168 | } |
169 | 169 | ||
170 | skb->priority = sk->sk_priority; | 170 | skb->priority = sk->sk_priority; |
171 | skb->mark = sk->sk_mark; | ||
171 | 172 | ||
172 | /* Send it out. */ | 173 | /* Send it out. */ |
173 | return ip_local_out(skb); | 174 | return ip_local_out(skb); |
@@ -385,6 +386,7 @@ packet_routed: | |||
385 | (skb_shinfo(skb)->gso_segs ?: 1) - 1); | 386 | (skb_shinfo(skb)->gso_segs ?: 1) - 1); |
386 | 387 | ||
387 | skb->priority = sk->sk_priority; | 388 | skb->priority = sk->sk_priority; |
389 | skb->mark = sk->sk_mark; | ||
388 | 390 | ||
389 | return ip_local_out(skb); | 391 | return ip_local_out(skb); |
390 | 392 | ||
@@ -1286,6 +1288,7 @@ int ip_push_pending_frames(struct sock *sk) | |||
1286 | iph->daddr = rt->rt_dst; | 1288 | iph->daddr = rt->rt_dst; |
1287 | 1289 | ||
1288 | skb->priority = sk->sk_priority; | 1290 | skb->priority = sk->sk_priority; |
1291 | skb->mark = sk->sk_mark; | ||
1289 | skb->dst = dst_clone(&rt->u.dst); | 1292 | skb->dst = dst_clone(&rt->u.dst); |
1290 | 1293 | ||
1291 | if (iph->protocol == IPPROTO_ICMP) | 1294 | if (iph->protocol == IPPROTO_ICMP) |
diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c index 85c08696abbe..f863c3dc5421 100644 --- a/net/ipv4/raw.c +++ b/net/ipv4/raw.c | |||
@@ -352,6 +352,7 @@ static int raw_send_hdrinc(struct sock *sk, void *from, size_t length, | |||
352 | skb_reserve(skb, hh_len); | 352 | skb_reserve(skb, hh_len); |
353 | 353 | ||
354 | skb->priority = sk->sk_priority; | 354 | skb->priority = sk->sk_priority; |
355 | skb->mark = sk->sk_mark; | ||
355 | skb->dst = dst_clone(&rt->u.dst); | 356 | skb->dst = dst_clone(&rt->u.dst); |
356 | 357 | ||
357 | skb_reset_network_header(skb); | 358 | skb_reset_network_header(skb); |
@@ -544,6 +545,7 @@ static int raw_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, | |||
544 | 545 | ||
545 | { | 546 | { |
546 | struct flowi fl = { .oif = ipc.oif, | 547 | struct flowi fl = { .oif = ipc.oif, |
548 | .mark = sk->sk_mark, | ||
547 | .nl_u = { .ip4_u = | 549 | .nl_u = { .ip4_u = |
548 | { .daddr = daddr, | 550 | { .daddr = daddr, |
549 | .saddr = saddr, | 551 | .saddr = saddr, |