summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Russell <gabriel.russell@mongodb.com>2018-04-27 16:51:25 -0400
committerGabriel Russell <gabriel.russell@mongodb.com>2018-04-30 10:21:23 -0400
commit8927df651a6f19cec03a9739fafa8889b6b33470 (patch)
tree3997ac30077ef7e1c8ca4ed421ecf9925725cb7b
parent39622745cd5258d40924c8e44be73b5c2e1b4ca4 (diff)
downloadmongo-8927df651a6f19cec03a9739fafa8889b6b33470.tar.gz
SERVER-33968 mongodbcapi client_wire_protocol_rpc call setResponseToMsgId()
-rw-r--r--src/mongo/client/embedded/SConscript1
-rw-r--r--src/mongo/client/embedded/libmongodbcapi.cpp5
2 files changed, 6 insertions, 0 deletions
diff --git a/src/mongo/client/embedded/SConscript b/src/mongo/client/embedded/SConscript
index 33bf377852b..89efeacc9e9 100644
--- a/src/mongo/client/embedded/SConscript
+++ b/src/mongo/client/embedded/SConscript
@@ -129,6 +129,7 @@ capi = env.Library(
'libmongodbcapi.cpp',
],
LIBDEPS_PRIVATE=[
+ '$BUILD_DIR/mongo/util/net/network',
'$BUILD_DIR/mongo/db/service_context',
'$BUILD_DIR/mongo/transport/transport_layer_mock',
'embedded',
diff --git a/src/mongo/client/embedded/libmongodbcapi.cpp b/src/mongo/client/embedded/libmongodbcapi.cpp
index 1e8fbf833da..bdc9d9f946e 100644
--- a/src/mongo/client/embedded/libmongodbcapi.cpp
+++ b/src/mongo/client/embedded/libmongodbcapi.cpp
@@ -270,6 +270,11 @@ int client_wire_protocol_rpc(libmongodbcapi_client* client,
Message msg(std::move(sb));
client->response = sep->handleRequest(opCtx.get(), msg);
+
+ MsgData::View outMessage(client->response.response.buf());
+ outMessage.setId(nextMessageId());
+ outMessage.setResponseToMsgId(msg.header().getId());
+
*output_size = client->response.response.size();
*output = (void*)client->response.response.buf();