On Mon, 2012-10-22 at 14:04 -0400, Brian Haley wrote:
quoted hunk ↗ jump to hunk
+ char devname[IFNAMSIZ];
+
+ ret = 0;
+ if (sk->sk_bound_dev_if == 0)
+ goto out;
+
+ ret = -EINVAL;
+ if (len < IFNAMSIZ)
+ goto out;
+ if (len > IFNAMSIZ)
+ len = IFNAMSIZ;
+
+ rcu_read_lock();
+ dev = dev_get_by_index_rcu(net, sk->sk_bound_dev_if);
+ if (dev)
+ strcpy(dev->name, devname);
+ rcu_read_unlock();
+ ret = -ENODEV;
You probably meant
strcpy(devname, dev->name)
By the way, this is not really safe in case device is renamed