diff --git a/wpa_supplicant/aidl/sta_iface.cpp b/wpa_supplicant/aidl/sta_iface.cpp
index 084ea2c..f382285 100644
--- a/wpa_supplicant/aidl/sta_iface.cpp
+++ b/wpa_supplicant/aidl/sta_iface.cpp
@@ -788,13 +788,13 @@
 }
 
 ::ndk::ScopedAStatus StaIface::sendQosPolicyResponse(
-	bool in_morePolicies,
+	int32_t in_qosPolicyRequestId, bool in_morePolicies,
 	const std::vector<QosPolicyStatus>& in_qosPolicyStatusList)
 {
 	return validateAndCall(
 		this, SupplicantStatusCode::FAILURE_UNKNOWN,
-		&StaIface::sendQosPolicyResponseInternal, in_morePolicies,
-		in_qosPolicyStatusList);
+		&StaIface::sendQosPolicyResponseInternal, in_qosPolicyRequestId,
+		in_morePolicies, in_qosPolicyStatusList);
 }
 
 ::ndk::ScopedAStatus StaIface::removeAllQosPolicies()
@@ -1809,7 +1809,8 @@
 }
 
 ndk::ScopedAStatus StaIface::sendQosPolicyResponseInternal(
-	bool more_policies, const std::vector<QosPolicyStatus>& qos_policy_status_list)
+	int32_t qos_policy_request_id, bool more_policies,
+	const std::vector<QosPolicyStatus>& qos_policy_status_list)
 {
 	return ndk::ScopedAStatus::ok();
 }
diff --git a/wpa_supplicant/aidl/sta_iface.h b/wpa_supplicant/aidl/sta_iface.h
index 44e3ef5..0ed29d8 100644
--- a/wpa_supplicant/aidl/sta_iface.h
+++ b/wpa_supplicant/aidl/sta_iface.h
@@ -153,7 +153,8 @@
 		const std::string& in_ssid, const std::vector<uint8_t>& in_privEcKey) override;
 	::ndk::ScopedAStatus setQosPolicyFeatureEnabled(bool in_enable) override;
 	::ndk::ScopedAStatus sendQosPolicyResponse(
-		bool in_morePolicies, const std::vector<QosPolicyStatus>& in_qosPolicyStatusList) override;
+		int32_t in_qosPolicyRequestId, bool in_morePolicies,
+		const std::vector<QosPolicyStatus>& in_qosPolicyStatusList) override;
 	::ndk::ScopedAStatus removeAllQosPolicies() override;
 	::ndk::ScopedAStatus getConnectionMloLinksInfo(MloLinksInfo* _aidl_return) override;
 
@@ -256,7 +257,8 @@
 		const std::string& ssid, const std::vector<uint8_t> &privEcKey);
 	ndk::ScopedAStatus setQosPolicyFeatureEnabledInternal(bool enable);
 	ndk::ScopedAStatus sendQosPolicyResponseInternal(
-		bool more_policies, const std::vector<QosPolicyStatus>& qos_policy_status_list);
+		int32_t qos_policy_request_id, bool more_policies,
+		const std::vector<QosPolicyStatus>& qos_policy_status_list);
 	ndk::ScopedAStatus removeAllQosPoliciesInternal();
 	std::pair<MloLinksInfo, ndk::ScopedAStatus> getConnectionMloLinksInfoInternal();
 	struct wpa_supplicant* retrieveIfacePtr();
