The branch, master has been updated
       via  3ac9cb3 For FSRVP use textual error messages instead of hex error 
codes
       via  05daf6a Add missing FSRVP_E_UNSUPPORTED_CONTEXT constant
      from  a8c0de3 s3-kerberos: remove unused kdc_name from 
create_local_private_krb5_conf_for_domain().

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 3ac9cb3d17c5252383e8f971818a426c6ad68c2d
Author: Noel Power <noel.po...@suse.com>
Date:   Thu Mar 6 11:57:45 2014 +0000

    For FSRVP use textual error messages instead of hex error codes
    
    Signed-off-by: Noel Power <noel.po...@suse.com>
    Reviewed-by: David Disseldorp <dd...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>
    
    Autobuild-User(master): Jeremy Allison <j...@samba.org>
    Autobuild-Date(master): Sat Mar  8 03:52:44 CET 2014 on sn-devel-104

commit 05daf6a25ecbe928987446f39e2d7855328195d1
Author: Noel Power <noel.po...@suse.com>
Date:   Thu Mar 6 14:02:26 2014 +0000

    Add missing FSRVP_E_UNSUPPORTED_CONTEXT constant
    
    Signed-off-by: Noel Power <noel.po...@suse.com>
    Reviewed-by: David Disseldorp <dd...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>

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

Summary of changes:
 librpc/idl/fsrvp.idl        |    1 +
 source3/rpcclient/cmd_fss.c |   52 +++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 51 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/idl/fsrvp.idl b/librpc/idl/fsrvp.idl
index d61545b..3a11b87 100644
--- a/librpc/idl/fsrvp.idl
+++ b/librpc/idl/fsrvp.idl
@@ -20,6 +20,7 @@ import "misc.idl";
        const uint32 FSRVP_E_WAIT_FAILED = 0xFFFFFFFF;
        const uint32 FSRVP_E_OBJECT_ALREADY_EXISTS = 0x8004230D;
        const uint32 FSRVP_E_OBJECT_NOT_FOUND = 0x80042308;
+       const uint32 FSRVP_E_UNSUPPORTED_CONTEXT = 0x8004231B;
        const uint32 FSRVP_E_BAD_ID = 0x80042302;       /* wire, not documented 
*/
 
        /* TODO move these to generic herror defines or COM in orpc.idl */
diff --git a/source3/rpcclient/cmd_fss.c b/source3/rpcclient/cmd_fss.c
index af194e2..238bd79 100644
--- a/source3/rpcclient/cmd_fss.c
+++ b/source3/rpcclient/cmd_fss.c
@@ -24,6 +24,40 @@
 #include "../librpc/gen_ndr/ndr_fsrvp.h"
 #include "../librpc/gen_ndr/ndr_fsrvp_c.h"
 
+static const struct {
+       uint32_t error_code;
+       const char *error_str;
+} fss_errors[] = {
+       {
+               FSRVP_E_BAD_STATE,
+               "A method call was invalid because of the state of the server."
+       },
+       {
+               FSRVP_E_SHADOW_COPY_SET_IN_PROGRESS,
+               "A call was made to either \'SetContext\' or 
\'StartShadowCopySet\' while the creation of another shadow copy set is in 
progress."
+       },
+       {
+               FSRVP_E_NOT_SUPPORTED,
+               "The file store which contains the share to be shadow copied is 
not supported by the server."
+       },
+       {
+               FSRVP_E_WAIT_TIMEOUT,
+               "The wait for a shadow copy commit or expose operation has 
timed out."
+       },
+       {
+               FSRVP_E_WAIT_FAILED,
+               "The wait for a shadow copy commit expose operation has failed."
+       },
+       {
+               FSRVP_E_OBJECT_NOT_FOUND,
+               "The specified object does not exist."
+       },
+       {
+               FSRVP_E_UNSUPPORTED_CONTEXT,
+               "The specified context value is invalid."
+       }
+};
+
 struct fss_context_map {
        uint32_t ctx_val;
        const char *ctx_str;
@@ -55,6 +89,20 @@ struct fss_context_map ctx_map[] = {
        { 0, NULL, NULL },
 };
 
+static const char *get_error_str(uint32_t code)
+{
+       static const char *default_err = "Unknown Error";
+       const char *result = default_err;
+       int i;
+       for (i = 0; i < ARRAY_SIZE(fss_errors); ++i) {
+               if (code == fss_errors[i].error_code) {
+                       result = fss_errors[i].error_str;
+                       break;
+               }
+       }
+       return result;
+};
+
 static bool map_fss_ctx_str(const char *ctx_str,
                            uint32_t *ctx_val)
 {
@@ -100,8 +148,8 @@ static NTSTATUS cmd_fss_is_path_sup(struct rpc_pipe_client 
*cli,
                          r.in.ShareName));
                return NT_STATUS_UNSUCCESSFUL;
        } else if (r.out.result) {
-               DEBUG(0, ("failed IsPathSupported response: 0x%x\n",
-                         r.out.result));
+               DEBUG(0, ("failed IsPathSupported response: 0x%x - \"%s\"\n",
+                         r.out.result, get_error_str(r.out.result)));
                return NT_STATUS_UNSUCCESSFUL;
        }
        printf("UNC %s %s shadow copy requests\n", r.in.ShareName,


-- 
Samba Shared Repository

Reply via email to