Loading net/ieee802154/6lowpan.c +15 −8 Original line number Diff line number Diff line Loading @@ -572,21 +572,28 @@ static int lowpan_header_create(struct sk_buff *skb, * this isn't implemented in mainline yet, so currently we assign 0xff */ { mac_cb(skb)->flags = IEEE802154_FC_TYPE_DATA; /* prepare wpan address data */ sa.addr_type = IEEE802154_ADDR_LONG; sa.pan_id = 0xff; memcpy(&(sa.hwaddr), saddr, 8); da.addr_type = IEEE802154_ADDR_LONG; da.pan_id = 0xff; /* * if the destination address is the broadcast address, use the * corresponding short address */ if (lowpan_is_addr_broadcast(daddr)) { da.addr_type = IEEE802154_ADDR_SHORT; da.short_addr = IEEE802154_ADDR_BROADCAST; } else { da.addr_type = IEEE802154_ADDR_LONG; memcpy(&(da.hwaddr), daddr, 8); memcpy(&(sa.hwaddr), saddr, 8); mac_cb(skb)->flags = IEEE802154_FC_TYPE_DATA; /* request acknowledgment when possible */ if (!lowpan_is_addr_broadcast(daddr)) /* request acknowledgment */ mac_cb(skb)->flags |= MAC_CB_FLAG_ACKREQ; } return dev_hard_header(skb, lowpan_dev_info(dev)->real_dev, type, (void *)&da, (void *)&sa, skb->len); Loading Loading
net/ieee802154/6lowpan.c +15 −8 Original line number Diff line number Diff line Loading @@ -572,21 +572,28 @@ static int lowpan_header_create(struct sk_buff *skb, * this isn't implemented in mainline yet, so currently we assign 0xff */ { mac_cb(skb)->flags = IEEE802154_FC_TYPE_DATA; /* prepare wpan address data */ sa.addr_type = IEEE802154_ADDR_LONG; sa.pan_id = 0xff; memcpy(&(sa.hwaddr), saddr, 8); da.addr_type = IEEE802154_ADDR_LONG; da.pan_id = 0xff; /* * if the destination address is the broadcast address, use the * corresponding short address */ if (lowpan_is_addr_broadcast(daddr)) { da.addr_type = IEEE802154_ADDR_SHORT; da.short_addr = IEEE802154_ADDR_BROADCAST; } else { da.addr_type = IEEE802154_ADDR_LONG; memcpy(&(da.hwaddr), daddr, 8); memcpy(&(sa.hwaddr), saddr, 8); mac_cb(skb)->flags = IEEE802154_FC_TYPE_DATA; /* request acknowledgment when possible */ if (!lowpan_is_addr_broadcast(daddr)) /* request acknowledgment */ mac_cb(skb)->flags |= MAC_CB_FLAG_ACKREQ; } return dev_hard_header(skb, lowpan_dev_info(dev)->real_dev, type, (void *)&da, (void *)&sa, skb->len); Loading