e2de9cca6f4400d96676312df8291f23a99d95a8
[samba.git] / source3 / 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 void winbindd_dump_status(void);
9 int main(int argc, char **argv);
10
11 /* The following definitions come from nsswitch/winbindd_cache.c  */
12
13 void winbindd_cache_init(void);
14 void winbindd_store_user_cache(char *domain, 
15                                struct getpwent_user *sam_entries,
16                                int num_sam_entries);
17 void winbindd_store_group_cache(char *domain,
18                                 struct acct_info *sam_entries,
19                                 int num_sam_entries);
20 void winbindd_store_user_cache_entry(char *domain, char *user_name, 
21                                      struct winbindd_pw *pw);
22 void winbindd_store_uid_cache_entry(char *domain, uid_t uid, 
23                                     struct winbindd_pw *pw);
24 void winbindd_store_group_cache_entry(char *domain, char *group_name, 
25                                       struct winbindd_gr *gr, void *extra_data,
26                                       int extra_data_len);
27 void winbindd_store_gid_cache_entry(char *domain, gid_t gid, 
28                                     struct winbindd_gr *gr, void *extra_data,
29                                     int extra_data_len);
30 BOOL winbindd_fetch_user_cache(char *domain_name, 
31                                struct getpwent_user **sam_entries,
32                                int *num_entries);
33 BOOL winbindd_fetch_group_cache(char *domain_name, 
34                                 struct acct_info **sam_entries,
35                                 int *num_entries);
36 BOOL winbindd_fetch_user_cache_entry(char *domain_name, char *user, 
37                                      struct winbindd_pw *pw);
38 BOOL winbindd_fetch_uid_cache_entry(char *domain_name, uid_t uid, 
39                                     struct winbindd_pw *pw);
40 BOOL winbindd_fetch_group_cache_entry(char *domain_name, char *group, 
41                                       struct winbindd_gr *gr,
42                                       void **extra_data, int *extra_data_len);
43 BOOL winbindd_fetch_gid_cache_entry(char *domain_name, gid_t gid,
44                                     struct winbindd_gr *gr,
45                                     void **extra_data, int *extra_data_len);
46 void winbindd_flush_cache(void);
47 void winbindd_cache_dump_status(void);
48
49 /* The following definitions come from nsswitch/winbindd_group.c  */
50
51 enum winbindd_result winbindd_getgrnam_from_group(struct winbindd_cli_state 
52                                                   *state);
53 enum winbindd_result winbindd_getgrnam_from_gid(struct winbindd_cli_state 
54                                                 *state);
55 enum winbindd_result winbindd_setgrent(struct winbindd_cli_state *state);
56 enum winbindd_result winbindd_endgrent(struct winbindd_cli_state *state);
57 enum winbindd_result winbindd_getgrent(struct winbindd_cli_state *state);
58 enum winbindd_result winbindd_list_groups(struct winbindd_cli_state *state);
59 enum winbindd_result winbindd_getgroups(struct winbindd_cli_state *state);
60
61 /* The following definitions come from nsswitch/winbindd_idmap.c  */
62
63 BOOL winbindd_idmap_get_uid_from_rid(char *domain_name, uint32 user_rid, 
64                                      uid_t *uid);
65 BOOL winbindd_idmap_get_gid_from_rid(char *domain_name, uint32 group_rid, 
66                                      gid_t *gid);
67 BOOL get_rid_from_id(int id, uint32 *rid, struct winbindd_domain **domain,
68                      BOOL isgroup);
69 BOOL winbindd_idmap_get_rid_from_uid(uid_t uid, uint32 *user_rid,
70                                      struct winbindd_domain **domain);
71 BOOL winbindd_idmap_get_rid_from_gid(gid_t gid, uint32 *group_rid, 
72                                      struct winbindd_domain **domain);
73 BOOL winbindd_idmap_init(void);
74 void winbindd_idmap_dump_status(void);
75
76 /* The following definitions come from nsswitch/winbindd_misc.c  */
77
78 BOOL _get_trust_account_password(char *domain, unsigned char *ret_pwd, 
79                                  time_t *pass_last_set_time);
80 enum winbindd_result winbindd_check_machine_acct(
81         struct winbindd_cli_state *state);
82 enum winbindd_result winbindd_list_trusted_domains(struct winbindd_cli_state
83                                                    *state);
84
85 /* The following definitions come from nsswitch/winbindd_pam.c  */
86
87 enum winbindd_result winbindd_pam_auth(struct winbindd_cli_state *state) ;
88 enum winbindd_result winbindd_pam_auth_crap(struct winbindd_cli_state *state) ;
89 enum winbindd_result winbindd_pam_chauthtok(struct winbindd_cli_state *state);
90
91 /* The following definitions come from nsswitch/winbindd_sid.c  */
92
93 enum winbindd_result winbindd_lookupsid(struct winbindd_cli_state *state);
94 enum winbindd_result winbindd_lookupname(struct winbindd_cli_state *state);
95 enum winbindd_result winbindd_sid_to_uid(struct winbindd_cli_state *state);
96 enum winbindd_result winbindd_sid_to_gid(struct winbindd_cli_state *state);
97 enum winbindd_result winbindd_uid_to_sid(struct winbindd_cli_state *state);
98 enum winbindd_result winbindd_gid_to_sid(struct winbindd_cli_state *state);
99
100 /* The following definitions come from nsswitch/winbindd_user.c  */
101
102 enum winbindd_result winbindd_getpwnam_from_user(struct winbindd_cli_state 
103                                                  *state) ;
104 enum winbindd_result winbindd_getpwnam_from_uid(struct winbindd_cli_state 
105                                                 *state);
106 enum winbindd_result winbindd_setpwent(struct winbindd_cli_state *state);
107 enum winbindd_result winbindd_endpwent(struct winbindd_cli_state *state);
108 enum winbindd_result winbindd_getpwent(struct winbindd_cli_state *state);
109 enum winbindd_result winbindd_list_users(struct winbindd_cli_state *state);
110
111 /* The following definitions come from nsswitch/winbindd_util.c  */
112
113 void debug_conn_state(void);
114 BOOL domain_handles_open(struct winbindd_domain *domain);
115 void winbindd_kill_connections(struct winbindd_domain *domain);
116 void winbindd_kill_all_connections(void);
117 void establish_connections(BOOL force_reestablish) ;
118 BOOL lookup_domain_sid(char *domain_name, struct winbindd_domain *domain);
119 BOOL get_domain_info(struct winbindd_domain *domain);
120 BOOL winbindd_lookup_sid_by_name(char *name, DOM_SID *sid,
121                                  enum SID_NAME_USE *type);
122 BOOL winbindd_lookup_name_by_sid(DOM_SID *sid, fstring name,
123                                  enum SID_NAME_USE *type);
124 BOOL winbindd_lookup_userinfo(struct winbindd_domain *domain,
125                               uint32 user_rid, SAM_USERINFO_CTR **user_info);
126 BOOL winbindd_lookup_usergroups(struct winbindd_domain *domain,
127                                 uint32 user_rid, uint32 *num_groups,
128                                 DOM_GID **user_groups);
129 BOOL winbindd_lookup_groupinfo(struct winbindd_domain *domain,
130                               uint32 group_rid, GROUP_INFO_CTR *info);
131 BOOL winbindd_lookup_groupmem(struct winbindd_domain *domain,
132                               uint32 group_rid, uint32 *num_names, 
133                               uint32 **rid_mem, char ***names, 
134                               uint32 **name_types);
135 struct winbindd_domain *find_domain_from_name(char *domain_name);
136 struct winbindd_domain *find_domain_from_sid(DOM_SID *sid);
137 void free_getent_state(struct getent_state *state);
138 BOOL winbindd_param_init(void);
139 char *winbindd_cmd_to_string(enum winbindd_cmd cmd);
140 uint32 domain_sequence_number(char *domain_name);
141 NTSTATUS winbindd_query_dispinfo(struct winbindd_domain *domain,
142                              uint32 *start_ndx, uint16 info_level, 
143                              uint32 *num_entries, SAM_DISPINFO_CTR *ctr);
144 BOOL check_domain_env(char *domain_env, char *domain);
145 void parse_domain_user(char *domuser, fstring domain, fstring user);
146 #endif /* _PROTO_H_ */