mirror of
				https://github.com/samba-team/samba.git
				synced 2025-10-30 08:23:49 +03:00 
			
		
		
		
	a bit more smart and more aware of what libnet_context can offer. The context is a help when some of the arguments are not passed (programmer counts on using sensible defaults) and stores some of results so that similar subsequent calls don't need to reopen some of policy handles, pipes, etc. again. It also helps to hide some of details the library user don't really want to know much about. Also, change domain open function to be part of public api, as it is going to be used in ejsnet interface. Note, this is work in progress. Comments are welcome. rafal
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* 
 | |
|    Unix SMB/CIFS implementation.
 | |
|    
 | |
|    Copyright (C) Stefan Metzmacher	2004
 | |
|    
 | |
|    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.
 | |
| */
 | |
| 
 | |
| struct libnet_context {
 | |
| 	/* here we need:
 | |
| 	 * a client env context
 | |
| 	 * a user env context
 | |
| 	 */
 | |
| 	struct cli_credentials *cred;
 | |
| 
 | |
| 	/* pipes */
 | |
| 	struct dcerpc_pipe *pipe;
 | |
| 	struct dcerpc_pipe *lsa_pipe;
 | |
| 	struct dcerpc_pipe *samr_pipe;
 | |
| 
 | |
| 	/* opened handles and related properties */
 | |
| 	struct {
 | |
| 		const char *name;
 | |
| 		uint32_t access_mask;
 | |
| 		struct policy_handle handle;
 | |
| 	} domain;
 | |
| 
 | |
| 	struct policy_handle user_handle;
 | |
| 
 | |
| 	/* name resolution methods */
 | |
| 	const char **name_res_methods;
 | |
| 
 | |
| 	struct event_context *event_ctx;
 | |
| };
 | |
| 
 | |
| 
 | |
| #include "lib/ldb/include/ldb.h"
 | |
| #include "libnet/libnet_passwd.h"
 | |
| #include "libnet/libnet_time.h"
 | |
| #include "libnet/libnet_rpc.h"
 | |
| #include "libnet/libnet_join.h"
 | |
| #include "libnet/libnet_site.h"
 | |
| #include "libnet/libnet_vampire.h"
 | |
| #include "libnet/libnet_user.h"
 | |
| #include "libnet/libnet_share.h"
 | |
| #include "libnet/libnet_lookup.h"
 | |
| #include "libnet/libnet_domain.h"
 | |
| #include "libnet/composite.h"
 | |
| #include "libnet/libnet_proto.h"
 |