ptserver-procs-loglevels-20090603
[openafs.git] / src / ptserver / ptuser.h
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  * 
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 #ifndef PTUSER_H
11 #define PTUSER_H
12
13 #include "afs/ptint.h"
14
15 /* display.c */
16 extern int pr_PrintEntry(FILE *f, int hostOrder, afs_int32 ea, 
17                          struct prentry *e, int indent);
18  
19 /* ptuser.c */
20 extern afs_int32 pr_Initialize(afs_int32 secLevel, const char *confDir, 
21                                char *cell);
22 extern int pr_End(void);
23 extern int pr_CreateUser(char name[PR_MAXNAMELEN], afs_int32 *id);
24 extern int pr_CreateGroup(char name[PR_MAXNAMELEN], char owner[PR_MAXNAMELEN], 
25                           afs_int32 *id);
26 extern int pr_Delete(char *name);
27 extern int pr_DeleteByID(afs_int32 id);
28 extern int pr_AddToGroup(char *user, char *group);
29 extern int pr_RemoveUserFromGroup(char *user, char *group);
30 extern int pr_NameToId(namelist *names, idlist *ids);
31 extern int pr_SNameToId(char name[PR_MAXNAMELEN], afs_int32 *id);
32 extern int pr_IdToName(idlist *ids, namelist *names);
33 extern int pr_SIdToName(afs_int32 id, char name[PR_MAXNAMELEN]);
34 extern int pr_GetCPS(afs_int32 id, prlist *CPS);
35 extern int pr_GetCPS2(afs_int32 id, afs_int32 host, prlist *CPS);
36 extern int pr_GetHostCPS(afs_int32 host, prlist *CPS);
37 extern int pr_ListMembers(char *group, namelist *lnames);
38 extern int pr_ListOwned(afs_int32 oid, namelist *lnames, afs_int32 *moreP);
39 extern int pr_IDListMembers(afs_int32 gid, namelist *lnames);
40 extern int pr_ListEntry(afs_int32 id, struct prcheckentry *aentry);
41 extern afs_int32 pr_ListEntries(int flag, afs_int32 startindex, 
42                                 afs_int32 *nentries, 
43                                 struct prlistentries **entries, 
44                                 afs_int32 *nextstartindex);
45 extern int pr_CheckEntryByName(char *name, afs_int32 *id, char *owner, 
46                                char *creator);
47 extern int pr_CheckEntryById(char *name, afs_int32 id, char *owner, 
48                              char *creator);
49 extern int pr_ChangeEntry(char *oldname, char *newname, afs_int32 *newid, 
50                           char *newowner);
51 extern int pr_IsAMemberOf(char *uname, char *gname, afs_int32 *flag);
52 extern int pr_ListMaxUserId(afs_int32 *mid);
53 extern int pr_SetMaxUserId(afs_int32 mid);
54 extern int pr_ListMaxGroupId(afs_int32 *mid);
55 extern int pr_SetMaxGroupId(afs_int32 mid);
56 extern afs_int32 pr_SetFieldsEntry(afs_int32 id, afs_int32 mask, 
57                                    afs_int32 flags, afs_int32 ngroups, 
58                                    afs_int32 nusers);
59
60 #endif /* PTUSER_H */