The branch, master has been updated via 2172a14 s3: in sys_popen(), add a debug message for failed fork via c1b703f s3: in sys_popen(), add a debug message for failed extract_args() via 6c7df39 s3: in sys_popen(), untangle function call from result check via 1d4fe78 s3: in sys_popen(), untangle assigment from check and add a debug message in failure case via d43c411 s3: in sys_popen(), improve call to pipe and report error to debug via 243157a s3: in sys_popen(), validate input before opening the pipe. via e7d385c s3: in sys_popen(), fix a debug message via b1966f3 s3:smbd: in sys_disk_free(), improve a debug message via cc99189 s3:smbd: in sys_disk_free(), improve a debug message via 04ac781 s3:smbd: in sys_disk_free(), fix line length and indentation of debug statement via a56d2de s3:smbd: in sys_disk_free(), fix a debug message from 3390d99 s3-winbind: DON'T PANIC if we couldn't find the domain.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 2172a1448e8798b4df50d5874b38a252d15b3ad0 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:25:42 2012 +0200 s3: in sys_popen(), add a debug message for failed fork Autobuild-User(master): Michael Adam <ob...@samba.org> Autobuild-Date(master): Tue Sep 4 22:17:30 CEST 2012 on sn-devel-104 commit c1b703f95cb35798c4948aa01b9cb75184c29522 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:24:46 2012 +0200 s3: in sys_popen(), add a debug message for failed extract_args() commit 6c7df39feeaeebeca88562e575aa0c803559b0d7 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:23:01 2012 +0200 s3: in sys_popen(), untangle function call from result check commit 1d4fe78db928c5f68aa805d1f5dc6a941fbb10fc Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:19:46 2012 +0200 s3: in sys_popen(), untangle assigment from check and add a debug message in failure case commit d43c411fb19707f1b57177e9a3300573018cc849 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:17:37 2012 +0200 s3: in sys_popen(), improve call to pipe and report error to debug commit 243157ae345f32b06f9c1a223139891339d0ad82 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:15:42 2012 +0200 s3: in sys_popen(), validate input before opening the pipe. commit e7d385c366f04586c6e1490ea0a8cd4b1225f552 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 14:21:37 2012 +0200 s3: in sys_popen(), fix a debug message commit b1966f31188abcadabb48090cccfccaae150445e Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:02:40 2012 +0200 s3:smbd: in sys_disk_free(), improve a debug message commit cc99189de1330074d10012578a1729d7be1e41f5 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 15:01:18 2012 +0200 s3:smbd: in sys_disk_free(), improve a debug message commit 04ac7816262dcb69dd88fe0409c5bd03ab894f56 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 14:50:53 2012 +0200 s3:smbd: in sys_disk_free(), fix line length and indentation of debug statement commit a56d2dea06aa089330c8d7df32c124abf1fab851 Author: Michael Adam <ob...@samba.org> Date: Tue Sep 4 14:50:15 2012 +0200 s3:smbd: in sys_disk_free(), fix a debug message ----------------------------------------------------------------------- Summary of changes: source3/lib/system.c | 27 +++++++++++++++++++-------- source3/smbd/dfree.c | 7 ++++--- 2 files changed, 23 insertions(+), 11 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/lib/system.c b/source3/lib/system.c index 2881fd6..d69f1c6 100644 --- a/source3/lib/system.c +++ b/source3/lib/system.c @@ -1161,32 +1161,43 @@ int sys_popen(const char *command) char **argl = NULL; int ret; - if (pipe(pipe_fds) < 0) + if (!*command) { + errno = EINVAL; + return -1; + } + + ret = pipe(pipe_fds); + if (ret < 0) { + DEBUG(0, ("sys_popen: error opening pipe: %s\n", + strerror(errno))); return -1; + } parent_end = pipe_fds[0]; child_end = pipe_fds[1]; - if (!*command) { - errno = EINVAL; + entry = SMB_MALLOC_P(popen_list); + if (entry == NULL) { + DEBUG(0, ("sys_popen: malloc failed\n")); goto err_exit; } - if((entry = SMB_MALLOC_P(popen_list)) == NULL) - goto err_exit; - ZERO_STRUCTP(entry); /* * Extract the command and args into a NULL terminated array. */ - if(!(argl = extract_args(NULL, command))) + argl = extract_args(NULL, command); + if (argl == NULL) { + DEBUG(0, ("sys_popen: extract_args() failed: %s\n", strerror(errno))); goto err_exit; + } entry->child_pid = fork(); if (entry->child_pid == -1) { + DEBUG(0, ("sys_popen: fork failed: %s\n", strerror(errno))); goto err_exit; } @@ -1216,7 +1227,7 @@ int sys_popen(const char *command) ret = execv(argl[0], argl); if (ret == -1) { - DEBUG(0, ("sys_popen: ERROR executing dfree command " + DEBUG(0, ("sys_popen: ERROR executing command " "'%s': %s\n", command, strerror(errno))); } _exit (127); diff --git a/source3/smbd/dfree.c b/source3/smbd/dfree.c index cb80e18..e6a0af2 100644 --- a/source3/smbd/dfree.c +++ b/source3/smbd/dfree.c @@ -95,7 +95,7 @@ uint64_t sys_disk_free(connection_struct *conn, const char *path, bool small_que return (uint64_t)-1; } - DEBUG (3, ("disk_free: Running command %s\n", syscmd)); + DEBUG (3, ("disk_free: Running command '%s'\n", syscmd)); lines = file_lines_pload(syscmd, NULL); if (lines) { @@ -123,8 +123,9 @@ uint64_t sys_disk_free(connection_struct *conn, const char *path, bool small_que if (!*dfree) *dfree = 1024; } else { - DEBUG (0, ("disk_free: sys_popen() failed for command %s. Error was : %s\n", - syscmd, strerror(errno) )); + DEBUG (0, ("disk_free: file_lines_load() failed for " + "command '%s'. Error was : %s\n", + syscmd, strerror(errno) )); if (sys_fsusage(path, dfree, dsize) != 0) { DEBUG (0, ("disk_free: sys_fsusage() failed. Error was : %s\n", strerror(errno) )); -- Samba Shared Repository