First cut toward adding WINS server failover.
[tprouty/samba.git] / source / nsswitch / winbindd_proto.h
1 #ifndef _WINBINDD_PROTO_H_
2 #define _WINBINDD_PROTO_H_
3 /* This file is automatically generated with "make proto". DO NOT EDIT */
4
5
6 /*The following definitions come from  nsswitch/winbindd.c  */
7
8 int main(int argc, char **argv);
9
10 /*The following definitions come from  nsswitch/winbindd_cache.c  */
11
12 void winbindd_cache_init(void);
13 void winbindd_fill_user_cache(char *domain_name, 
14                               struct acct_info *sam_entries,
15                               int num_sam_entries);
16 void winbindd_fill_group_cache(char *domain_name,
17                                struct acct_info *sam_entries,
18                                int num_sam_entries);
19 void winbindd_fill_user_cache_entry(char *domain, char *user_name, 
20                                     struct winbindd_pw *pw);
21 void winbindd_fill_uid_cache_entry(char *domain, uid_t uid, 
22                                     struct winbindd_pw *pw);
23 void winbindd_fill_group_cache_entry(char *domain, char *group_name, 
24                                      struct winbindd_gr *gr, void *extra_data,
25                                      int extra_data_len);
26 void winbindd_fill_gid_cache_entry(char *domain, gid_t gid, 
27                                      struct winbindd_gr *gr, void *extra_data,
28                                      int extra_data_len);
29 BOOL winbindd_fetch_user_cache(char *domain_name,
30                                struct acct_info **sam_entries,
31                                int *num_entries);
32 BOOL winbindd_fetch_group_cache(char *domain_name,
33                                 struct acct_info **sam_entries,
34                                 int *num_entries);
35 BOOL winbindd_fetch_user_cache_entry(char *domain_name, char *user, 
36                                      struct winbindd_pw *pw);
37 BOOL winbindd_fetch_uid_cache_entry(char *domain_name, uid_t uid, 
38                                     struct winbindd_pw *pw);
39 BOOL winbindd_fetch_group_cache_entry(char *domain_name, char *group, 
40                                       struct winbindd_gr *gr,
41                                       void **extra_data, int *extra_data_len);
42 BOOL winbindd_fetch_gid_cache_entry(char *domain_name, gid_t gid,
43                                     struct winbindd_gr *gr,
44                                     void **extra_data, int *extra_data_len);
45 void winbindd_flush_cache(void);
46
47 /*The following definitions come from  nsswitch/winbindd_group.c  */
48
49 enum winbindd_result winbindd_getgrnam_from_group(struct winbindd_cli_state *state);
50 enum winbindd_result winbindd_getgrnam_from_gid(struct winbindd_cli_state 
51                                                 *state);
52 enum winbindd_result winbindd_setgrent(struct winbindd_cli_state *state);
53 enum winbindd_result winbindd_endgrent(struct winbindd_cli_state *state);
54 enum winbindd_result winbindd_getgrent(struct winbindd_cli_state *state);
55
56 /*The following definitions come from  nsswitch/winbindd_idmap.c  */
57
58 BOOL winbindd_idmap_get_uid_from_rid(char *domain_name, uint32 user_rid, 
59                                      uid_t *uid);
60 BOOL winbindd_idmap_get_gid_from_rid(char *domain_name, uint32 group_rid, 
61                                      gid_t *gid);
62 BOOL get_rid_from_id(int id, uint32 *rid, struct winbindd_domain **domain,
63                      BOOL isgroup);
64 BOOL winbindd_idmap_get_rid_from_uid(uid_t uid, uint32 *user_rid,
65                                      struct winbindd_domain **domain);
66 BOOL winbindd_idmap_get_rid_from_gid(gid_t gid, uint32 *group_rid, 
67                                      struct winbindd_domain **domain);
68 BOOL winbindd_idmap_init(void);
69
70 /*The following definitions come from  nsswitch/winbindd_pam.c  */
71
72 enum winbindd_result winbindd_pam_auth(struct winbindd_cli_state *state) ;
73
74 /*The following definitions come from  nsswitch/winbindd_user.c  */
75
76 enum winbindd_result winbindd_getpwnam_from_user(struct winbindd_cli_state *state) ;
77 enum winbindd_result winbindd_getpwnam_from_uid(struct winbindd_cli_state 
78                                                 *state);
79 enum winbindd_result winbindd_setpwent(struct winbindd_cli_state *state);
80 enum winbindd_result winbindd_endpwent(struct winbindd_cli_state *state);
81 enum winbindd_result winbindd_getpwent(struct winbindd_cli_state *state);
82
83 /*The following definitions come from  nsswitch/winbindd_util.c  */
84
85 BOOL domain_handles_open(struct winbindd_domain *domain);
86 void establish_connections(void) ;
87 BOOL lookup_domain_sid(char *domain_name, struct winbindd_domain *domain);
88 BOOL get_domain_info(struct winbindd_domain *domain);
89 BOOL winbindd_lookup_sid_by_name(struct winbindd_domain *domain,
90                                  char *name, DOM_SID *sid,
91                                  enum SID_NAME_USE *type);
92 BOOL winbindd_lookup_name_by_sid(struct winbindd_domain *domain,
93                                  DOM_SID *sid, char *name,
94                                  enum SID_NAME_USE *type);
95 BOOL winbindd_lookup_userinfo(struct winbindd_domain *domain,
96                               uint32 user_rid, SAM_USERINFO_CTR *user_info);
97 BOOL winbindd_lookup_groupinfo(struct winbindd_domain *domain,
98                               uint32 group_rid, GROUP_INFO_CTR *info);
99 BOOL winbindd_lookup_groupmem(struct winbindd_domain *domain,
100                               uint32 group_rid, uint32 *num_names, 
101                               uint32 **rid_mem, char ***names, 
102                               enum SID_NAME_USE **name_types);
103 int winbindd_lookup_aliasmem(struct winbindd_domain *domain,
104                              uint32 alias_rid, uint32 *num_names, 
105                              DOM_SID ***sids, char ***names, 
106                              enum SID_NAME_USE **name_types);
107 struct winbindd_domain *find_domain_from_name(char *domain_name);
108 void free_getent_state(struct getent_state *state);
109 BOOL winbindd_param_init(void);
110 char *winbindd_cmd_to_string(enum winbindd_cmd cmd);
111 void parse_domain_user(char *domuser, fstring domain, fstring user);
112 uint32 domain_sequence_number(char *domain_name);
113 #endif /* _WINBINDD_PROTO_H_ */