The Samba-Bugzilla – Attachment 9357 Details for
Bug 10241
leaked talloc_stackframes in s3 rpc code
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch for master
stackframe.patch (text/plain), 4.58 KB, created by
Gregor Beck (550 Unknown user)
on 2013-11-01 08:39:58 UTC
(
hide
)
Description:
patch for master
Filename:
MIME Type:
Creator:
Gregor Beck (550 Unknown user)
Created:
2013-11-01 08:39:58 UTC
Size:
4.58 KB
patch
obsolete
>From 02277f08eeb483757f2d9bc195055742d02b407b Mon Sep 17 00:00:00 2001 >From: Gregor Beck <gbeck@sernet.de> >Date: Fri, 1 Nov 2013 08:54:27 +0100 >Subject: [PATCH 1/3] s3:rpc_client: fix a leaked talloc_stackframe > >BUG: https://bugzilla.samba.org/show_bug.cgi?id=10241 > >Signed-off-by: Gregor Beck <gbeck@sernet.de> >--- > source3/rpc_client/cli_pipe.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > >diff --git a/source3/rpc_client/cli_pipe.c b/source3/rpc_client/cli_pipe.c >index 48ed92c..1342354 100644 >--- a/source3/rpc_client/cli_pipe.c >+++ b/source3/rpc_client/cli_pipe.c >@@ -2301,7 +2301,8 @@ static NTSTATUS rpc_pipe_get_tcp_port(const char *host, > if (ndr_syntax_id_equal(&table->syntax_id, > &ndr_table_epmapper.syntax_id)) { > *pport = 135; >- return NT_STATUS_OK; >+ status = NT_STATUS_OK; >+ goto done; > } > > /* open the connection to the endpoint mapper */ >-- >1.7.9.5 > > >From 055626b5fb4f991767b2348d880da9bab8db308e Mon Sep 17 00:00:00 2001 >From: Gregor Beck <gbeck@sernet.de> >Date: Fri, 1 Nov 2013 08:59:53 +0100 >Subject: [PATCH 2/3] s3:rpcclient: fix a leaked talloc_stackframe in > cmd_epmapper > >BUG: https://bugzilla.samba.org/show_bug.cgi?id=10241 > >Signed-off-by: Gregor Beck <gbeck@sernet.de> >--- > source3/rpcclient/cmd_epmapper.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > >diff --git a/source3/rpcclient/cmd_epmapper.c b/source3/rpcclient/cmd_epmapper.c >index fc844f9..68fa701 100644 >--- a/source3/rpcclient/cmd_epmapper.c >+++ b/source3/rpcclient/cmd_epmapper.c >@@ -51,7 +51,7 @@ static NTSTATUS cmd_epmapper_map(struct rpc_pipe_client *p, > if (!NT_STATUS_IS_OK(status)) { > d_fprintf(stderr, "dcerpc_binding_build_tower returned %s\n", > nt_errstr(status)); >- return status; >+ goto done; > } > > ZERO_STRUCT(towers); >@@ -64,13 +64,14 @@ static NTSTATUS cmd_epmapper_map(struct rpc_pipe_client *p, > if (!NT_STATUS_IS_OK(status)) { > d_fprintf(stderr, "dcerpc_epm_Map returned %s\n", > nt_errstr(status)); >- return status; >+ goto done; > } > > if (result != EPMAPPER_STATUS_OK) { > d_fprintf(stderr, "epm_Map returned %u (0x%08X)\n", > result, result); >- return NT_STATUS_UNSUCCESSFUL; >+ status = NT_STATUS_UNSUCCESSFUL; >+ goto done; > } > > d_printf("num_tower[%u]\n", num_towers); >@@ -91,8 +92,9 @@ static NTSTATUS cmd_epmapper_map(struct rpc_pipe_client *p, > > d_printf("tower[%u] %s\n", i, dcerpc_binding_string(tmp_ctx, binding)); > } >- >- return NT_STATUS_OK; >+done: >+ TALLOC_FREE(tmp_ctx); >+ return status; > } > > static NTSTATUS cmd_epmapper_lookup(struct rpc_pipe_client *p, >-- >1.7.9.5 > > >From b5308b852125fc502df79f8ff6dd539768910937 Mon Sep 17 00:00:00 2001 >From: Gregor Beck <gbeck@sernet.de> >Date: Fri, 1 Nov 2013 09:02:48 +0100 >Subject: [PATCH 3/3] rpc_server3: rpc_create_tcpip_sockets() may leak > talloc_stackframe on failure > >BUG: https://bugzilla.samba.org/show_bug.cgi?id=10241 > >Signed-off-by: Gregor Beck <gbeck@sernet.de> >--- > source3/rpc_server/rpc_sock_helper.c | 15 +++++++++------ > 1 file changed, 9 insertions(+), 6 deletions(-) > >diff --git a/source3/rpc_server/rpc_sock_helper.c b/source3/rpc_server/rpc_sock_helper.c >index 650dd9d..8f371b8 100644 >--- a/source3/rpc_server/rpc_sock_helper.c >+++ b/source3/rpc_server/rpc_sock_helper.c >@@ -142,7 +142,7 @@ NTSTATUS rpc_create_tcpip_sockets(const struct ndr_interface_table *iface, > p); > if (!NT_STATUS_IS_OK(status)) { > close(fd); >- return status; >+ goto done; > } > } > } >@@ -201,13 +201,15 @@ NTSTATUS rpc_setup_tcpip_sockets(struct tevent_context *ev_ctx, > sizeof(struct sockaddr_storage), > &bind_addr); > if (rc < 0) { >- return NT_STATUS_NO_MEMORY; >+ status = NT_STATUS_NO_MEMORY; >+ goto done; > } > > addr = tsocket_address_inet_addr_string(bind_addr, > tmp_ctx); > if (addr == NULL) { >- return NT_STATUS_NO_MEMORY; >+ status = NT_STATUS_NO_MEMORY; >+ goto done; > } > > status = dcerpc_binding_vector_add_port(iface, >@@ -215,7 +217,7 @@ NTSTATUS rpc_setup_tcpip_sockets(struct tevent_context *ev_ctx, > addr, > p); > if (!NT_STATUS_IS_OK(status)) { >- return status; >+ goto done; > } > } > } >@@ -247,7 +249,8 @@ NTSTATUS rpc_setup_tcpip_sockets(struct tevent_context *ev_ctx, > &ss, > port); > if (p == 0) { >- return NT_STATUS_UNSUCCESSFUL; >+ status = NT_STATUS_UNSUCCESSFUL; >+ goto done; > } > > if (bvec != NULL) { >@@ -256,7 +259,7 @@ NTSTATUS rpc_setup_tcpip_sockets(struct tevent_context *ev_ctx, > sock_tok, > p); > if (!NT_STATUS_IS_OK(status)) { >- return status; >+ goto done; > } > } > } >-- >1.7.9.5 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 10241
: 9357