From 861fa50de1d54ed7b333e9b86c63262707c0d3a9 Mon Sep 17 00:00:00 2001 From: Nickolai Zeldovich Date: Mon, 10 May 2004 14:51:16 +0000 Subject: [PATCH] ukernel-take-two-20040415 Make uafs work enough to support readdir() ==================== This delta was composed from multiple commits as part of the CVS->Git migration. The checkin message with each commit was inconsistent. The following are the additional commit messages. ==================== Make uafs work enough to support readdir() (add casts for irix) --- src/afs/UKERNEL/afs_usrops.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/afs/UKERNEL/afs_usrops.c b/src/afs/UKERNEL/afs_usrops.c index 5776302..2aa393e 100644 --- a/src/afs/UKERNEL/afs_usrops.c +++ b/src/afs/UKERNEL/afs_usrops.c @@ -1418,7 +1418,7 @@ ConfigCell(register struct afsconf_cell *aci, char *arock, { register int isHomeCell; register int i; - afs_int32 cellFlags; + afs_int32 cellFlags = 0; afs_int32 hosts[MAXHOSTSPERCELL]; /* figure out if this is the home cell */ @@ -1448,7 +1448,8 @@ ConfigCellAlias(aca, arock, adir) char *arock; struct afsconf_dir *adir; { - call_syscall(AFSOP_ADDCELLALIAS, aca->aliasName, aca->realName, 0, 0, 0); + call_syscall(AFSOP_ADDCELLALIAS, (long)aca->aliasName, + (long)aca->realName, 0, 0, 0); return 0; } @@ -1684,7 +1685,7 @@ uafs_Init(char *rn, char *mountDirParam, char *confDirParam, */ if (afsd_debug) printf("%s: Calling AFSOP_RXLISTENER_DAEMON\n", rn); - fork_syscall(AFSCALL_CALL, AFSOP_RXLISTENER_DAEMON, FALSE); + fork_syscall(AFSCALL_CALL, AFSOP_RXLISTENER_DAEMON, FALSE, FALSE, FALSE); /* * Start the RX event handler. @@ -1786,7 +1787,8 @@ uafs_Init(char *rn, char *mountDirParam, char *confDirParam, call_syscall(AFSCALL_CALL, AFSOP_CACHEINFO, (long)fullpn_DCacheFile, 0, 0, 0); - call_syscall(AFSCALL_CALL, AFSOP_CELLINFO, fullpn_CellInfoFile, 0, 0, 0); + call_syscall(AFSCALL_CALL, AFSOP_CELLINFO, (long)fullpn_CellInfoFile, 0, + 0, 0); /* * Pass the kernel the name of the workstation cache file holding the @@ -1809,6 +1811,12 @@ uafs_Init(char *rn, char *mountDirParam, char *confDirParam, call_syscall(AFSCALL_CALL, AFSOP_AFSLOG, (long)fullpn_AFSLogFile, 0, 0, 0); + /* + * Tell the kernel about each cell in the configuration. + */ + afsconf_CellApply(afs_cdir, ConfigCell, NULL); + afsconf_CellAliasApply(afs_cdir, ConfigCellAlias, NULL); + if (afsd_verbose) printf("%s: Forking AFS daemon.\n", rn); fork_syscall(AFSCALL_CALL, AFSOP_START_AFS); @@ -1823,14 +1831,6 @@ uafs_Init(char *rn, char *mountDirParam, char *confDirParam, fork_syscall(AFSCALL_CALL, AFSOP_START_BKG); } - /* - * Tell the kernel about each cell in the configuration. - */ - afsconf_CellApply(afs_cdir, ConfigCell, NULL); - afsconf_CellAliasApply(afs_cdir, ConfigCellAlias, NULL); - - fork_syscall(AFSCALL_CALL, AFSOP_SET_THISCELL, afs_LclCellName); - if (afsd_verbose) printf("%s: Calling AFSOP_ROOTVOLUME with '%s'\n", rn, rootVolume); call_syscall(AFSCALL_CALL, AFSOP_ROOTVOLUME, (long)rootVolume, 0, 0, 0); -- 1.9.4