Quellcode durchsuchen

qcacld-3.0: Check privilege permission for QCSAP_IOCTL_SETWPSIE

qcacld-2.0 to qcacld-3.0 propagation

Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing QCSAP_IOCTL_SETWPSIE IOCTL,
making sure user task has right permission to process the command.

Change-Id: Ie1c945afb0f109892beda66bab25647d70cc62d7
CRs-Fixed: 930944
Mukul Sharma vor 9 Jahren
Ursprung
Commit
72ed1edcaa
1 geänderte Dateien mit 6 neuen und 0 gelöschten Zeilen
  1. 6 0
      core/hdd/src/wlan_hdd_hostapd.c

+ 6 - 0
core/hdd/src/wlan_hdd_hostapd.c

@@ -4254,6 +4254,12 @@ __iw_softap_setwpsie(struct net_device *dev,
 
 	ENTER();
 
+	if (!capable(CAP_NET_ADMIN)) {
+		CDF_TRACE(CDF_MODULE_ID_HDD, CDF_TRACE_LEVEL_ERROR,
+			FL("permission check failed"));
+		return -EPERM;
+	}
+
 	hdd_ctx = WLAN_HDD_GET_CTX(pHostapdAdapter);
 	ret = wlan_hdd_validate_context(hdd_ctx);
 	if (0 != ret)