s3:libads: Add net ads leave keep-account option
[bbaumbach/samba-autobuild/.git] / source3 / utils / net.h
index 765b61bd564d118fa4d0e7bc34c139ff241fdac3..5e70fd3aafadfedb1cf1557434d49847d43cc0c7 100644 (file)
  * include
  */
 
-#include "lib/netapi/netapi.h"
-#include "libnet/libnet.h"
-#include "localedir.h"
+struct cli_state;
 
+#include "../librpc/gen_ndr/lsa.h"
+
+#include "intl.h"
 #ifdef HAVE_LIBINTL_H
 #include <libintl.h>
 #endif
@@ -70,15 +71,28 @@ struct net_context {
        const char *opt_exclude;
        const char *opt_destination;
        int opt_testmode;
-       bool opt_kerberos;
+       int opt_kerberos;
        int opt_force_full_repl;
+       int opt_ccache;
        int opt_single_obj_repl;
        int opt_clean_old_entries;
+       const char *opt_db;
+       int opt_lock;
+       int opt_auto;
+       int opt_repair;
+       int opt_reg_version;
+       const char *opt_output;
+       int opt_wipe;
+       const char *opt_precheck;
+       int opt_no_dns_updates;
+       int opt_keep_account;
 
        int opt_have_ip;
        struct sockaddr_storage opt_dest_ip;
        bool smb_encrypt;
        struct libnetapi_ctx *netapi_ctx;
+       struct messaging_context *msg_ctx;
+       struct netlogon_creds_cli_context *netlogon_creds;
 
        bool display_usage;
        void *private_data;
@@ -108,7 +122,7 @@ struct functable {
 };
 
 typedef NTSTATUS (*rpc_command_fn)(struct net_context *c,
-                               const DOM_SID *,
+                               const struct dom_sid *,
                                const char *,
                                struct cli_state *cli,
                                struct rpc_pipe_client *,
@@ -121,14 +135,14 @@ typedef struct copy_clistate {
        struct cli_state *cli_share_src;
        struct cli_state *cli_share_dst;
        char *cwd;
-       uint16 attribute;
+       uint16_t attribute;
        struct net_context *c;
 }copy_clistate;
 
 struct rpc_sh_ctx {
        struct cli_state *cli;
 
-       DOM_SID *domain_sid;
+       struct dom_sid *domain_sid;
        const char *domain_name;
 
        const char *whoami;
@@ -142,7 +156,7 @@ struct rpc_sh_cmd {
        struct rpc_sh_cmd *(*sub)(struct net_context *c,
                                  TALLOC_CTX *mem_ctx,
                                  struct rpc_sh_ctx *ctx);
-       const struct ndr_syntax_id *interface;
+       const struct ndr_interface_table *table;
        NTSTATUS (*fn)(struct net_context *c, TALLOC_CTX *mem_ctx,
                       struct rpc_sh_ctx *ctx,
                       struct rpc_pipe_client *pipe_hnd,
@@ -171,6 +185,7 @@ enum netdom_domain_t { ND_TYPE_NT4, ND_TYPE_AD };
 #define NET_FLAGS_SIGN                         0x00000040      /* sign RPC connection */
 #define NET_FLAGS_SEAL                         0x00000080      /* seal RPC connection */
 #define NET_FLAGS_TCP                          0x00000100      /* use ncacn_ip_tcp */
+#define NET_FLAGS_EXPECT_FALLBACK              0x00000200      /* the caller will fallback */
 
 /* net share operation modes */
 #define NET_MODE_SHARE_MIGRATE 1