[SCM] Samba Shared Repository - branch v3-6-test updated

Jeremy Allison jra at samba.org
Mon Nov 15 12:41:07 MST 2010


The branch, v3-6-test has been updated
       via  37f8565 s3-spoolss: fix spoolss GetPrinterData behaviour
      from  9262aaf Fix the unexpected.tdb database problem. Change nmbd to store the transaction id of packets it was requested to send via a client, and only store replies that match these ids. On the client side change clients to always attempt to ask nmbd first for name_query and node_status calls, and then fall back to doing socket calls if we can't talk to nmbd (either nmbd is not running, or we're not root and cannot open the messaging tdb's). Fix readers of unexpected.tdb to delete packets they've successfully read.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -----------------------------------------------------------------
commit 37f856500cd113ddec420ed455a8f0f75d648386
Author: David Disseldorp <ddiss at suse.de>
Date:   Fri Nov 5 15:24:22 2010 +0100

    s3-spoolss: fix spoolss GetPrinterData behaviour
    
    Windows sends spoolss GetPrinterData requests with an offered buffer
    size of zero, Model and TrayFormTable data is commonly requested in
    this way.
    
    Samba's GetPrinterData response for the above case includes the correct
    error code (WERR_MORE_DATA), however the type field is set to REG_NONE.
    This causes Windows (seen on XP and 2k3) to give up on the request.
    
    If the type field is retained (not set to REG_NONE) when responding with
    WERR_MORE_DATA, Windows reissues the GetPrinterData request with an
    increased offered buffer size.
    
    Signed-off-by: Günther Deschner <gd at samba.org>
    (cherry picked from commit 1c579318ae2d2480ee4cc998443c0d1661b39846)

-----------------------------------------------------------------------

Summary of changes:
 source3/rpc_server/srv_spoolss_nt.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index d767c18..262f4a3 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -8699,7 +8699,7 @@ WERROR _spoolss_GetPrinterDataEx(struct pipes_struct *p,
 	}
 
  done:
-	*r->out.type    = SPOOLSS_BUFFER_OK(*r->out.type, REG_NONE);
+	/* retain type when returning WERR_MORE_DATA */
 	r->out.data     = SPOOLSS_BUFFER_OK(r->out.data, r->out.data);
 
 	return SPOOLSS_BUFFER_OK(WERR_OK, WERR_MORE_DATA);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list