mirror of
https://github.com/adulau/aha.git
synced 2024-12-29 04:06:22 +00:00
[LLC]: station source mac address
kill unnecessary llc_station_mac_sa. Signed-off-by: Joonwoo Park <joonwpark81@gmail.com> Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
27785d83e4
commit
a5a04819c5
3 changed files with 4 additions and 11 deletions
|
@ -65,7 +65,6 @@ struct llc_sap {
|
||||||
|
|
||||||
extern struct list_head llc_sap_list;
|
extern struct list_head llc_sap_list;
|
||||||
extern rwlock_t llc_sap_list_lock;
|
extern rwlock_t llc_sap_list_lock;
|
||||||
extern unsigned char llc_station_mac_sa[ETH_ALEN];
|
|
||||||
|
|
||||||
extern int llc_rcv(struct sk_buff *skb, struct net_device *dev,
|
extern int llc_rcv(struct sk_buff *skb, struct net_device *dev,
|
||||||
struct packet_type *pt, struct net_device *orig_dev);
|
struct packet_type *pt, struct net_device *orig_dev);
|
||||||
|
|
|
@ -25,8 +25,6 @@
|
||||||
LIST_HEAD(llc_sap_list);
|
LIST_HEAD(llc_sap_list);
|
||||||
DEFINE_RWLOCK(llc_sap_list_lock);
|
DEFINE_RWLOCK(llc_sap_list_lock);
|
||||||
|
|
||||||
unsigned char llc_station_mac_sa[ETH_ALEN];
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* llc_sap_alloc - allocates and initializes sap.
|
* llc_sap_alloc - allocates and initializes sap.
|
||||||
*
|
*
|
||||||
|
@ -37,8 +35,8 @@ static struct llc_sap *llc_sap_alloc(void)
|
||||||
struct llc_sap *sap = kzalloc(sizeof(*sap), GFP_ATOMIC);
|
struct llc_sap *sap = kzalloc(sizeof(*sap), GFP_ATOMIC);
|
||||||
|
|
||||||
if (sap) {
|
if (sap) {
|
||||||
|
/* sap->laddr.mac - leave as a null, it's filled by bind */
|
||||||
sap->state = LLC_SAP_STATE_ACTIVE;
|
sap->state = LLC_SAP_STATE_ACTIVE;
|
||||||
memcpy(sap->laddr.mac, llc_station_mac_sa, ETH_ALEN);
|
|
||||||
rwlock_init(&sap->sk_list.lock);
|
rwlock_init(&sap->sk_list.lock);
|
||||||
atomic_set(&sap->refcnt, 1);
|
atomic_set(&sap->refcnt, 1);
|
||||||
}
|
}
|
||||||
|
@ -167,10 +165,6 @@ static int __init llc_init(void)
|
||||||
if (dev != NULL)
|
if (dev != NULL)
|
||||||
dev = next_net_device(dev);
|
dev = next_net_device(dev);
|
||||||
|
|
||||||
if (dev != NULL)
|
|
||||||
memcpy(llc_station_mac_sa, dev->dev_addr, ETH_ALEN);
|
|
||||||
else
|
|
||||||
memset(llc_station_mac_sa, 0, ETH_ALEN);
|
|
||||||
dev_add_pack(&llc_packet_type);
|
dev_add_pack(&llc_packet_type);
|
||||||
dev_add_pack(&llc_tr_packet_type);
|
dev_add_pack(&llc_tr_packet_type);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -259,7 +259,7 @@ static int llc_station_ac_send_null_dsap_xid_c(struct sk_buff *skb)
|
||||||
goto out;
|
goto out;
|
||||||
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, 0, LLC_PDU_CMD);
|
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, 0, LLC_PDU_CMD);
|
||||||
llc_pdu_init_as_xid_cmd(nskb, LLC_XID_NULL_CLASS_2, 127);
|
llc_pdu_init_as_xid_cmd(nskb, LLC_XID_NULL_CLASS_2, 127);
|
||||||
rc = llc_mac_hdr_init(nskb, llc_station_mac_sa, llc_station_mac_sa);
|
rc = llc_mac_hdr_init(nskb, skb->dev->dev_addr, skb->dev->dev_addr);
|
||||||
if (unlikely(rc))
|
if (unlikely(rc))
|
||||||
goto free;
|
goto free;
|
||||||
llc_station_send_pdu(nskb);
|
llc_station_send_pdu(nskb);
|
||||||
|
@ -283,7 +283,7 @@ static int llc_station_ac_send_xid_r(struct sk_buff *skb)
|
||||||
llc_pdu_decode_ssap(skb, &dsap);
|
llc_pdu_decode_ssap(skb, &dsap);
|
||||||
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, dsap, LLC_PDU_RSP);
|
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, dsap, LLC_PDU_RSP);
|
||||||
llc_pdu_init_as_xid_rsp(nskb, LLC_XID_NULL_CLASS_2, 127);
|
llc_pdu_init_as_xid_rsp(nskb, LLC_XID_NULL_CLASS_2, 127);
|
||||||
rc = llc_mac_hdr_init(nskb, llc_station_mac_sa, mac_da);
|
rc = llc_mac_hdr_init(nskb, skb->dev->dev_addr, mac_da);
|
||||||
if (unlikely(rc))
|
if (unlikely(rc))
|
||||||
goto free;
|
goto free;
|
||||||
llc_station_send_pdu(nskb);
|
llc_station_send_pdu(nskb);
|
||||||
|
@ -307,7 +307,7 @@ static int llc_station_ac_send_test_r(struct sk_buff *skb)
|
||||||
llc_pdu_decode_ssap(skb, &dsap);
|
llc_pdu_decode_ssap(skb, &dsap);
|
||||||
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, dsap, LLC_PDU_RSP);
|
llc_pdu_header_init(nskb, LLC_PDU_TYPE_U, 0, dsap, LLC_PDU_RSP);
|
||||||
llc_pdu_init_as_test_rsp(nskb, skb);
|
llc_pdu_init_as_test_rsp(nskb, skb);
|
||||||
rc = llc_mac_hdr_init(nskb, llc_station_mac_sa, mac_da);
|
rc = llc_mac_hdr_init(nskb, skb->dev->dev_addr, mac_da);
|
||||||
if (unlikely(rc))
|
if (unlikely(rc))
|
||||||
goto free;
|
goto free;
|
||||||
llc_station_send_pdu(nskb);
|
llc_station_send_pdu(nskb);
|
||||||
|
|
Loading…
Reference in a new issue