forked from mirrors/linux
		
	net: add sysfs entry for device group
The group of a network device can be queried or changed from userspace using sysfs. For example, considering sysfs mounted in /sys, one can change the group that interface lo belongs to: echo 1 > /sys/class/net/lo/group Signed-off-by: Vlad Dogaru <ddvlad@rosedu.org> Acked-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									84c49d8c3e
								
							
						
					
					
						commit
						a512b92b3a
					
				
					 1 changed files with 15 additions and 0 deletions
				
			
		|  | @ -295,6 +295,20 @@ static ssize_t show_ifalias(struct device *dev, | |||
| 	return ret; | ||||
| } | ||||
| 
 | ||||
| NETDEVICE_SHOW(group, fmt_dec); | ||||
| 
 | ||||
| static int change_group(struct net_device *net, unsigned long new_group) | ||||
| { | ||||
| 	dev_set_group(net, (int) new_group); | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| static ssize_t store_group(struct device *dev, struct device_attribute *attr, | ||||
| 			 const char *buf, size_t len) | ||||
| { | ||||
| 	return netdev_store(dev, attr, buf, len, change_group); | ||||
| } | ||||
| 
 | ||||
| static struct device_attribute net_class_attributes[] = { | ||||
| 	__ATTR(addr_assign_type, S_IRUGO, show_addr_assign_type, NULL), | ||||
| 	__ATTR(addr_len, S_IRUGO, show_addr_len, NULL), | ||||
|  | @ -316,6 +330,7 @@ static struct device_attribute net_class_attributes[] = { | |||
| 	__ATTR(flags, S_IRUGO | S_IWUSR, show_flags, store_flags), | ||||
| 	__ATTR(tx_queue_len, S_IRUGO | S_IWUSR, show_tx_queue_len, | ||||
| 	       store_tx_queue_len), | ||||
| 	__ATTR(group, S_IRUGO | S_IWUSR, show_group, store_group), | ||||
| 	{} | ||||
| }; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Vlad Dogaru
						Vlad Dogaru