add-ptprocs-prototype-use-20050426
[openafs.git] / src / ptserver / ptprototypes.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 _PTPROTOTYPES_H_
11 #define _PTPROTOTYPES_H_
12
13 /* utils.c */
14 #if defined(SUPERGROUPS)
15 extern afs_int32 IsAMemberOfSG(struct ubik_trans *at, afs_int32 aid, afs_int32 gid, afs_int32 depth) ;
16 #endif /* SUPERGROUPS */
17
18 extern afs_int32 IDHash(afs_int32 x);
19 extern afs_int32 NameHash(register unsigned char *aname);
20 extern afs_int32 pr_Write(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, char *buff, afs_int32 len);
21 extern afs_int32 pr_Read(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, char *buff, afs_int32 len);
22 extern int pr_WriteEntry(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, struct prentry *tentry);
23 extern int pr_ReadEntry(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, struct prentry *tentry);
24 extern int pr_WriteCoEntry(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, struct contentry *tentry);
25 extern int pr_ReadCoEntry(struct ubik_trans *tt, afs_int32 afd, afs_int32 pos, struct contentry *tentry);
26 extern afs_int32 AllocBlock(register struct ubik_trans *at);
27 extern afs_int32 FreeBlock(register struct ubik_trans *at, afs_int32 pos);
28 extern afs_int32 FindByID(register struct ubik_trans *at, afs_int32 aid);
29 extern afs_int32 FindByName(register struct ubik_trans *at, char aname[PR_MAXNAMELEN], struct prentry *tentryp);
30 extern afs_int32 AllocID(register struct ubik_trans *at, afs_int32 flag, afs_int32 *aid);
31 extern afs_int32 IDToName(register struct ubik_trans *at, afs_int32 aid, char aname[PR_MAXNAMELEN]);
32 extern afs_int32 NameToID(register struct ubik_trans *at, char aname[PR_MAXNAMELEN], afs_int32 *aid);
33 extern int IDCmp(afs_int32 *a, afs_int32 *b);
34 extern afs_int32 RemoveFromIDHash(struct ubik_trans *tt, afs_int32 aid, afs_int32 *loc);
35 extern afs_int32 AddToIDHash(struct ubik_trans *tt, afs_int32 aid, afs_int32 loc);
36 extern afs_int32 RemoveFromNameHash(struct ubik_trans *tt, char *aname, afs_int32 *loc);
37 extern afs_int32 AddToNameHash(struct ubik_trans *tt, char *aname, afs_int32 loc);
38 extern afs_int32 AddToOwnerChain(struct ubik_trans *at, afs_int32 gid, afs_int32 oid);
39 extern afs_int32 RemoveFromOwnerChain(struct ubik_trans *at, afs_int32 gid, afs_int32 oid);
40 extern afs_int32 AddToOrphan(struct ubik_trans *at, afs_int32 gid);
41 extern afs_int32 RemoveFromOrphan(struct ubik_trans *at, afs_int32 gid);
42 extern afs_int32 IsOwnerOf(struct ubik_trans *at, afs_int32 aid, afs_int32 gid);
43 extern afs_int32 OwnerOf(struct ubik_trans *at, afs_int32 gid);
44 extern afs_int32 IsAMemberOf(struct ubik_trans *at, afs_int32 aid, afs_int32 gid);
45
46 #endif