Merge "SCS: Don't convert source and dst IP addresses for adding scs policies" into udc-dev am: da8e9fb66a am: e234dc8df1

Original change: https://googleplex-android-review.googlesource.com/c/platform/external/wpa_supplicant_8/+/23592592

Change-Id: I8f2d4a1b3efd56c77bc097a48a4b286f1dfb4150
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/wpa_supplicant/aidl/sta_iface.cpp b/wpa_supplicant/aidl/sta_iface.cpp
index fe56c21..afcd4b5 100644
--- a/wpa_supplicant/aidl/sta_iface.cpp
+++ b/wpa_supplicant/aidl/sta_iface.cpp
@@ -2101,8 +2101,6 @@
 				      struct type4_params *param)
 {
 	u8 classifier_mask = 0;
-	int ret;
-	char addr[INET6_ADDRSTRLEN];
 	uint32_t inMask = static_cast<uint32_t>(qos_policy_data.classifierParams.classifierParamMask);
 
 	if (qos_policy_data.classifierParams.ipVersion ==
@@ -2126,24 +2124,14 @@
 				wpa_printf(MSG_ERROR, "Invalid source IP");
 				return -1;
 			}
-			os_memcpy(addr, qos_policy_data.classifierParams.srcIp.data(), 4);
-			ret = inet_pton(AF_INET, addr,
-					&param->ip_params.v4.src_ip);
+			os_memcpy(&param->ip_params.v4.src_ip, qos_policy_data.classifierParams.srcIp.data(), 4);
 		} else {
 			if (qos_policy_data.classifierParams.srcIp.size() !=
 			    sizeof(param->ip_params.v6.src_ip)) {
 				wpa_printf(MSG_ERROR, "Invalid source IP");
 				return -1;
 			}
-			os_memcpy(addr, qos_policy_data.classifierParams.srcIp.data(), 16);
-			ret = inet_pton(AF_INET6, addr,
-					&param->ip_params.v6.src_ip);
-		}
-		if (ret != 1) {
-			wpa_printf(MSG_ERROR,
-				   "Error converting src IP address to binary ret=%d",
-				   ret);
-			return -1;
+			os_memcpy(&param->ip_params.v6.src_ip, qos_policy_data.classifierParams.srcIp.data(), 16);
 		}
 
 		/* Classifier Mask - bit 1 = Source IP Address */
@@ -2157,25 +2145,14 @@
 				wpa_printf(MSG_ERROR, "Invalid destination IP");
 				return -1;
 			}
-			os_memcpy(addr, qos_policy_data.classifierParams.dstIp.data(), 4);
-			ret = inet_pton(AF_INET, addr,
-					&param->ip_params.v4.dst_ip);
+			os_memcpy(&param->ip_params.v4.dst_ip, qos_policy_data.classifierParams.dstIp.data(), 4);
 		} else {
 			if (qos_policy_data.classifierParams.dstIp.size() !=
 			    sizeof(param->ip_params.v6.dst_ip)) {
 				wpa_printf(MSG_ERROR, "Invalid destination IP");
 				return -1;
 			}
-			os_memcpy(addr, qos_policy_data.classifierParams.dstIp.data(), 16);
-			ret = inet_pton(AF_INET6, addr,
-					&param->ip_params.v6.dst_ip);
-		}
-
-		if (ret != 1) {
-			wpa_printf(MSG_ERROR,
-				   "Error converting dst IP address to binary ret=%d",
-				   ret);
-			return -1;
+			os_memcpy(&param->ip_params.v6.dst_ip, qos_policy_data.classifierParams.dstIp.data(), 16);
 		}
 
 		/* Classifier Mask - bit 2 = Destination IP Address */