mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02: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