Add rxgk client options to vl and pt utilities
[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 /* ptuser.c */
16 extern afs_int32 pr_Initialize(afs_int32 secLevel, const char *confDir,
17                                char *cell);
18 extern afs_int32 pr_Initialize2(afs_int32 secLevel, const char *confDir,
19                                 char *cell, int rxgk_level);
20 extern int pr_End(void);
21 extern int pr_CreateUser(prname name, afs_int32 *id) AFS_NONNULL();
22 extern int pr_CreateGroup(prname name, prname owner,
23                           afs_int32 *id) AFS_NONNULL((1,3));
24 extern int pr_Delete(prname name) AFS_NONNULL();
25 extern int pr_DeleteByID(afs_int32 id);
26 extern int pr_AddToGroup(prname user, prname group) AFS_NONNULL();
27 extern int pr_RemoveUserFromGroup(prname user, prname group) AFS_NONNULL();
28 extern int pr_NameToId(namelist *names, idlist *ids) AFS_NONNULL();
29 extern int pr_SNameToId(prname name, afs_int32 *id) AFS_NONNULL();
30 extern int pr_IdToName(idlist *ids, namelist *names) AFS_NONNULL();
31 extern int pr_SIdToName(afs_int32 id, prname name) AFS_NONNULL();
32 extern int pr_GetCPS(afs_int32 id, prlist *CPS) AFS_NONNULL();
33 extern int pr_GetCPS2(afs_int32 id, afs_uint32 host, prlist *CPS) AFS_NONNULL();
34 extern int pr_GetHostCPS(afs_uint32 host, prlist *CPS) AFS_NONNULL();
35 extern int pr_ListMembers(prname group, namelist *lnames) AFS_NONNULL();
36 extern int pr_ListOwned(afs_int32 oid, namelist *lnames, afs_int32 *moreP)
37                        AFS_NONNULL();
38 extern int pr_IDListMembers(afs_int32 gid, namelist *lnames) AFS_NONNULL();
39 extern int pr_ListEntry(afs_int32 id, struct prcheckentry *aentry)
40                        AFS_NONNULL();
41 extern afs_int32 pr_ListEntries(int flag, afs_int32 startindex,
42                                 afs_int32 *nentries,
43                                 struct prlistentries **entries,
44                                 afs_int32 *nextstartindex) AFS_NONNULL();
45 extern int pr_CheckEntryByName(prname name, afs_int32 *id, prname owner,
46                                prname creator) AFS_NONNULL();
47 extern int pr_CheckEntryById(prname name, afs_int32 id, prname owner,
48                              prname creator) AFS_NONNULL();
49 extern int pr_ChangeEntry(prname oldname, prname newname, afs_int32 *newid,
50                           prname newowner) AFS_NONNULL((1));
51 extern int pr_IsAMemberOf(prname uname, prname gname, afs_int32 *flag)
52                          AFS_NONNULL();
53 extern int pr_ListMaxUserId(afs_int32 *mid) AFS_NONNULL();
54 extern int pr_SetMaxUserId(afs_int32 mid);
55 extern int pr_ListMaxGroupId(afs_int32 *mid) AFS_NONNULL();
56 extern int pr_SetMaxGroupId(afs_int32 mid);
57 extern afs_int32 pr_SetFieldsEntry(afs_int32 id, afs_int32 mask,
58                                    afs_int32 flags, afs_int32 ngroups,
59                                    afs_int32 nusers);
60 extern int pr_ListSuperGroups(afs_int32 gid, namelist *lnames) AFS_NONNULL();
61 extern int pr_IDListExpandedMembers(afs_int32 gid, namelist *lnames)
62                                    AFS_NONNULL();
63
64 #endif /* PTUSER_H */