On 6/06/24 08:51, Jacob Keller wrote:
>
> On 6/3/2024 8:10 PM, jackie.j...@alliedtelesis.co.nz wrote:
>> From: Jackie Jone <jackie.j...@alliedtelesis.co.nz>
>>
>> To facilitate running PHY parametric tests, add support for the SIOCSMIIREG
>> ioctl. This allows a userspace application to write to the PHY registers
>> to enable the test modes.
>>
>> Signed-off-by: Jackie Jone <jackie.j...@alliedtelesis.co.nz>
>> ---
>>   drivers/net/ethernet/intel/igb/igb_main.c | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/net/ethernet/intel/igb/igb_main.c 
>> b/drivers/net/ethernet/intel/igb/igb_main.c
>> index 03a4da6a1447..7fbfcf01fbf9 100644
>> --- a/drivers/net/ethernet/intel/igb/igb_main.c
>> +++ b/drivers/net/ethernet/intel/igb/igb_main.c
>> @@ -8977,6 +8977,10 @@ static int igb_mii_ioctl(struct net_device *netdev, 
>> struct ifreq *ifr, int cmd)
>>                      return -EIO;
>>              break;
>>      case SIOCSMIIREG:
>> +            if (igb_write_phy_reg(&adapter->hw, data->reg_num & 0x1F,
>> +                                 data->val_in))
>> +                    return -EIO;
>> +            break;
> A handful of drivers seem to expose this. What are the consequences of
> exposing this ioctl? What can user space do with it?
>
> It looks like a few drivers also check something like CAP_NET_ADMIN to
> avoid allowing write access to all users. Is that enforced somewhere else?

CAP_NET_ADMIN is enforced via dev_ioctl() so it should already be 
restricted to users with that capability.

Reply via email to