root/source4/libnet/libnet_samsync.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* 
   2    Unix SMB/CIFS implementation.
   3 
   4    Copyright (C) Andrew Bartlett <abartlet@samba.org> 2005
   5    
   6    This program is free software; you can redistribute it and/or modify
   7    it under the terms of the GNU General Public License as published by
   8    the Free Software Foundation; either version 3 of the License, or
   9    (at your option) any later version.
  10    
  11    This program is distributed in the hope that it will be useful,
  12    but WITHOUT ANY WARRANTY; without even the implied warranty of
  13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14    GNU General Public License for more details.
  15    
  16    You should have received a copy of the GNU General Public License
  17    along with this program.  If not, see <http://www.gnu.org/licenses/>.
  18 */
  19 
  20 #include "librpc/gen_ndr/netlogon.h"
  21 
  22 struct libnet_SamSync_state {
  23         struct libnet_context *machine_net_ctx;
  24         struct dcerpc_pipe *netlogon_pipe;
  25         const char *domain_name;
  26         const struct dom_sid *domain_sid;
  27         const char *realm;
  28         struct GUID *domain_guid;
  29 };
  30 
  31 /* struct and enum for doing a remote domain vampire dump */
  32 struct libnet_SamSync {
  33         struct {
  34                 const char *binding_string;
  35                 bool rid_crypt;
  36                 NTSTATUS (*init_fn)(TALLOC_CTX *mem_ctx,                
  37                                     void *private_data,
  38                                     struct libnet_SamSync_state *samsync_state,
  39                                     char **error_string);
  40                 NTSTATUS (*delta_fn)(TALLOC_CTX *mem_ctx,               
  41                                      void *private_data,
  42                                      enum netr_SamDatabaseID database,
  43                                      struct netr_DELTA_ENUM *delta,
  44                                      char **error_string);
  45                 void *fn_ctx;
  46                 struct cli_credentials *machine_account;
  47         } in;
  48         struct {
  49                 const char *error_string;
  50         } out;
  51 };
  52 
  53 struct libnet_SamDump {
  54         struct {
  55                 const char *binding_string;
  56                 struct cli_credentials *machine_account;
  57         } in;
  58         struct {
  59                 const char *error_string;
  60         } out;
  61 };
  62 
  63 struct libnet_SamDump_keytab {
  64         struct {
  65                 const char *binding_string;
  66                 const char *keytab_name;
  67                 struct cli_credentials *machine_account;
  68         } in;
  69         struct {
  70                 const char *error_string;
  71         } out;
  72 };
  73 
  74 struct libnet_samsync_ldb {
  75         struct {
  76                 const char *binding_string;
  77                 struct cli_credentials *machine_account;
  78                 struct auth_session_info *session_info;
  79         } in;
  80         struct {
  81                 const char *error_string;
  82         } out;
  83 };
  84 

/* [<][>][^][v][top][bottom][index][help] */