diff options
Diffstat (limited to 'net/appletalk/aarp.c')
-rw-r--r-- | net/appletalk/aarp.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/net/appletalk/aarp.c b/net/appletalk/aarp.c index d89d62f3702f..5ef6a238bdbc 100644 --- a/net/appletalk/aarp.c +++ b/net/appletalk/aarp.c | |||
@@ -118,7 +118,9 @@ static void __aarp_send_query(struct aarp_entry *a) | |||
118 | 118 | ||
119 | /* Set up the buffer */ | 119 | /* Set up the buffer */ |
120 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); | 120 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); |
121 | skb->nh.raw = skb->h.raw = skb_put(skb, sizeof(*eah)); | 121 | skb_reset_network_header(skb); |
122 | skb_reset_transport_header(skb); | ||
123 | skb_put(skb, sizeof(*eah)); | ||
122 | skb->protocol = htons(ETH_P_ATALK); | 124 | skb->protocol = htons(ETH_P_ATALK); |
123 | skb->dev = dev; | 125 | skb->dev = dev; |
124 | eah = aarp_hdr(skb); | 126 | eah = aarp_hdr(skb); |
@@ -163,7 +165,9 @@ static void aarp_send_reply(struct net_device *dev, struct atalk_addr *us, | |||
163 | 165 | ||
164 | /* Set up the buffer */ | 166 | /* Set up the buffer */ |
165 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); | 167 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); |
166 | skb->nh.raw = skb->h.raw = skb_put(skb, sizeof(*eah)); | 168 | skb_reset_network_header(skb); |
169 | skb_reset_transport_header(skb); | ||
170 | skb_put(skb, sizeof(*eah)); | ||
167 | skb->protocol = htons(ETH_P_ATALK); | 171 | skb->protocol = htons(ETH_P_ATALK); |
168 | skb->dev = dev; | 172 | skb->dev = dev; |
169 | eah = aarp_hdr(skb); | 173 | eah = aarp_hdr(skb); |
@@ -212,7 +216,9 @@ static void aarp_send_probe(struct net_device *dev, struct atalk_addr *us) | |||
212 | 216 | ||
213 | /* Set up the buffer */ | 217 | /* Set up the buffer */ |
214 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); | 218 | skb_reserve(skb, dev->hard_header_len + aarp_dl->header_length); |
215 | skb->nh.raw = skb->h.raw = skb_put(skb, sizeof(*eah)); | 219 | skb_reset_network_header(skb); |
220 | skb_reset_transport_header(skb); | ||
221 | skb_put(skb, sizeof(*eah)); | ||
216 | skb->protocol = htons(ETH_P_ATALK); | 222 | skb->protocol = htons(ETH_P_ATALK); |
217 | skb->dev = dev; | 223 | skb->dev = dev; |
218 | eah = aarp_hdr(skb); | 224 | eah = aarp_hdr(skb); |
@@ -539,7 +545,7 @@ int aarp_send_ddp(struct net_device *dev, struct sk_buff *skb, | |||
539 | int hash; | 545 | int hash; |
540 | struct aarp_entry *a; | 546 | struct aarp_entry *a; |
541 | 547 | ||
542 | skb->nh.raw = skb->data; | 548 | skb_reset_network_header(skb); |
543 | 549 | ||
544 | /* Check for LocalTalk first */ | 550 | /* Check for LocalTalk first */ |
545 | if (dev->type == ARPHRD_LOCALTLK) { | 551 | if (dev->type == ARPHRD_LOCALTLK) { |