[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-test-2581-g61b4bc1

Jeremy Allison jra at samba.org
Thu Feb 28 10:23:00 GMT 2008


The branch, v3-2-test has been updated
       via  61b4bc13d0f0cf1cf4139ecdfafc78b9bfff0480 (commit)
       via  22c38c040c37d1e3922be45f22cfb4e7b733df9b (commit)
       via  b34da627053581a9584367e177566d4a2cef7e82 (commit)
       via  1d9d39525a1f1f5e43e86d919f1ced2df568f676 (commit)
       via  7bf4216644187549697caace4a2a48803b57fa5a (commit)
       via  644a3be37a6760c9e25ac1b286c7c225096e8b0d (commit)
      from  5c8b57750186ec482bbfbf608157e4f5e3e80cc0 (commit)

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


- Log -----------------------------------------------------------------
commit 61b4bc13d0f0cf1cf4139ecdfafc78b9bfff0480
Merge: 22c38c040c37d1e3922be45f22cfb4e7b733df9b 5c8b57750186ec482bbfbf608157e4f5e3e80cc0
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:22:47 2008 -0800

    Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test

commit 22c38c040c37d1e3922be45f22cfb4e7b733df9b
Merge: b34da627053581a9584367e177566d4a2cef7e82 f503d193ab4f7cd075f23dd37e83942f9245cfb5
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:22:31 2008 -0800

    Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test

commit b34da627053581a9584367e177566d4a2cef7e82
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:22:13 2008 -0800

    Fix from Guenter Kukkukk <linux at kukkukk.com> to fix listing against
    OS/2 servers. OS/2 returns eclass == ERRDOS && ecode == ERRnofiles
    for a zero entry directory listing.
    Jeremy.

commit 1d9d39525a1f1f5e43e86d919f1ced2df568f676
Merge: 7bf4216644187549697caace4a2a48803b57fa5a c0f486dc46fa9a8ace03e6d147e5fdbd4d6e2f2d
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:15:12 2008 -0800

    Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test

commit 7bf4216644187549697caace4a2a48803b57fa5a
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:13:48 2008 -0800

    Remove my change

commit 644a3be37a6760c9e25ac1b286c7c225096e8b0d
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Feb 28 02:07:06 2008 -0800

    Fix debug %lu message.
    Jeremy.

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

Summary of changes:
 source/libsmb/clierror.c |   12 ++++++++++++
 source/libsmb/clilist.c  |   16 +++++++++++++++-
 2 files changed, 27 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/libsmb/clierror.c b/source/libsmb/clierror.c
index 587abad..3674641 100644
--- a/source/libsmb/clierror.c
+++ b/source/libsmb/clierror.c
@@ -483,3 +483,15 @@ void cli_set_nt_error(struct cli_state *cli, NTSTATUS status)
 	SSVAL(cli->inbuf,smb_flg2, SVAL(cli->inbuf,smb_flg2)|FLAGS2_32_BIT_ERROR_CODES);
 	SIVAL(cli->inbuf, smb_rcls, NT_STATUS_V(status));
 }
+
+/* Reset an error. */
+
+void cli_reset_error(struct cli_state *cli)
+{
+        if (SVAL(cli->inbuf,smb_flg2) & FLAGS2_32_BIT_ERROR_CODES) {
+		SIVAL(cli->inbuf, smb_rcls, NT_STATUS_V(NT_STATUS_OK));
+	} else {
+		SCVAL(cli->inbuf,smb_rcls,0);
+		SSVAL(cli->inbuf,smb_err,0);
+	}
+}
diff --git a/source/libsmb/clilist.c b/source/libsmb/clilist.c
index e1b1615..5091845 100644
--- a/source/libsmb/clilist.c
+++ b/source/libsmb/clilist.c
@@ -328,7 +328,7 @@ int cli_list_new(struct cli_state *cli,const char *Mask,uint16 attribute,
 				       &rparam, &param_len,
 				       &rdata, &data_len) &&
                     cli_is_dos_error(cli)) {
-			/* we need to work around a Win95 bug - sometimes
+			/* We need to work around a Win95 bug - sometimes
 			   it gives ERRSRV/ERRerror temprarily */
 			uint8 eclass;
 			uint32 ecode;
@@ -337,6 +337,20 @@ int cli_list_new(struct cli_state *cli,const char *Mask,uint16 attribute,
 			SAFE_FREE(rparam);
 
 			cli_dos_error(cli, &eclass, &ecode);
+
+			/*
+			 * OS/2 might return "no more files",
+			 * which just tells us, that searchcount is zero
+			 * in this search.
+			 * Guenter Kukkukk <linux at kukkukk.com>
+			 */
+
+			if (eclass == ERRDOS && ecode == ERRnofiles) {
+				ff_searchcount = 0;
+				cli_reset_error(cli);
+				break;
+			}
+
 			if (eclass != ERRSRV || ecode != ERRerror)
 				break;
 			smb_msleep(100);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list