diff options
Diffstat (limited to 'net/ax25/ax25_out.c')
-rw-r--r-- | net/ax25/ax25_out.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/net/ax25/ax25_out.c b/net/ax25/ax25_out.c index 3475a3ac9343..5fc048dcd39a 100644 --- a/net/ax25/ax25_out.c +++ b/net/ax25/ax25_out.c | |||
@@ -340,21 +340,18 @@ void ax25_transmit_buffer(ax25_cb *ax25, struct sk_buff *skb, int type) | |||
340 | 340 | ||
341 | ax25_addr_build(ptr, &ax25->source_addr, &ax25->dest_addr, ax25->digipeat, type, ax25->modulus); | 341 | ax25_addr_build(ptr, &ax25->source_addr, &ax25->dest_addr, ax25->digipeat, type, ax25->modulus); |
342 | 342 | ||
343 | skb->dev = ax25->ax25_dev->dev; | 343 | ax25_queue_xmit(skb, ax25->ax25_dev->dev); |
344 | |||
345 | ax25_queue_xmit(skb); | ||
346 | } | 344 | } |
347 | 345 | ||
348 | /* | 346 | /* |
349 | * A small shim to dev_queue_xmit to add the KISS control byte, and do | 347 | * A small shim to dev_queue_xmit to add the KISS control byte, and do |
350 | * any packet forwarding in operation. | 348 | * any packet forwarding in operation. |
351 | */ | 349 | */ |
352 | void ax25_queue_xmit(struct sk_buff *skb) | 350 | void ax25_queue_xmit(struct sk_buff *skb, struct net_device *dev) |
353 | { | 351 | { |
354 | unsigned char *ptr; | 352 | unsigned char *ptr; |
355 | 353 | ||
356 | skb->protocol = htons(ETH_P_AX25); | 354 | skb->protocol = ax25_type_trans(skb, ax25_fwd_dev(dev)); |
357 | skb->dev = ax25_fwd_dev(skb->dev); | ||
358 | 355 | ||
359 | ptr = skb_push(skb, 1); | 356 | ptr = skb_push(skb, 1); |
360 | *ptr = 0x00; /* KISS */ | 357 | *ptr = 0x00; /* KISS */ |