changed syntax of registry commands so keys can start with HKLM or HKU.
[samba.git] / source3 / include / rpcclient.h
1 /*
2    Unix SMB/Netbios implementation.
3    Version 1.9.
4    SMB parameters and setup
5    Copyright (C) Andrew Tridgell 1992-1998
6    Copyright (C) Luke Kenneth Casson Leighton 1996-1998
7    Copyright (C) Jeremy Allison 1998
8
9    This program is free software; you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation; either version 2 of the License, or
12    (at your option) any later version.
13
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18
19    You should have received a copy of the GNU General Public License
20    along with this program; if not, write to the Free Software
21    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 */
23
24 #ifndef _RPCCLIENT_H
25 #define _RPCCLIENT_H
26
27 struct tar_client_info
28 {
29     int blocksize;
30     BOOL inc;
31     BOOL reset;
32     BOOL excl;
33     char type;
34     int attrib;
35     char **cliplist;
36     int clipn;
37     int tp;
38     int num_files;
39     int buf_size;
40     int bytes_written;
41     char *buf;
42     int handle;
43     int print_mode;
44     char *file_mode;
45 };
46
47 struct nt_client_info
48 {
49     /************* \PIPE\NETLOGON stuff ******************/
50
51     fstring mach_acct;
52
53     uint8 sess_key[16];
54     DOM_CRED clnt_cred;
55     DOM_CRED rtn_cred;
56
57     NET_ID_INFO_CTR ctr;
58     NET_USER_INFO_3 user_info3;
59
60     /************** \PIPE\winreg stuff ********************/
61
62     POLICY_HND reg_pol_connect;
63
64     /************** \PIPE\lsarpc stuff ********************/
65
66     POLICY_HND lsa_info_pol;
67
68     /* domain member */
69     DOM_SID level3_sid;
70     DOM_SID level5_sid;
71
72     /* domain controller */
73     fstring level3_dom;
74     fstring level5_dom;
75
76     /************** \PIPE\samr stuff  ********************/
77
78     POLICY_HND samr_pol_connect;
79     POLICY_HND samr_pol_open_domain;
80     POLICY_HND samr_pol_open_user;
81
82     struct acct_info *sam;
83     int num_sam_entries;
84 };
85
86 struct client_info
87 {
88     struct in_addr dest_ip;
89     fstring dest_host;
90     fstring query_host;
91     uint8 name_type;
92
93     fstring myhostname;
94     fstring mach_acct;
95
96     pstring cur_dir;
97     pstring base_dir;
98     pstring file_sel;
99
100     fstring service;
101     fstring share;
102     fstring svc_type;
103
104     time_t newer_than;
105     int archive_level;
106     int dir_total;
107     int put_total_time_ms;
108     int put_total_size;
109     int get_total_time_ms;
110     int get_total_size;
111     int print_mode;
112     BOOL translation;
113     BOOL recurse_dir;
114     BOOL prompt;
115     BOOL lowercase;
116     BOOL abort_mget;
117
118     struct tar_client_info tar;
119     struct nt_client_info dom;
120 };
121
122 enum action_type {ACTION_HEADER, ACTION_ENUMERATE, ACTION_FOOTER};
123
124 #endif /* _RPCCLIENT_H */