summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source/include/rpc_lsa.h10
-rw-r--r--source/include/rpc_samr.h2
-rw-r--r--source/include/rpc_samr_old.h8
-rw-r--r--source/include/rpcclient.h145
4 files changed, 22 insertions, 143 deletions
diff --git a/source/include/rpc_lsa.h b/source/include/rpc_lsa.h
index 53bb605cac8..90c5786a386 100644
--- a/source/include/rpc_lsa.h
+++ b/source/include/rpc_lsa.h
@@ -190,12 +190,12 @@ typedef struct lsa_r_enum_trust_dom_info
uint32 ptr_enum_domains; /* buffer pointer to num domains */
/* this lot is only added if ptr_enum_domains is non-NULL */
- uint32 num_domains2; /* number of domains */
- UNIHDR2 hdr_domain_name;
- UNISTR2 uni_domain_name;
- DOM_SID2 other_domain_sid;
+ uint32 num_domains2; /* number of domains */
+ UNIHDR2 *hdr_domain_name;
+ UNISTR2 *uni_domain_name;
+ DOM_SID2 *domain_sid;
- uint32 status; /* return code */
+ uint32 status; /* return code */
} LSA_R_ENUM_TRUST_DOM;
diff --git a/source/include/rpc_samr.h b/source/include/rpc_samr.h
index c769cf43817..1f65470f7a0 100644
--- a/source/include/rpc_samr.h
+++ b/source/include/rpc_samr.h
@@ -552,7 +552,7 @@ SAMR_Q_OPEN_DOMAIN - unknown_0 values seen associated with SIDs:
/* SAMR_Q_OPEN_DOMAIN */
typedef struct q_samr_open_domain_info
{
- POLICY_HND connect_pol; /* policy handle */
+ POLICY_HND pol; /* policy handle */
uint32 flags; /* 0x2000 0000; 0x0000 0211; 0x0000 0280; 0x0000 0200 - flags? */
DOM_SID2 dom_sid; /* domain SID */
diff --git a/source/include/rpc_samr_old.h b/source/include/rpc_samr_old.h
index 17af1befdaa..b41dd0986e8 100644
--- a/source/include/rpc_samr_old.h
+++ b/source/include/rpc_samr_old.h
@@ -463,8 +463,8 @@ SAMR_Q_OPEN_DOMAIN - unknown_0 values seen associated with SIDs:
/* SAMR_Q_OPEN_DOMAIN */
typedef struct q_samr_open_domain_info
{
- POLICY_HND connect_pol; /* policy handle */
- uint32 rid; /* 0x2000 0000; 0x0000 0211; 0x0000 0280; 0x0000 0200 - a RID? */
+ POLICY_HND pol; /* policy handle */
+ uint32 access_mask;
DOM_SID2 dom_sid; /* domain SID */
} SAMR_Q_OPEN_DOMAIN;
@@ -992,7 +992,7 @@ typedef struct r_samr_lookup_rids_info
typedef struct q_samr_open_user_info
{
POLICY_HND domain_pol; /* policy handle */
- uint32 unknown_0; /* 32 bit unknown - 0x02011b */
+ uint32 access_mask;
uint32 user_rid; /* user RID */
} SAMR_Q_OPEN_USER;
@@ -1097,7 +1097,7 @@ typedef struct q_samr_connect_info
uint32 ptr_srv_name; /* pointer (to server name?) */
UNISTR2 uni_srv_name; /* unicode server name starting with '\\' */
- uint32 unknown_0; /* 32 bit unknown */
+ uint32 access_mask;
} SAMR_Q_CONNECT;
diff --git a/source/include/rpcclient.h b/source/include/rpcclient.h
index 200d590c338..f2aa57b2dfe 100644
--- a/source/include/rpcclient.h
+++ b/source/include/rpcclient.h
@@ -1,153 +1,32 @@
-/*
+/*
Unix SMB/Netbios implementation.
- Version 1.9.
- SMB parameters and setup
- Copyright (C) Andrew Tridgell 1992-1998
- Copyright (C) Luke Kenneth Casson Leighton 1996-1998
- Copyright (C) Jeremy Allison 1998
+ Version 2.2
+ RPC pipe client
+
+ Copyright (C) Tim Potter 2000
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
-
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-#ifndef _RPCCLIENT_H
-#define _RPCCLIENT_H
-
-#define report fprintf
-
-struct tar_client_info
-{
- int blocksize;
- BOOL inc;
- BOOL reset;
- BOOL excl;
- char type;
- int attrib;
- char **cliplist;
- int clipn;
- int tp;
- int num_files;
- int buf_size;
- int bytes_written;
- char *buf;
- int handle;
- int print_mode;
- char *file_mode;
-};
-
-struct nt_client_info
-{
- /************* \PIPE\NETLOGON stuff ******************/
-
- fstring mach_acct;
-
- uint8 sess_key[16];
- DOM_CRED clnt_cred;
- DOM_CRED rtn_cred;
-
- NET_ID_INFO_CTR ctr;
- NET_USER_INFO_3 user_info3;
-
- /************** \PIPE\winreg stuff ********************/
-
- POLICY_HND reg_pol_connect;
-
- /************** \PIPE\lsarpc stuff ********************/
-
- POLICY_HND lsa_info_pol;
-
- /* domain member */
- DOM_SID level3_sid;
- DOM_SID level5_sid;
-
- /* domain controller */
- fstring level3_dom;
- fstring level5_dom;
-
- /************** \PIPE\samr stuff ********************/
+#ifndef RPCCLIENT_H
+#define RPCCLIENT_H
- POLICY_HND samr_pol_connect;
- POLICY_HND samr_pol_open_domain;
- POLICY_HND samr_pol_open_user;
-
- struct acct_info *sam;
- int num_sam_entries;
-};
-
-/* struct client_info
-{
- struct in_addr dest_ip;
- fstring dest_host;
- fstring query_host;
- uint8 name_type;
-
- fstring myhostname;
- fstring mach_acct;
-
- pstring cur_dir;
- pstring base_dir;
- pstring file_sel;
-
- fstring service;
- fstring share;
- fstring svc_type;
-
- time_t newer_than;
- int archive_level;
- int dir_total;
- int put_total_time_ms;
- int put_total_size;
- int get_total_time_ms;
- int get_total_size;
- int print_mode;
- BOOL translation;
- BOOL recurse_dir;
- BOOL prompt;
- BOOL lowercase;
- BOOL abort_mget;
-
- struct tar_client_info tar;
- struct nt_client_info dom;
-}; */
-
-typedef struct client_info
-{
- struct in_addr dest_ip;
- fstring dest_host;
-
- fstring myhostname;
-
- struct tar_client_info tar;
- struct nt_client_info dom;
-
- BOOL reuse;
- BOOL show_prompt;
-} CLIENT_INFO;
-
-
-enum action_type {ACTION_HEADER, ACTION_ENUMERATE, ACTION_FOOTER};
-
-/****************************************************************************
- This defines the commands supported by this client
- ****************************************************************************/
-struct command_set
-{
+struct cmd_set {
char *name;
- uint32 (*fn)(struct client_info*, int, char*[]);
+ uint32 (*fn)(int argc, char **argv);
char *description;
- char* (*compl_args[2])(char*, int);
};
-
-#endif /* _RPCCLIENT_H */
+#endif /* RPCCLIENT_H */