Use unsigned addresses in the NFS exporter
[openafs.git] / src / afs / afs_prototypes.h
index 2e37ef7..362bed1 100644 (file)
@@ -210,14 +210,19 @@ extern struct brequest *afs_BQueue(register short aopcode,
                                   afs_int32 dontwait, afs_int32 ause,
                                   afs_ucred_t *acred,
                                   afs_size_t asparm0, afs_size_t asparm1,
-                                  void *apparm0);
+                                  void *apparm0, void *apparm1,
+                                  void *apparm2);
 extern void afs_SetCheckServerNATmode(int isnat);
 extern void afs_CheckServerDaemon(void);
 extern int afs_CheckRootVolume(void);
 extern void afs_BRelease(register struct brequest *ab);
 extern int afs_BBusy(void);
 extern int afs_BioDaemon(afs_int32 nbiods);
+#ifdef AFS_DARWIN80_ENV
+extern int afs_BackgroundDaemon(struct afs_uspc_param *uspc, void *param1, void *param2);
+#else
 extern void afs_BackgroundDaemon(void);
+#endif
 extern void shutdown_daemons(void);
 extern int afs_sgidaemon(void);
 
@@ -518,7 +523,7 @@ extern struct afs_exporter *afs_nfsexporter;
 extern void afs_nfsclient_init(void);
 extern int afs_nfsclient_reqhandler(struct afs_exporter *exporter,
                                    afs_ucred_t **cred,
-                                   afs_int32 host, afs_int32 *pagparam,
+                                   afs_uint32 host, afs_int32 *pagparam,
                                    struct afs_exporter **outexporter);
 extern void shutdown_nfsclnt(void);
 
@@ -548,6 +553,7 @@ extern const afs_ucred_t *afs_osi_proc2cred(afs_proc_t * pr);
 extern afs_lock_t osi_fsplock;
 extern afs_lock_t osi_flplock;
 #endif
+
 extern void *afs_osi_Alloc_debug(size_t x, char *func, int line);
 #ifndef afs_osi_Alloc_NoSleep
 extern void *afs_osi_Alloc_NoSleep(size_t x);
@@ -567,6 +573,8 @@ extern void shutdown_osinet(void);
 /* afs_osi_pag.c */
 #if defined(AFS_SUN5_ENV)
 extern int afs_setpag(afs_ucred_t **credpp);
+#elif defined(AFS_FBSD_ENV)
+extern int afs_setpag(struct thread *td, void *args);
 #elif defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
 extern int afs_setpag(afs_proc_t *p, void *args, int *retval);
 #else
@@ -575,19 +583,15 @@ extern int afs_setpag(void);
        
 extern afs_uint32 genpag(void);
 extern afs_uint32 getpag(void);
-#if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
+#if defined(AFS_FBSD_ENV)
+extern int AddPag(struct thread *td, afs_int32 aval, afs_ucred_t **credpp);
+#elif defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
 extern int AddPag(afs_proc_t *p, afs_int32 aval, afs_ucred_t **credpp);
 #else
 extern int AddPag(afs_int32 aval, afs_ucred_t **credpp);
 #endif
 extern int afs_InitReq(register struct vrequest *av, afs_ucred_t *acred);
-#if defined(UKERNEL)
 extern afs_uint32 afs_get_pag_from_groups(gid_t g0a, gid_t g1a);
-#else
-#ifdef AFS_LINUX26_ONEGROUP_ENV
-extern afs_uint32 afs_get_pag_from_groups(struct group_info *gi);
-#endif
-#endif
 extern void afs_get_groups_from_pag(afs_uint32 pag, gid_t * g0p, gid_t * g1p);
 extern afs_int32 PagInCred(afs_ucred_t *cred);
 
@@ -642,6 +646,7 @@ 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);
+extern int afs_osi_TimedSleep(void *event, afs_int32 ams, int aintok);
 #ifndef afs_osi_Wakeup
 extern int afs_osi_Wakeup(void *event);
 #endif
@@ -701,13 +706,27 @@ extern int usr_setpag(afs_ucred_t **cred, afs_uint32 pagvalue,
 #else
 # if defined AFS_XBSD_ENV
 #  if !defined(AFS_DFBSD_ENV)
+#   if defined(AFS_FBSD_ENV)
+extern int setpag(struct thread *td, struct ucred **cred, afs_uint32 pagvalue,
+                 afs_uint32 * newpag, int change_parent);
+
+#   elif defined(AFS_NBSD40_ENV)
+extern int setpag(struct proc *proc, afs_ucred_t *cred, afs_uint32 pagvalue,
+                 afs_uint32 * newpag, int change_parent);
+#   else
 extern int setpag(afs_proc_t *proc, struct ucred **cred, afs_uint32 pagvalue,
                  afs_uint32 * newpag, int change_parent);
-#  endif
-# endif
+#   endif /* AFS_FBSD_ENV */
+#  endif /* ! AFS_DFBSD_ENV */
+# endif /* AFS_XBSD_ENV */
+#endif /* UKERNEL */
+
+#if defined(AFS_LINUX26_ENV)
+extern afs_int32 osi_get_group_pag(afs_ucred_t *cred);
 #endif
 
 
+
 /* ARCH/osi_vm.c */
 extern int osi_VM_FlushVCache(struct vcache *avc, int *slept);
 extern void osi_VM_StoreAllSegments(struct vcache *avc);
@@ -796,7 +815,6 @@ extern int HandleIoctl(register struct vcache *avc, register afs_int32 acom,
 
 
 /* afs_segments.c */
-extern int afs_StoreMini(register struct vcache *avc, struct vrequest *areq);
 extern int afs_StoreAllSegments(register struct vcache *avc,
                                struct vrequest *areq, int sync);
 extern int afs_InvalidateAllSegments(struct vcache *avc);
@@ -820,6 +838,7 @@ extern struct server *afs_GetServer(afs_uint32 * aserver, afs_int32 nservers,
                                    afs_int32 acell, u_short aport,
                                    afs_int32 locktype, afsUUID * uuidp,
                                    afs_int32 addr_uniquifier);
+extern void afs_GetCapabilities(struct server *ts);
 extern void ForceAllNewConnections(void);
 extern void afs_MarkServerUpOrDown(struct srvAddr *sa, int a_isDown);
 extern afs_int32 afs_ServerDown(struct srvAddr *sa);
@@ -879,6 +898,19 @@ extern int copyin_afs_ioctl(user_addr_t cmarg, struct afs_ioctl *dst);
 #else
 extern int copyin_afs_ioctl(caddr_t cmarg, struct afs_ioctl *dst);
 #endif
+
+#if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
+#ifdef AFS_DARWIN100_ENV
+extern int afs3_syscall(afs_proc_t *p, void *args, unsigned int *retval);
+#elif defined(AFS_FBSD_ENV)
+extern int afs3_syscall(struct thread *p, void *args);
+#elif defined(AFS_NBSD40_ENV)
+extern int afs3_syscall(struct lwp *p, void *args);
+#else
+extern int afs3_syscall(afs_proc_t *p, void *args, long *retval);
+#endif
+#endif
+
 #ifdef UKERNEL
 extern int Afs_syscall(void);
 #endif
@@ -906,6 +938,8 @@ extern struct unixuser *afs_FindUser(afs_int32 auid, afs_int32 acell,
                                     afs_int32 locktype);
 extern struct unixuser *afs_GetUser(register afs_int32 auid, afs_int32 acell,
                                    afs_int32 locktype);
+extern void afs_NotifyUser(struct unixuser *auser, int event);
+
 #if AFS_GCPAGS
 extern afs_int32 afs_GCPAGs(afs_int32 * ReleasedCount);
 extern void afs_GCPAGs_perproc_func(afs_proc_t * pproc);
@@ -917,9 +951,10 @@ extern void afs_CheckTokenCache(void);
 extern void afs_ResetAccessCache(afs_int32 uid, int alock);
 extern void afs_ResetUserConns(register struct unixuser *auser);
 extern void afs_SetPrimary(register struct unixuser *au, register int aflag);
-
+extern void afs_MarkUserExpired(afs_int32 pag);
 
 /* afs_util.c */
+extern afs_int32 afs_strtoi_r(const char *str, char **endptr, afs_uint32 *ret);
 extern afs_int32 afs_calc_inum (afs_int32 volume, afs_int32 vnode);
 #ifndef afs_cv2string
 extern char *afs_cv2string(char *ttp, afs_uint32 aval);
@@ -956,8 +991,10 @@ extern afs_int32 afs_data_pointer_to_int32(const void *p);
 extern void afs_warn();
 extern void afs_warnuser();
 #else
-extern void afs_warn(char *fmt, ...);
-extern void afs_warnuser(char *fmt, ...);
+extern void afs_warn(char *fmt, ...)
+       AFS_ATTRIBUTE_FORMAT(__printf__, 1, 2);
+extern void afs_warnuser(char *fmt, ...)
+       AFS_ATTRIBUTE_FORMAT(__printf__, 1, 2);
 #endif
 
 /* afs_vcache.c */
@@ -1000,6 +1037,8 @@ extern struct vcache *afs_GetRootVCache(struct VenusFid *afid,
                                        struct volume *tvolp);
 extern struct vcache *afs_NewVCache(struct VenusFid *afid,
                                    struct server *serverp);
+extern struct vcache *afs_NewBulkVCache(struct VenusFid *afid,
+                                       struct server *serverp, int seq);
 extern int afs_VerifyVCache2(struct vcache *avc, struct vrequest *areq);
 extern struct vcache *afs_GetVCache(register struct VenusFid *afid,
                                    struct vrequest *areq, afs_int32 * cached,
@@ -1314,7 +1353,7 @@ extern void afs_ntohuuid(afsUUID * uuidp);
 extern afs_int32 afs_uuid_create(afsUUID * uuid);
 extern u_short afs_uuid_hash(afsUUID * uuid);
 
-#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) || defined(AFS_SGI62_ENV)
+#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) || defined(AFS_SGI62_ENV) || defined(UKERNEL)
 #include "osi_prototypes.h"
 #endif