s3-netapi: Initialize group_handle of NetUserSetGroups_r.
[kai/samba.git] / source3 / rpc_client / cli_netlogon.h
1 /*
2    Unix SMB/CIFS implementation.
3    NT Domain Authentication SMB / MSRPC client
4    Copyright (C) Andrew Tridgell 1992-2000
5    Copyright (C) Jeremy Allison                    1998.
6    Largely re-written by Jeremy Allison (C)        2005.
7    Copyright (C) Guenther Deschner                 2008.
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 3 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, see <http://www.gnu.org/licenses/>.
21 */
22
23 #ifndef _RPC_CLIENT_CLI_NETLOGON_H_
24 #define _RPC_CLIENT_CLI_NETLOGON_H_
25
26 /* The following definitions come from rpc_client/cli_netlogon.c  */
27
28 NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli,
29                                      const char *server_name,
30                                      const char *domain,
31                                      const char *clnt_name,
32                                      const char *machine_account,
33                                      const unsigned char machine_pwd[16],
34                                      enum netr_SchannelType sec_chan_type,
35                                      uint32_t *neg_flags_inout);
36 NTSTATUS rpccli_netlogon_sam_logon(struct rpc_pipe_client *cli,
37                                    TALLOC_CTX *mem_ctx,
38                                    uint32 logon_parameters,
39                                    const char *domain,
40                                    const char *username,
41                                    const char *password,
42                                    const char *workstation,
43                                    uint16_t validation_level,
44                                    int logon_type);
45 NTSTATUS rpccli_netlogon_sam_network_logon(struct rpc_pipe_client *cli,
46                                            TALLOC_CTX *mem_ctx,
47                                            uint32 logon_parameters,
48                                            const char *server,
49                                            const char *username,
50                                            const char *domain,
51                                            const char *workstation,
52                                            const uint8 chal[8],
53                                            uint16_t validation_level,
54                                            DATA_BLOB lm_response,
55                                            DATA_BLOB nt_response,
56                                            struct netr_SamInfo3 **info3);
57 NTSTATUS rpccli_netlogon_sam_network_logon_ex(struct rpc_pipe_client *cli,
58                                               TALLOC_CTX *mem_ctx,
59                                               uint32 logon_parameters,
60                                               const char *server,
61                                               const char *username,
62                                               const char *domain,
63                                               const char *workstation,
64                                               const uint8 chal[8],
65                                               uint16_t validation_level,
66                                               DATA_BLOB lm_response,
67                                               DATA_BLOB nt_response,
68                                               struct netr_SamInfo3 **info3);
69 NTSTATUS rpccli_netlogon_set_trust_password(struct rpc_pipe_client *cli,
70                                             TALLOC_CTX *mem_ctx,
71                                             const char *account_name,
72                                             const unsigned char orig_trust_passwd_hash[16],
73                                             const char *new_trust_pwd_cleartext,
74                                             const unsigned char new_trust_passwd_hash[16],
75                                             enum netr_SchannelType sec_channel_type);
76
77 #endif /* _RPC_CLIENT_CLI_NETLOGON_H_ */