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 int main(int argc, char **argv);
10 /*The following definitions come from nsswitch/winbindd_cache.c */
12 void winbindd_cache_init(void);
13 void winbindd_fill_user_cache(char *domain_name,
14 struct acct_info *sam_entries,
16 void winbindd_fill_group_cache(char *domain_name,
17 struct acct_info *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,
26 void winbindd_fill_gid_cache_entry(char *domain, gid_t gid,
27 struct winbindd_gr *gr, void *extra_data,
29 BOOL winbindd_fetch_user_cache(char *domain_name,
30 struct acct_info **sam_entries,
32 BOOL winbindd_fetch_group_cache(char *domain_name,
33 struct acct_info **sam_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);
47 /*The following definitions come from nsswitch/winbindd_group.c */
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
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);
56 /*The following definitions come from nsswitch/winbindd_idmap.c */
58 BOOL winbindd_idmap_get_uid_from_rid(char *domain_name, uint32 user_rid,
60 BOOL winbindd_idmap_get_gid_from_rid(char *domain_name, uint32 group_rid,
62 BOOL get_rid_from_id(int id, uint32 *rid, struct winbindd_domain **domain,
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);
70 /*The following definitions come from nsswitch/winbindd_pam.c */
72 enum winbindd_result winbindd_pam_auth(struct winbindd_cli_state *state) ;
74 /*The following definitions come from nsswitch/winbindd_user.c */
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
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);
83 /*The following definitions come from nsswitch/winbindd_util.c */
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_ */