freebsd-50-20030423
[openafs.git] / src / afs / afs_prototypes.h
index 89bc71b..d8c2bde 100644 (file)
@@ -17,7 +17,7 @@ extern int afs_Analyze(register struct conn *aconn, afs_int32 acode,
     afs_int32 locktype, struct cell *cellp);
 extern int afs_CheckCode(afs_int32 acode, struct vrequest *areq, int where);
 extern void afs_CopyError(register struct vrequest *afrom, register struct vrequest *ato);
-
+extern void init_sys_error_to_et(void);
 
 /* afs_axscache.c */
 extern afs_rwlock_t afs_xaxs;
@@ -28,12 +28,12 @@ extern void afs_FreeAllAxs(struct axscache **headp);
 
 /* afs_buffer.c */
 extern void DInit (int abuffers);
-extern char *DRead(register ino_t *fid, register int page);
+extern char *DRead(register afs_inode_t *fid, register int page);
 extern void DRelease (register struct buffer *bp, int flag);
 extern int DVOffset (register void *ap);
-extern void DZap (ino_t *fid);
+extern void DZap (afs_inode_t *fid);
 extern void DFlush (void);
-extern char *DNew (register ino_t *fid, register int page);
+extern char *DNew (register afs_inode_t *fid, register int page);
 extern void shutdown_bufferpackage(void);
 
 /* afs_call.c */
@@ -89,7 +89,7 @@ extern int afs_icl_Event1(register struct afs_icl_set *setp, afs_int32 eventID,
        afs_int32 lAndT, long p1);
 extern int afs_icl_Event0(register struct afs_icl_set *setp, afs_int32 eventID, 
        afs_int32 lAndT);
-extern int afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op, 
+extern void afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op, 
        afs_int32 types, long p1, long p2, long p3, long p4);
 
 extern int afs_CheckInit(void);
@@ -173,6 +173,7 @@ extern int afs_CellOrAliasExists(char *aname);
 extern int afs_CellNumValid(afs_int32 cellnum);
 extern afs_int32 afs_NewCellAlias(char *alias, char *cell);
 extern struct cell_alias *afs_GetCellAlias(int index);
+extern void afs_PutCellAlias(struct cell_alias *a);
 extern int afs_AFSDBHandler(char *acellName, int acellNameLen,
        afs_int32 *kernelMsg);
 extern void afs_LookupAFSDB(char *acellName);
@@ -221,7 +222,7 @@ extern void afs_Daemon(void);
 extern struct brequest *afs_BQueue(register short aopcode, register struct vcache *avc, 
         afs_int32 dontwait, afs_int32 ause, struct AFS_UCRED *acred, 
         afs_size_t asparm0, afs_size_t asparm1, void *apparm0);
-extern int afs_CheckServerDaemon(void);
+extern void afs_CheckServerDaemon(void);
 extern int afs_CheckRootVolume (void);
 extern void afs_BRelease(register struct brequest *ab);
 extern int afs_BBusy(void);
@@ -308,6 +309,8 @@ extern int afs_CacheInit(afs_int32 astatSize, afs_int32 afiles, afs_int32
         afs_int32 aflags, afs_int32 ninodes, afs_int32 nusers);
 extern void afs_ComputeCacheParms(void);
 extern int afs_InitCacheInfo(register char *afile);
+extern int afs_InitVolumeInfo(char *afile);
+extern int afs_InitCellInfo(char *afile);
 extern int afs_ResourceInit(int preallocs);
 extern void shutdown_cache(void);
 extern void shutdown_vnodeops(void);
@@ -349,8 +352,7 @@ extern void shutdown_mariner(void);
 
 
 /* afs_memcache.c */
-extern void *afs_MemCacheOpen(ino_t blkno);
-extern int afs_InitMemCache(int size, int blkSize, int flags);
+extern int afs_InitMemCache(int blkCount, int blkSize, int flags);
 extern int afs_MemCacheClose(char *file);
 extern void *afs_MemCacheOpen(ino_t blkno);
 extern int afs_MemReadBlk(register struct memCacheEntry *mceP, int offset, char *dest, int size);
@@ -403,8 +405,14 @@ extern const struct AFS_UCRED *afs_osi_proc2cred(AFS_PROC *pr);
 #endif
 
 /* afs_osi_pag.c */
+extern int afs_setpag();
 extern afs_uint32 genpag(void);
 extern afs_uint32 getpag(void);
+#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
+extern int AddPag(struct proc *p, afs_int32 aval, struct AFS_UCRED **credpp);
+#else
+extern int AddPag(afs_int32 aval, struct AFS_UCRED **credpp);
+#endif
 extern int afs_InitReq(register struct vrequest *av, struct AFS_UCRED *acred);
 extern afs_uint32 afs_get_pag_from_groups(gid_t g0a, gid_t g1a);
 extern void afs_get_groups_from_pag(afs_uint32 pag, gid_t *g0p, gid_t *g1p);
@@ -424,13 +432,20 @@ extern void *osi_AllocSmallSpace(size_t size);
 extern char *osi_AllocSmall(register afs_int32 size, register afs_int32 morespace);
 #endif
 
+/* afs_osi_uio.c */
+extern int afsio_copy(struct uio *ainuio, struct uio *aoutuio, struct iovec *aoutvec);
+extern int afsio_trim(struct uio *auio, afs_int32 asize);
+extern int afsio_skip(struct uio *auio, afs_int32 asize);
+
 
 
 /* ARCH/osi_misc.c */
 extern void osi_iput(struct inode *ip);
+extern void afs_osi_SetTime(osi_timeval_t *atv);
 
 /* LINUX/osi_misc.c */
-#if AFS_LINUX24_ENV
+#ifdef AFS_LINUX20_ENV
+#ifdef AFS_LINUX24_ENV
 extern int osi_lookupname(char *aname, uio_seg_t seg, int followlink,
                vnode_t **dirvpp, struct dentry **dpp);
 extern int osi_InitCacheInfo(char *aname);
@@ -441,7 +456,6 @@ extern void setup_uio(uio_t *uiop, struct iovec *iovecp, char *buf,
                              afs_offs_t pos, int count, uio_flag_t flag,
                              uio_seg_t seg);
 extern int uiomove(char *dp, int length, uio_flag_t rw, uio_t *uiop);
-extern void afs_osi_SetTime(osi_timeval_t *tvp);
 extern void osi_linux_free_inode_pages(void);
 extern void osi_clear_inode(struct inode *ip);
 extern void check_bad_parent(struct dentry *dp);
@@ -449,14 +463,22 @@ extern void check_bad_parent(struct dentry *dp);
 extern void osi_linux_mask(void);
 extern void osi_linux_unmask(void);
 extern void osi_linux_rxkreg(void);
+extern int setpag(cred_t **cr, afs_uint32 pagvalue, afs_uint32 *newpag, int change_parent);
+#endif
+
 
+/* OBSD/osi_misc.c */
+#ifdef AFS_OBSD_ENV
+extern int setpag(struct proc *proc, struct ucred **cred, afs_uint32 pagvalue,
+                 afs_uint32 *newpag, int change_parent);
+#endif
 
 /* ARCH/osi_sleep.c */
 extern void afs_osi_InitWaitHandle(struct afs_osi_WaitHandle *achandle);
 extern void afs_osi_CancelWait(struct afs_osi_WaitHandle *achandle);
 extern int afs_osi_Wait(afs_int32 ams, struct afs_osi_WaitHandle *ahandle, int aintok);
 #ifndef afs_osi_Wakeup
-extern void afs_osi_Wakeup(void *event);
+extern int afs_osi_Wakeup(void *event);
 #endif
 #ifndef afs_osi_Sleep
 extern void afs_osi_Sleep(void *event);
@@ -465,6 +487,13 @@ extern void afs_osi_Sleep(void *event);
 extern int afs_osi_SleepSig(void *event);
 #endif
 
+
+/* ARCH/osi_inode.c */
+extern int afs_syscall_icreate();
+extern int afs_syscall_iopen();
+extern int afs_syscall_iincdec();
+
+
 /* ARCH/osi_file.c */
 extern int afs_osicred_initialized;
 #if defined(AFS_SUN57_64BIT_ENV) || defined(AFS_SGI62_ENV)
@@ -536,6 +565,7 @@ extern afs_int32 afs_waitForever;
 extern short afs_waitForeverCount;
 extern afs_int32 afs_showflags;
 extern int afs_defaultAsynchrony;
+extern int afs_syscall_pioctl();
 
 /* afs_segments.c */
 extern int afs_StoreMini(register struct vcache *avc, struct vrequest *areq);
@@ -599,9 +629,9 @@ extern struct afs_stats_CMPerf afs_stats_cmperf;
 extern struct afs_stats_CMFullPerf afs_stats_cmfullperf;
 extern afs_int32 afs_stats_XferSumBytes[AFS_STATS_NUM_FS_XFER_OPS];
 extern void afs_InitStats(void);
-extern int afs_GetCMStat(char **ptr, unsigned *size);
+extern void afs_GetCMStat(char **ptr, unsigned *size);
 #ifndef AFS_NOSTATS
-extern int afs_AddToMean(struct afs_MeanStats *oldMean, afs_int32 newValue);
+extern void afs_AddToMean(struct afs_MeanStats *oldMean, afs_int32 newValue);
 #endif
 
 
@@ -635,8 +665,18 @@ extern void afs_SetPrimary(register struct unixuser *au, register int aflag);
 
 
 /* afs_util.c */
+#ifndef afs_cv2string
 extern char *afs_cv2string(char *ttp, afs_uint32 aval);
+#endif
+#ifndef afs_strcasecmp
 extern int afs_strcasecmp(char *s1, char *s2);
+#endif
+#ifndef afs_strcat
+extern char *afs_strcat(char *s1, char *s2);
+#endif
+#ifndef afs_strchr
+extern char *afs_strchr(char *s, int c);
+#endif
 extern char *afs_strdup(char *s);
 extern void print_internet_address(char *preamble, struct srvAddr *sa,
                            char *postamble, int flag);
@@ -761,8 +801,6 @@ extern int HandleFlock(register struct vcache *avc, int acom,
 
 
 /* VNOPS/afs_vnop_lookup.c */
-extern char *afs_strcat(register char *s1, register char *s2);
-extern char *afs_index(register char *a, register char c);
 extern int EvalMountPoint(register struct vcache *avc, struct vcache *advc,
         struct volume **avolpp, register struct vrequest *areq);
 extern void afs_InitFakeStat(struct afs_fakestat_state *state);
@@ -774,12 +812,12 @@ extern void afs_PutFakeStat(struct afs_fakestat_state *state);
 extern int afs_ENameOK(register char *aname);
 extern int afs_getsysname(register struct vrequest *areq, register struct vcache *adp, 
         register char *bufp);
-extern int Check_AtSys(register struct vcache *avc, const char *aname, 
+extern void Check_AtSys(register struct vcache *avc, const char *aname, 
         struct sysname_info *state, struct vrequest *areq);
 extern int Next_AtSys(register struct vcache *avc, struct vrequest *areq, 
         struct sysname_info *state);
 extern int afs_DoBulkStat(struct vcache *adp, long dirCookie, struct vrequest *areqp);
-
+extern int afs_lookup();
 
 
 /* VNOPS/afs_vnop_read.c */
@@ -788,6 +826,8 @@ extern afs_int32 nihints;
 extern afs_int32 usedihint;
 extern int afs_MemRead(register struct vcache *avc, struct uio *auio, struct AFS_UCRED *acred, 
         daddr_t albn, struct buf **abpp, int noLock);
+extern int afs_UFSRead(register struct vcache *avc, struct uio *auio,
+       struct AFS_UCRED *acred, daddr_t albn, struct buf **abpp, int noLock);
 
 
 /* VNOPS/afs_vnop_readdir.c */
@@ -800,8 +840,13 @@ extern int afsremove(register struct vcache *adp, register struct dcache *tdc,
 extern int afs_remunlink(register struct vcache *avc, register int doit);
 
 
+/* VNOPS/afs_vnop_rename.c */
+extern int afsrename();
+
+
 /* VNOPS/afs_vnop_symlink.c */
 extern int afs_MemHandleLink(register struct vcache *avc, struct vrequest *areq);
+extern int afs_UFSHandleLink(register struct vcache *avc, struct vrequest *areq);
 
 /* VNOPS/afs_vnop_flock.c */
 extern afs_int32 lastWarnTime;
@@ -815,6 +860,23 @@ extern int afs_UFSWrite(register struct vcache *avc, struct uio *auio,
 extern int afs_DoPartialWrite(register struct vcache *avc, struct vrequest *areq);
 extern int afs_closex(register struct file *afd);
 
+/* other VNOPS (please fix these) */
+extern int afs_open();
+extern int afs_close();
+extern int vnode_pager_freepage();
+extern int HandleIoctl();
+extern int afs_fsync();
+extern int afs_remove();
+extern int afs_link();
+extern int afs_rename();
+extern int afs_mkdir();
+extern int afs_rmdir();
+extern int afs_symlink();
+extern int afs_readdir();
+extern int afs_readlink();
+extern int afs_ustrategy();
+extern int afs_lockctl();
+
 
 /* afs_volume.c */
 extern afs_int32 afs_FVIndex;
@@ -838,7 +900,6 @@ extern struct volume *afs_GetVolume(struct VenusFid *afid, struct vrequest *areq
         afs_int32 locktype);
 extern struct volume *afs_GetVolumeByName(register char *aname, afs_int32 acell, 
         int agood, struct vrequest *areq, afs_int32 locktype);
-
 extern struct volume *afs_UFSGetVolSlot(void);
 extern void afs_CheckVolumeNames(int flags);
 
@@ -856,14 +917,13 @@ extern u_short afs_uuid_hash (afsUUID *uuid);
 
 /* MISC PROTOTYPES - THESE SHOULD NOT BE HERE */
 /* MOVE THEM TO APPROPRIATE LOCATIONS */
-extern int RXAFSCB_ExecuteRequest();
-extern int RXSTATS_ExecuteRequest();
+extern afs_int32 RXAFSCB_ExecuteRequest(struct rx_call *acall);
+extern afs_int32 RXSTATS_ExecuteRequest(struct rx_call *acall);
 
 
 
-#if defined(AFS_SUN5_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_AIX_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV)
-#include "../afs/osi_prototypes.h"
+#if defined(AFS_SUN5_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_AIX_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV) || defined(AFS_HPUX_ENV)
+#include "osi_prototypes.h"
 #endif
 
 #endif /* _AFS_PROTOTYPES_H_ */
-