summaryrefslogtreecommitdiffstats
path: root/rpc
diff options
context:
space:
mode:
authorMohit Agrawal <moagrawal@redhat.com>2018-11-21 14:33:53 +0530
committerAmar Tumballi <amarts@redhat.com>2018-12-12 22:58:49 +0000
commit607bbd935f102602810fdeb61079b85ecb58a118 (patch)
treefd001998b7a40102b4b778600eb397fa5ddfcdaf /rpc
parentc9d117d54aea1d775e0eef1881892d11fa12811e (diff)
rpc: Resolve memory leak in mgmt_pmap_signout_cbk
Problem: At the time of submit signout request to mgmt rpc_clnt_mgmt_pmap_signout create a frame but in cbk frame is not destroyed Solution: cleanup frame in mgmt_pmap_signout_cbk to avoid leak Change-Id: I9961cacb2e02c8023c4c99e22e299b8729c2b09f fixes: bz#1658045 Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
Diffstat (limited to 'rpc')
-rw-r--r--rpc/rpc-lib/src/mgmt-pmap.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/rpc/rpc-lib/src/mgmt-pmap.c b/rpc/rpc-lib/src/mgmt-pmap.c
index ccb56a479c4..15f2b61cd05 100644
--- a/rpc/rpc-lib/src/mgmt-pmap.c
+++ b/rpc/rpc-lib/src/mgmt-pmap.c
@@ -35,7 +35,9 @@ mgmt_pmap_signout_cbk(struct rpc_req *req, struct iovec *iov, int count,
0,
};
int ret = 0;
+ call_frame_t *frame = NULL;
+ frame = myframe;
if (-1 == req->rpc_status) {
rsp.op_ret = -1;
rsp.op_errno = EINVAL;
@@ -56,6 +58,10 @@ mgmt_pmap_signout_cbk(struct rpc_req *req, struct iovec *iov, int count,
goto out;
}
out:
+ if (frame) {
+ STACK_DESTROY(frame->root);
+ }
+
return 0;
}