1 #ifndef _WINBINDD_PROTO_H_
2 #define _WINBINDD_PROTO_H_
3 /* This file is automatically generated with "make proto". DO NOT EDIT */
6 /* The following definitions come from nsswitch/winbindd.c */
8 void winbindd_dump_status(void);
9 int main(int argc, char **argv);
11 /* The following definitions come from nsswitch/winbindd_cache.c */
13 void winbindd_cache_init(void);
14 void winbindd_store_user_cache(char *domain,
15 struct getpwent_user *sam_entries,
17 void winbindd_store_group_cache(char *domain,
18 struct acct_info *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,
27 void winbindd_store_gid_cache_entry(char *domain, gid_t gid,
28 struct winbindd_gr *gr, void *extra_data,
30 BOOL winbindd_fetch_user_cache(char *domain_name,
31 struct getpwent_user **sam_entries,
33 BOOL winbindd_fetch_group_cache(char *domain_name,
34 struct acct_info **sam_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);
49 /* The following definitions come from nsswitch/winbindd_group.c */
51 enum winbindd_result winbindd_getgrnam_from_group(struct winbindd_cli_state
53 enum winbindd_result winbindd_getgrnam_from_gid(struct winbindd_cli_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);
61 /* The following definitions come from nsswitch/winbindd_idmap.c */
63 BOOL winbindd_idmap_get_uid_from_rid(char *domain_name, uint32 user_rid,
65 BOOL winbindd_idmap_get_gid_from_rid(char *domain_name, uint32 group_rid,
67 BOOL get_rid_from_id(int id, uint32 *rid, struct winbindd_domain **domain,
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);
76 /* The following definitions come from nsswitch/winbindd_misc.c */
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
85 /* The following definitions come from nsswitch/winbindd_pam.c */
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);
91 /* The following definitions come from nsswitch/winbindd_sid.c */
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);
100 /* The following definitions come from nsswitch/winbindd_user.c */
102 enum winbindd_result winbindd_getpwnam_from_user(struct winbindd_cli_state
104 enum winbindd_result winbindd_getpwnam_from_uid(struct winbindd_cli_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);
111 /* The following definitions come from nsswitch/winbindd_util.c */
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_ */