Add the "backup" toggle command to smbclient. In order for this to be
authorJeremy Allison <jra@samba.org>
Thu, 1 Dec 2011 21:47:12 +0000 (13:47 -0800)
committerJeremy Allison <jra@samba.org>
Thu, 1 Dec 2011 23:23:13 +0000 (00:23 +0100)
really useful we need to change to using NTCreateX opens by default in
cli_open() and fall back to old OpenX calls instead of doing it the
other way around.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Dec  2 00:23:13 CET 2011 on sn-devel-104

docs-xml/manpages-3/smbclient.1.xml
source3/client/client.c

index fe1e011b030c1b83e7f7866684f08459070d3d06..c79d9dfbf8771e2fb5c71e0fcfa3b4be11dba7f0 100644 (file)
                </para></listitem>
                </varlistentry>
 
+               <varlistentry>
+               <term>backup</term>
+               <listitem><para>Toggle the state of the "backup intent" flag
+               sent to the server on directory listings and file opens. If
+               the "backup intent" flag is true, the server will try and
+               bypass some file system checks if the user has been granted
+               SE_BACKUP or SE_RESTORE privilages. This state is useful when
+               performing a backup or restore operation.
+               </para></listitem>
+               </varlistentry>
+
                <varlistentry>
                <term>blocksize &lt;number&gt;</term>
                <listitem><para>Sets the blocksize parameter for a tar operation. The default is 20.
index 22f861bb0289679af3faa26476933a1f7360dbb0..47d44705d2d80d9758703168e68fad53af9e2727 100644 (file)
@@ -88,6 +88,7 @@ static bool prompt = true;
 static bool recurse = false;
 static bool showacls = false;
 bool lowercase = false;
+static bool backup_intent = false;
 
 static struct sockaddr_storage dest_ss;
 static char dest_ss_str[INET6_ADDRSTRLEN];
@@ -3922,6 +3923,18 @@ static int cmd_archive(void)
        return 0;
 }
 
+/****************************************************************************
+ Toggle the backup_intent state.
+****************************************************************************/
+
+static int cmd_backup(void)
+{
+       backup_intent = !backup_intent;
+       cli_set_backup_intent(cli, backup_intent);
+       DEBUG(2,("backup intent is now %s\n",backup_intent?"on":"off"));
+       return 1;
+}
+
 /****************************************************************************
  Toggle the lowercaseflag.
 ****************************************************************************/
@@ -4519,6 +4532,7 @@ static struct {
    {COMPL_NONE,COMPL_NONE}},
   {"altname",cmd_altname,"<file> show alt name",{COMPL_NONE,COMPL_NONE}},
   {"archive",cmd_archive,"<level>\n0=ignore archive bit\n1=only get archive files\n2=only get archive files and reset archive bit\n3=get all files and reset archive bit",{COMPL_NONE,COMPL_NONE}},
+  {"backup",cmd_backup,"toggle backup intent state",{COMPL_NONE,COMPL_NONE}},  
   {"blocksize",cmd_block,"blocksize <number> (default 20)",{COMPL_NONE,COMPL_NONE}},
   {"cancel",cmd_cancel,"<jobid> cancel a print queue entry",{COMPL_NONE,COMPL_NONE}},
   {"case_sensitive",cmd_setcase,"toggle the case sensitive flag to server",{COMPL_NONE,COMPL_NONE}},