The branch, v3-devel has been updated via 1f38b9963c4ec0d73da496a72ba4ee74d8d581c9 (commit) via c65726d418601cdc86202c0371615e4f7f3d843c (commit) via ecf2b906f476e4a764d0e53eed84b9b75a2062c0 (commit) via 78f009b7ef1f1d63b21df9ba6da7fcca01c12109 (commit) from 34a32db9060e7b60455774f923f61b7367ee3fcf (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-devel - Log ----------------------------------------------------------------- commit 1f38b9963c4ec0d73da496a72ba4ee74d8d581c9 Author: Jeremy Allison <[EMAIL PROTECTED]> Date: Wed Aug 13 16:52:53 2008 -0700 Fix coverity CID: 594. Resource leak on error path. Jeremy. commit c65726d418601cdc86202c0371615e4f7f3d843c Author: Jeremy Allison <[EMAIL PROTECTED]> Date: Wed Aug 13 16:45:34 2008 -0700 Fix for bug #5688 from SATOH Fumiyasu <[EMAIL PROTECTED]>. LPQ process is orphaned if socket address parameter is invalid. If the "socket address" parameter is a null string that is an invalid value for Samba 3.2 but valid for Samba 3.0. Jeremy. commit ecf2b906f476e4a764d0e53eed84b9b75a2062c0 Author: Jeremy Allison <[EMAIL PROTECTED]> Date: Wed Aug 13 15:46:35 2008 -0700 Fix for bug #5617, reported and patched by Bartosz Antosik [EMAIL PROTECTED] xp/2003 explorer freezes browsing shares on samba ipv6 hosts. Caused by missing reply packet to SMB printclose packet. Jeremy commit 78f009b7ef1f1d63b21df9ba6da7fcca01c12109 Author: Jim McDonough <[EMAIL PROTECTED]> Date: Wed Aug 13 18:03:51 2008 -0400 Prevent NT_STATUS 0xF1000000 errors from appearing when dos errors are used and there is no error. It should be mapped directly to NT_STATUS_OK. smbclient to older servers didn't work. ----------------------------------------------------------------------- Summary of changes: source/libsmb/async_smb.c | 6 ++++++ source/rpc_server/srv_spoolss_nt.c | 6 ++++-- source/smbd/reply.c | 2 ++ source/smbd/server.c | 3 ++- 4 files changed, 14 insertions(+), 3 deletions(-) Changeset truncated at 500 lines: diff --git a/source/libsmb/async_smb.c b/source/libsmb/async_smb.c index 04c22a9..58bba2b 100644 --- a/source/libsmb/async_smb.c +++ b/source/libsmb/async_smb.c @@ -31,6 +31,12 @@ NTSTATUS cli_pull_error(char *buf) return NT_STATUS(IVAL(buf, smb_rcls)); } + /* if the client uses dos errors, but there is no error, + we should return no error here, otherwise it looks + like an unknown bad NT_STATUS. jmcd */ + if (CVAL(buf, smb_rcls) == 0) + return NT_STATUS_OK; + return NT_STATUS_DOS(CVAL(buf, smb_rcls), SVAL(buf,smb_err)); } diff --git a/source/rpc_server/srv_spoolss_nt.c b/source/rpc_server/srv_spoolss_nt.c index f802400..635898a 100644 --- a/source/rpc_server/srv_spoolss_nt.c +++ b/source/rpc_server/srv_spoolss_nt.c @@ -5037,8 +5037,10 @@ static WERROR getprinter_level_7(Printer_entry *print_hnd, int snum, RPC_BUFFER if((printer=SMB_MALLOC_P(PRINTER_INFO_7))==NULL) return WERR_NOMEM; - if (!construct_printer_info_7(print_hnd, printer, snum)) - return WERR_NOMEM; + if (!construct_printer_info_7(print_hnd, printer, snum)) { + result = WERR_NOMEM; + goto out; + } /* check the required size. */ *needed += spoolss_size_printer_info_7(printer); diff --git a/source/smbd/reply.c b/source/smbd/reply.c index d32d998..b3d691f 100644 --- a/source/smbd/reply.c +++ b/source/smbd/reply.c @@ -4702,6 +4702,8 @@ void reply_printclose(struct smb_request *req) return; } + reply_outbuf(req, 0, 0); + END_PROFILE(SMBsplclose); return; } diff --git a/source/smbd/server.c b/source/smbd/server.c index 0d855f8..53116f3 100644 --- a/source/smbd/server.c +++ b/source/smbd/server.c @@ -469,7 +469,8 @@ static bool open_sockets_smbd(bool is_daemon, bool interactive, const char *smb_ char *sock_tok; const char *sock_ptr; - if (strequal(sock_addr, "0.0.0.0") || + if (sock_addr[0] == '\0' || + strequal(sock_addr, "0.0.0.0") || strequal(sock_addr, "::")) { #if HAVE_IPV6 sock_addr = "::,0.0.0.0"; -- Samba Shared Repository