svn commit: samba r23197 - in branches/SAMBA_3_0_26/source: include libsmb

jerry at samba.org jerry at samba.org
Tue May 29 14:09:46 GMT 2007


Author: jerry
Date: 2007-05-29 14:09:46 +0000 (Tue, 29 May 2007)
New Revision: 23197

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=23197

Log:
merge some libsmbclient changes (name changes and formatting only)
Modified:
   branches/SAMBA_3_0_26/source/include/libsmbclient.h
   branches/SAMBA_3_0_26/source/include/nterr.h
   branches/SAMBA_3_0_26/source/libsmb/clitrans.c


Changeset:
Modified: branches/SAMBA_3_0_26/source/include/libsmbclient.h
===================================================================
--- branches/SAMBA_3_0_26/source/include/libsmbclient.h	2007-05-29 14:05:25 UTC (rev 23196)
+++ branches/SAMBA_3_0_26/source/include/libsmbclient.h	2007-05-29 14:09:46 UTC (rev 23197)
@@ -1242,14 +1242,16 @@
  */
 int smbc_chmod(const char *url, mode_t mode);
 
-/**@ingroup attribute
+/**
+ * @ingroup attribute
  * Change the last modification time on a file
  *
  * @param url       The smb url of the file or directory to change
  *                  the modification time of
- * 
- * @param tbuf      A timeval structure which contains the desired
- *                  modification time.  NOTE: Only the tv_sec field is
+ *
+ * @param tbuf      An array of two timeval structures which contains,
+ *                  respectively, the desired access and modification times.
+ *                  NOTE: Only the tv_sec field off each timeval structure is
  *                  used.  The tv_usec (microseconds) portion is ignored.
  *
  * @return          0 on success, < 0 on error with errno set:
@@ -1260,16 +1262,16 @@
 int smbc_utimes(const char *url, struct timeval *tbuf);
 
 #ifdef HAVE_UTIME_H
-/**@ingroup attribute
+/**
+ * @ingroup attribute
  * Change the last modification time on a file
  *
  * @param url       The smb url of the file or directory to change
  *                  the modification time of
- * 
- * @param utbuf     A utimebuf structure which contains the desired
- *                  modification time.  NOTE: Although the structure contains
- *                  an access time as well, the access time value is ignored.
  *
+ * @param utbuf     A pointer to a utimebuf structure which contains the
+ *                  desired access and modification times.
+ *
  * @return          0 on success, < 0 on error with errno set:
  *                  - EINVAL The client library is not properly initialized
  *                  - ENOMEM No memory was available for internal needs

Modified: branches/SAMBA_3_0_26/source/include/nterr.h
===================================================================
--- branches/SAMBA_3_0_26/source/include/nterr.h	2007-05-29 14:05:25 UTC (rev 23196)
+++ branches/SAMBA_3_0_26/source/include/nterr.h	2007-05-29 14:09:46 UTC (rev 23197)
@@ -31,7 +31,7 @@
 #define NT_STATUS_NO_MORE_ENTRIES         NT_STATUS(0x8000001a)
 
 /* Vista Status codes. */
-#define STATUS_INACCESSIBLE_SYSTEM_SHORTCUT         NT_STATUS(0x8000002d)
+#define NT_STATUS_INACCESSIBLE_SYSTEM_SHORTCUT         NT_STATUS(0x8000002d)
 
 #define STATUS_MORE_ENTRIES               NT_STATUS(0x0105)
 #define STATUS_SOME_UNMAPPED              NT_STATUS(0x0107)

Modified: branches/SAMBA_3_0_26/source/libsmb/clitrans.c
===================================================================
--- branches/SAMBA_3_0_26/source/libsmb/clitrans.c	2007-05-29 14:05:25 UTC (rev 23196)
+++ branches/SAMBA_3_0_26/source/libsmb/clitrans.c	2007-05-29 14:09:46 UTC (rev 23197)
@@ -194,13 +194,22 @@
 	 * to a trans call. This is not an error and should not
 	 * be treated as such. Note that STATUS_NO_MORE_FILES is
 	 * returned when a trans2 findfirst/next finishes.
+	 * When setting up an encrypted transport we can also
+	 * see NT_STATUS_MORE_PROCESSING_REQUIRED here.
+         *
+         * Vista returns NT_STATUS_INACCESSIBLE_SYSTEM_SHORTCUT if the folder
+         * "<share>/Users/All Users" is enumerated.  This is a special pseudo
+         * folder, and the response does not have parameters (nor a parameter
+         * length).
 	 */
 	status = cli_nt_error(cli);
 	
-	if (NT_STATUS_IS_ERR(status) ||
-            NT_STATUS_EQUAL(status,STATUS_NO_MORE_FILES) ||
-            NT_STATUS_EQUAL(status,STATUS_INACCESSIBLE_SYSTEM_SHORTCUT)) {
-		goto out;
+	if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
+		if (NT_STATUS_IS_ERR(status) ||
+                    NT_STATUS_EQUAL(status,STATUS_NO_MORE_FILES) ||
+                    NT_STATUS_EQUAL(status,NT_STATUS_INACCESSIBLE_SYSTEM_SHORTCUT)) {
+			goto out;
+		}
 	}
 
 	/* parse out the lengths */
@@ -305,8 +314,10 @@
 				 CVAL(cli->inbuf,smb_com)));
 			goto out;
 		}
-		if (NT_STATUS_IS_ERR(cli_nt_error(cli))) {
-			goto out;
+		if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
+			if (NT_STATUS_IS_ERR(cli_nt_error(cli))) {
+				goto out;
+			}
 		}
 
 		/* parse out the total lengths again - they can shrink! */



More information about the samba-cvs mailing list