summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2008-06-28 16:09:34 +0200
committerVolker Lendecke <vl@samba.org>2008-06-28 16:10:50 +0200
commit7b3541f39bda595631188787fca989365478ef33 (patch)
tree669fff0203dfe6e66c2e78911a0cbf9c904d5adb
parent893e3522fc9a9cb1ef677ce1232525f51a8cc95e (diff)
downloadsamba-7b3541f39bda595631188787fca989365478ef33.tar.gz
samba-7b3541f39bda595631188787fca989365478ef33.tar.bz2
samba-7b3541f39bda595631188787fca989365478ef33.zip
Fix a file descriptor leak in add_port_hook
This was probably cut&paste from add_printer_hook which further down has the unconditional close(fd). In add_port_hook() we're not interested in the output of 'addport command', so don't create the out fd. (cherry picked from commit 0c5ca2127ac6e3c71e369242376d27429c3aee5e) (This used to be commit 9fe09398b79ae7c5e78182112a8cd2c9b5f99ad3)
-rw-r--r--source3/rpc_server/srv_spoolss_nt.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index cb784a6539..72ceb1d517 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -6155,7 +6155,6 @@ WERROR add_port_hook(TALLOC_CTX *ctx, NT_USER_TOKEN *token, const char *portname
char *cmd = lp_addport_cmd();
char *command = NULL;
int ret;
- int fd;
SE_PRIV se_printop = SE_PRINT_OPERATOR;
bool is_print_op = False;
@@ -6179,7 +6178,7 @@ WERROR add_port_hook(TALLOC_CTX *ctx, NT_USER_TOKEN *token, const char *portname
if ( is_print_op )
become_root();
- ret = smbrun(command, &fd);
+ ret = smbrun(command, NULL);
if ( is_print_op )
unbecome_root();
@@ -6191,8 +6190,6 @@ WERROR add_port_hook(TALLOC_CTX *ctx, NT_USER_TOKEN *token, const char *portname
TALLOC_FREE(command);
if ( ret != 0 ) {
- if (fd != -1)
- close(fd);
return WERR_ACCESS_DENIED;
}