From 1dccdb3c82ff24674b8cb9483b4b524645e67407 Mon Sep 17 00:00:00 2001
From: Alexandru Vasile <alexandru.vasile@parity.io>
Date: Thu, 21 Nov 2024 22:06:15 +0200
Subject: [PATCH 1/2] litep2p/req-resp: Always provide main protocol name in
 responses

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
---
 .../network/src/litep2p/shim/request_response/mod.rs       | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/substrate/client/network/src/litep2p/shim/request_response/mod.rs b/substrate/client/network/src/litep2p/shim/request_response/mod.rs
index bfd7a60ef9fe6..146f2e4add978 100644
--- a/substrate/client/network/src/litep2p/shim/request_response/mod.rs
+++ b/substrate/client/network/src/litep2p/shim/request_response/mod.rs
@@ -320,7 +320,7 @@ impl RequestResponseProtocol {
 		&mut self,
 		peer: litep2p::PeerId,
 		request_id: RequestId,
-		fallback: Option<litep2p::ProtocolName>,
+		_fallback: Option<litep2p::ProtocolName>,
 		response: Vec<u8>,
 	) {
 		match self.pending_inbound_responses.remove(&request_id) {
@@ -337,10 +337,7 @@ impl RequestResponseProtocol {
 					response.len(),
 				);
 
-				let _ = tx.send(Ok((
-					response,
-					fallback.map_or_else(|| self.protocol.clone(), Into::into),
-				)));
+				let _ = tx.send(Ok((response, self.protocol.clone())));
 				self.metrics.register_outbound_request_success(started.elapsed());
 			},
 		}

From 658154b5c5256d490c2710532c06c2261194875e Mon Sep 17 00:00:00 2001
From: Alexandru Vasile <alexandru.vasile@parity.io>
Date: Mon, 25 Nov 2024 16:25:31 +0200
Subject: [PATCH 2/2] Add PR doc

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
---
 prdoc/pr_6603.prdoc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 prdoc/pr_6603.prdoc

diff --git a/prdoc/pr_6603.prdoc b/prdoc/pr_6603.prdoc
new file mode 100644
index 0000000000000..20c5e7294dfa0
--- /dev/null
+++ b/prdoc/pr_6603.prdoc
@@ -0,0 +1,16 @@
+# Schema: Polkadot SDK PRDoc Schema (prdoc) v1.0.0
+# See doc at https://raw.githubusercontent.com/paritytech/polkadot-sdk/master/prdoc/schema_user.json
+
+title: Always provide main protocol name in litep2p responses
+
+doc:
+  - audience: [ Node Dev, Node Operator ]
+    description: |
+      This PR aligns litep2p behavior with libp2p. Previously, litep2p network backend
+      would provide the actual negotiated request-response protocol that produced a
+      response message. After this PR, only the main protocol name is reported to other
+      subsystems.
+
+crates:
+  - name: sc-network
+    bump: patch