ticket-2618-patches-20031207
authorJeffrey Altman <jaltman@grand.central.org>
Sun, 7 Dec 2003 22:49:00 +0000 (22:49 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Sun, 7 Dec 2003 22:49:00 +0000 (22:49 +0000)
TICKET 2618

flexelint patches for prototype handling from Joe Beuhler

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

This patch adds a bunch of missing prototypes, makes various
corrections to global prototypes, and removes global declarations that
are not needed.

One set of added prototypes is commented out because it applies to
some printf-like functions that are implemented the way it used to be
done before varargs existed, and they need to be unprototyped or the
code will fail to compile.  (There are a number of functions in the
OpenAFS code that need to be converted to use varargs...)

There is one place of note in src/WINNT/afsd/fs.c where typedefs for
afs_int32 and afs_uint32 conflict with afs/stds.h.  I just added a
note to that effect.

Prototypes in src/WINNT/afsd/fs.c are incorrect for Windows NT.  I
don't know whether the return type involved changes from platform to
platform -- they come from .xg files.

Some prototypes are now commented out or #ifdef'd to match the code
that uses them.

Some global variables conflict between modules and have been made static.
The bufferBlock variable was of two completely different types...

In src/config/stds.h, I changed the declaration of afs_intmax_t to
reflect the fact that the Windows platform supports 64 bit integers.
This may be incorrect semantically, but I believe it is needed for the
%llx format to match afs_intmax_t arguments (for printing of inodes
mainly, I believe).

There were two different declarations for the rxkad_stats structure --
I synced them up.

- Joe

Removed the conflicting typedefs from src/WINNT/afsd/fs.c

Removed the changes to src/config/stds.h.  Added declaration of
AFS_64BIT_CLIENT to src/config/NTMakefile.i386_nt40 instead.

Do not remove unused variables which are defintions of data type
values.  Instead comment them out to avoid space utilization and
warnings.

116 files changed:
src/WINNT/afsadmsvr/TaAfsAdmSvrMain.cpp
src/WINNT/afsapplib/fastlist.cpp
src/WINNT/afsclass/worker.cpp
src/WINNT/afsd/afsd_init.c
src/WINNT/afsd/afsd_service.c
src/WINNT/afsd/cm.h
src/WINNT/afsd/cm_buf.c
src/WINNT/afsd/cm_callback.c
src/WINNT/afsd/cm_dcache.c
src/WINNT/afsd/cm_dns.c
src/WINNT/afsd/cm_freelance.c
src/WINNT/afsd/cm_ioctl.c
src/WINNT/afsd/cm_rpc.c
src/WINNT/afsd/cm_scache.c
src/WINNT/afsd/cm_vnodeops.c
src/WINNT/afsd/fs.c
src/WINNT/afsd/smb.c
src/WINNT/afsd/smb.h
src/WINNT/afsd/smb3.c
src/WINNT/afsd/smb_ioctl.c
src/WINNT/afssvrcfg/config_server_page.cpp
src/WINNT/afssvrcfg/get_cur_config.cpp
src/WINNT/afssvrcfg/partitions_page.cpp
src/WINNT/afssvrcfg/salvage_dlg.cpp
src/WINNT/afssvrcfg/services_page.cpp
src/WINNT/afssvrcfg/validation.cpp
src/WINNT/afssvrcfg/volume_utils.cpp
src/WINNT/afssvrmgr/dispguts.cpp
src/WINNT/afssvrmgr/task.cpp
src/WINNT/afssvrmgr/window.cpp
src/WINNT/afsusrmgr/mch_delete.cpp
src/WINNT/afsusrmgr/task.cpp
src/WINNT/client_creds/main.cpp
src/WINNT/install/NSIS/MakeCommon.bat
src/auth/userok.c
src/auth/writeconfig.c
src/bozo/bnode.p.h
src/bozo/bos.c
src/bozo/bosoprocs.c
src/bozo/bosserver.c
src/bozo/cronbnodeops.c
src/bozo/fsbnodeops.c
src/bucoord/bc_status.c
src/bucoord/commands.c
src/bucoord/dlq.c
src/bucoord/dsvs.c
src/bucoord/dump.c
src/bucoord/main.c
src/bucoord/restore.c
src/bucoord/vol_sets.c
src/bucoord/volstub.c
src/budb/database.h
src/budb/procs.c
src/budb/server.c
src/butc/butc_xbsa.c
src/butc/dbentries.c
src/butc/dump.c
src/butc/error_macros.h
src/butc/list.c
src/butc/lwps.c
src/butc/recoverDb.c
src/butc/tcprocs.c
src/config/NTMakefile.i386_nt40
src/config/mkvers.c
src/des/new_rnd_key.c
src/des/read_pssword.c
src/des/stats.h
src/des/test/testit.c
src/des/test/verify.c
src/dir/buffer.c
src/dir/dir.h
src/dir/salvage.c
src/kauth/admin_tools.c
src/kauth/kadatabase.c
src/kauth/kaserver.c
src/kauth/kautils.p.h
src/kauth/kpasswd.c
src/kauth/krb_udp.c
src/libadmin/bos/afs_bosAdmin.c
src/libadmin/kas/afs_kasAdmin.c
src/libadmin/pts/afs_ptsAdmin.c
src/libadmin/test/client.c
src/libadmin/vos/afs_vosAdmin.c
src/libadmin/vos/vosutils.c
src/lwp/fasttime.c
src/lwp/lwp_nt.c
src/lwp/timer.c
src/ptserver/ptclient.c
src/ptserver/testpt.c
src/ptserver/ubik.c
src/rx/rx_clock_nt.c
src/rx/rxdebug.c
src/rxkad/rxkad_client.c
src/rxkad/rxkad_common.c
src/ubik/disk.c
src/ubik/lock.c
src/ubik/ubik.p.h
src/ubik/udebug.c
src/update/server.c
src/util/regex.c
src/util/serverLog.c
src/viced/physio.c
src/vlserver/vlclient.c
src/vlserver/vlserver.c
src/vlserver/vlserver.p.h
src/vlserver/vlutils.c
src/vol/fssync.c
src/vol/ihandle.c
src/vol/ntops.c
src/vol/vol-salvage.c
src/volser/volmain.c
src/volser/volprocs.c
src/volser/volser.p.h
src/volser/vos.c
src/volser/vsprocs.c
src/volser/vsutils.c

index 8cc1a44..b28782e 100644 (file)
@@ -14,16 +14,6 @@ extern "C" {
 
 #include "TaAfsAdmSvrInternal.h"
 
-
-/*
- * DEFINITIONS ________________________________________________________________
- *
- */
-
-extern void AfsAdmSvr_Startup (void);
-extern void AfsAdmSvr_Shutdown (void);
-
-
 /*
  * ROUTINES ___________________________________________________________________
  *
index ec0fe7c..4065c86 100644 (file)
@@ -229,7 +229,7 @@ void FastList_OnStyleChange (HWND hList);
 void FastList_OnSize (HWND hList);
 void FastList_OnPaint (HWND hList);
 void FastList_OnPaintItem (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi);
-void FastList_OnPaintItem_DrawImage (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi, int iImage, LONG xImage, LONG yImage, BOOL fHLines);
+BOOL FastList_OnPaintItem_DrawImage (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi, HIMAGELIST hil, int iImage, LONG xImage, LONG yImage, BOOL fHLines);
 void FastList_OnPaintItem_GetItemColors (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi, COLORREF *pclrFore, COLORREF *pclrBack);
 void FastList_OnPaintItem_TreeLines (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi, DWORD dwLines, RECT *prLines);
 void FastList_OnPaintItem_Large (LPFASTLIST pfl, LPFASTLISTDRAWITEM pdi);
index 7ab8a6c..8ba157e 100644 (file)
@@ -373,13 +373,9 @@ static lpUtilDatabaseServerGetDone_t lpUtilDatabaseServerGetDone = NULL;
  *
  */
 
-BOOL Worker_StartOneThread (BOOL fActivate, ULONG *pStatus = NULL);
-
 BOOL Worker_LoadLibraries (ULONG *pStatus);
 void Worker_FreeLibraries (void);
 
-DWORD _stdcall Worker_ThreadProc (LPARAM lp);
-
 DWORD Worker_PerformTask (WORKERTASK wtask, LPWORKERPACKET lpwp);
 
 
index 00fadf2..d7f351e 100644 (file)
@@ -91,8 +91,6 @@ int cm_dnsEnabled = 1;
 
 char cm_NetBiosName[32];
 
-void cm_InitFakeRootDir();
-
 void
 afsi_start()
 {
index 671c1ba..4946eb8 100644 (file)
@@ -30,8 +30,6 @@
 
 extern void afsi_log(char *pattern, ...);
 
-extern char AFSConfigKeyName[];
-
 HANDLE WaitToTerminate;
 
 int GlobalStatus;
index 6001997..c2e6f3e 100644 (file)
 #endif /* DJGPP */
 
 /* from .xg file */
-long VL_GetEntryByID(struct rx_connection *, long, long, struct vldbentry *);
-long VL_GetEntryByNameO(struct rx_connection *, char *, struct vldbentry *);
-long VL_ProbeServer(struct rx_connection *);
-long VL_GetEntryBYIDN(struct rx_connection *, long, long, struct nvldbentry *);
-long VL_GetEntryByNameN(struct rx_connection *, char *, struct nvldbentry *);
+/* FIXME: these were "long" but Windows NT wants "int" */
+int VL_GetEntryByID(struct rx_connection *, long, long, struct vldbentry *);
+int VL_GetEntryByNameO(struct rx_connection *, char *, struct vldbentry *);
+int VL_ProbeServer(struct rx_connection *);
+int VL_GetEntryBYIDN(struct rx_connection *, long, long, struct nvldbentry *);
+int VL_GetEntryByNameN(struct rx_connection *, char *, struct nvldbentry *);
 
 /* from .xg file */
 extern StartRXAFS_FetchData (struct rx_call *,
index 69c928d..5a89ffa 100644 (file)
@@ -22,7 +22,7 @@
 
 #include "afsd.h"
 
-void afsi_log();
+extern void afsi_log(char *pattern, ...);
 
 /* This module implements the buffer package used by the local transaction
  * system (cm).  It is initialized by calling cm_Init, which calls buf_Init;
index 507d9f5..6194fbf 100644 (file)
@@ -25,6 +25,8 @@
 
 #include "afsd.h"
 
+/*extern void afsi_log(char *pattern, ...);*/
+
 /* read/write lock for all global storage in this module */
 osi_rwlock_t cm_callbackLock;
 
index fb7b251..aba7a79 100644 (file)
 
 #include "afsd.h"
 
+#ifdef DEBUG
+extern void afsi_log(char *pattern, ...);
+#endif
+
 osi_mutex_t cm_bufGetMutex;
 #ifdef AFS_FREELANCE_CLIENT
 extern osi_mutex_t cm_Freelance_Lock;
index 5f62d90..59e07f2 100644 (file)
@@ -19,6 +19,8 @@
 #include <lwp.h>
 #include <afs/afsint.h>
 
+/*extern void afsi_log(char *pattern, ...);*/
+
 extern int errno;
 static char dns_addr[30];
 #ifdef DJGPP
index efa1685..d308122 100644 (file)
@@ -18,6 +18,8 @@
 #include "cm_freelance.h"
 #include "stdio.h"
 
+extern void afsi_log(char *pattern, ...);
+
 int cm_noLocalMountPoints;
 int cm_fakeDirSize;
 int cm_fakeDirCallback=0;
index 9125589..0057e20 100644 (file)
@@ -48,9 +48,6 @@
 #define MAX_PATH 260
 
 osi_mutex_t cm_Afsdsbmt_Lock;
-#ifdef AFS_FREELANCE_CLIENT
-extern osi_mutex_t cm_Freelance_Lock;
-#endif
 
 extern afs_int32 cryptall;
 
index 882e056..17845c3 100644 (file)
@@ -37,7 +37,7 @@
  * can match them up.  A list of session keys, searched by UUID, is maintained.
  */
 
-extern void afsi_log();
+extern void afsi_log(char *pattern, ...);
 
 typedef struct tokenEvent {
        afs_uuid_t uuid;
index a72545e..5b5694c 100644 (file)
@@ -22,6 +22,8 @@
 
 #include "afsd.h"
 
+/*extern void afsi_log(char *pattern, ...);*/
+
 extern osi_hyper_t hzero;
 
 /* hash table stuff */
index 7e7da24..98d2668 100644 (file)
 #define ROVOL  1
 #define BACKVOL        2
 
+#ifdef DEBUG
+extern void afsi_log(char *pattern, ...);
+#endif
+
 unsigned int cm_mountRootGen = 0;
 
 char cm_sysName[100];
index 1b6d8eb..c13406e 100644 (file)
 #include <osi.h>
 #include <afsint.h>
 
-typedef long afs_int32;
-typedef unsigned long afs_uint32;
-typedef short afs_int16;
-typedef unsigned short afs_uint16;
-
 #include "fs.h"
 #include "fs_utils.h"
 #include "cmd.h"
index c7517ba..ccfaca9 100644 (file)
@@ -57,7 +57,7 @@ long ongoingOps = 0;
 
 unsigned int sessionGen = 0;
 
-void afsi_log();
+extern void afsi_log(char *pattern, ...);
 
 osi_hyper_t hzero = {0, 0};
 osi_hyper_t hones = {0xFFFFFFFF, -1};
@@ -157,8 +157,8 @@ smb_waitingLock_t *smb_allWaitingLocks;
 void smb_DispatchPacket(smb_vc_t *vcp, smb_packet_t *inp, smb_packet_t *outp,
        NCB *ncbp, raw_write_cont_t *rwcp);
 void smb_NetbiosInit();
-extern char cm_HostName[];
 #ifdef DJGPP
+extern char cm_HostName[];
 extern char cm_confDir[];
 #endif
 
index ac677e1..874cfa5 100644 (file)
@@ -296,7 +296,7 @@ typedef struct smb_waitingLock {
        void *lockp;
 } smb_waitingLock_t;
 
-smb_waitingLock_t *smb_allWaitingLocks;
+extern smb_waitingLock_t *smb_allWaitingLocks;
 
 typedef long (smb_proc_t)(smb_vc_t *vcp, smb_packet_t *inp, smb_packet_t *outp);
 
@@ -348,6 +348,10 @@ extern smb_username_t *smb_FindUserByName(char *usern, char *machine, int flags)
 
 extern smb_user_t *smb_FindUserByNameThisSession(smb_vc_t *vcp, char *usern); 
 
+extern smb_username_t *smb_FindUserByName(char *usern, char *machine, int flags);
+
+extern smb_user_t *smb_FindUserByNameThisSession(smb_vc_t *vcp, char *usern);
+
 extern void smb_ReleaseUID(smb_user_t *uidp);
 
 extern cm_user_t *smb_GetUser(smb_vc_t *vcp, smb_packet_t *inp);
@@ -429,6 +433,8 @@ extern void smb_FormatResponsePacket(smb_vc_t *vcp, smb_packet_t *inp,
 
 extern char *myCrt_2Dispatch(int i); 
 
+extern char *myCrt_2Dispatch(int i);
+
 extern unsigned int smb_Attributes(cm_scache_t *scp);
 
 extern int smb_ChainFID(int fid, smb_packet_t *inp);
index 827fee3..7938f57 100644 (file)
@@ -27,8 +27,6 @@
 
 #include "smb.h"
 
-extern smb_vc_t *dead_vcp;
-
 extern osi_hyper_t hzero;
 
 smb_packet_t *smb_Directory_Watches = NULL;
index 9b6481b..99b41e9 100644 (file)
@@ -28,7 +28,6 @@
 smb_ioctlProc_t *smb_ioctlProcsp[SMB_IOCTL_MAXPROCS];
 
 /*extern unsigned char smb_LANadapter;*/
-extern LANA_ENUM lana_list;
 
 void smb_InitIoctl(void)
 {
index f8d0edc..8174251 100644 (file)
@@ -85,11 +85,8 @@ static void ShowConfigControls(BOOL bShow = TRUE);
 static void UpdateConfigProgress(int nStepNum);
 static void ShowTitle();
 static void ViewLog();
-static void LogConfigState();
 static void ShowConfigFailedMsg();
 static BOOL Unconfiguring();
-static void SetButtonText(UINT uiMsgID);
-static char *GetAfsRootDir();
 static BOOL GetCellServDB(char **ppszCellServDB);
 static BOOL FreeCellServDB();
 static char *GetVicepName();
index dc4999a..6766e79 100644 (file)
@@ -44,7 +44,6 @@ static vos_vldbEntry_t vldbRootCellEntry;
  */
 BOOL CALLBACK GetCurConfigDlgProc(HWND hwndDlg, UINT msg, WPARAM wp, LPARAM lp);
 static DWORD CALLBACK GetCurrentConfigState(LPPROGRESSDISPLAY ppd, LPARAM lp);
-static void SetConfigDefaults();
 static void ShowMsg(UINT uiMsgID);
 static void NextStep(UINT uiMsgID);
 
index 8a7fa05..ffa1f6b 100644 (file)
@@ -44,7 +44,8 @@ static TCHAR szYes[cchRESOURCE];
 static TCHAR szNo[cchRESOURCE];
 
 static const UINT DISK_DRIVE_IMAGE = 0;
-static const UINT DISABLED_DISK_DRIVE_IMAGE = 1;
+//static const UINT DISABLED_DISK_DRIVE_IMAGE = 1;
+//static const UINT DISK_DRIVE_WITH_WARNING_IMAGE = 2;
 
 // Remember the config state of the FS so we can detect when it changes.
 // When it changes we must redisplay the partition info.
index 3352acf..4b30e13 100644 (file)
@@ -50,7 +50,6 @@ static int nNumProcesses;
  *
  */
 static void OnInitDialog(HWND hwndDlg);
-static void CheckEnableButtons();
 static void OnAdvanced();
 static void UpdateControls();
 static BOOL OnSalvage();
index 6dbe355..091ca90 100644 (file)
@@ -70,7 +70,7 @@ static void CheckEnableSc();
 static void EnableScMachine(BOOL bEnable = TRUE);
 static void OnScMachineChange();
 static void CheckEnableBak();
-static void PrepareToConfig(CONFIG_STATE& state, BOOL bRunning, BOOL bOn);
+static BOOL PrepareToConfig(CONFIG_STATE& state, BOOL bRunning, BOOL bOn, UINT uiCtrlID);
 static BOOL PrepareToConfig();
 static void CheckEnableApply();
 
index 40050a3..0bfb75a 100644 (file)
  * PROTOTYPES _________________________________________________________________
  *
  */
-BOOL Validation_IsValid(TCHAR *pszInput, VALIDATION_TYPE type, BOOL bShowError);
-
 static BOOL CheckAfsPartitionName(TCHAR *pszInput, int &nErrorMsgResID);
 static BOOL CheckAfsCellName(TCHAR *pszInput, int &nErrorMsgResID);
 static BOOL CheckAfsPassword(TCHAR *pszInput, int &nErrorMsgResID);
 static BOOL CheckAfsUid(TCHAR *pszInput, int &nErrorMsgResID);
 static BOOL CheckAfsServerName(TCHAR *pszInput, int &nErrorMsgResID);
-static BOOL CheckFileName(TCHAR *pszInput, int &nErrorMsgResID);
-static BOOL CheckPath(TCHAR *pszInput, int &nErrorMsgResID);
 static void ShowError(int nErrorMsgResID);
 
 
index 83b4c54..039176a 100644 (file)
@@ -29,7 +29,7 @@ extern "C" {
  */
 static HWND m_hDriveList = 0;
 
-static const UINT MAX_DRIVES = 26;
+//static const UINT MAX_DRIVES = 26;
 static const UINT DISK_DRIVE_IMAGE = 0;
 static const UINT DISABLED_DISK_DRIVE_IMAGE = 1;
 static const UINT DISK_DRIVE_WITH_WARNING_IMAGE = 2;
index 35db7ad..dae9a37 100644 (file)
@@ -118,8 +118,8 @@ void Display_Servers_Internal (LPDISPLAYREQUEST pdr)
 
    // Add an entry in the Servers list for each server in the cell.
    //
-   LPIDENT lpiSelStart = (LPIDENT)FL_GetSelectedData (pdr->hList);
-   BOOL fRefresh = FALSE;
+//   LPIDENT lpiSelStart = (LPIDENT)FL_GetSelectedData (pdr->hList);
+//   BOOL fRefresh = FALSE;
 
    LPCELL lpCell;
    if (!g.lpiCell || !(lpCell = g.lpiCell->OpenCell()))
index 9011f94..775d267 100644 (file)
@@ -81,10 +81,6 @@ extern "C" {
  *
  */
 
-DWORD WINAPI Task_ThreadProc (PVOID lp);
-
-void Task_Perform (LPTASKPACKET ptp);
-
 #ifdef DEBUG
 void Task_ExportCell (LPTASKPACKET ptp);
 #endif
index 473dd50..4b830b1 100644 (file)
@@ -100,9 +100,7 @@ rwWindowData awdSplitServer[] = {
 void Main_OnNotifyFromDispatch (LPNOTIFYSTRUCT lpns);
 
 void Main_OnPreviewPane (BOOL fPreviewNew, BOOL fVertNew, BOOL fStoreView);
-void Main_OnServerView (int lvsNew);
 DWORD WINAPI Main_OnOpenServers_ThreadProc (PVOID lp);
-void Main_OnEndTask_Properties (LPTASKPACKET ptp);
 
 void Main_SubclassServers (HWND hDlg);
 
index 74eda42..dfdb722 100644 (file)
@@ -30,7 +30,6 @@ extern "C" {
 BOOL CALLBACK Machine_Delete_DlgProc (HWND hDlg, UINT msg, WPARAM wp, LPARAM lp);
 void Machine_Delete_OnInitDialog (HWND hDlg);
 void Machine_Delete_OnDestroy (HWND hDlg);
-void Machine_Delete_OnCheck (HWND hDlg);
 void Machine_Delete_OnOK (HWND hDlg);
 
 
index 91c3524..4923ca5 100644 (file)
@@ -33,10 +33,6 @@ extern "C" {
  *
  */
 
-DWORD WINAPI Task_ThreadProc (PVOID lp);
-
-void Task_Perform (LPTASKPACKET ptp);
-
 void Task_OpenCell (LPTASKPACKET ptp);
 void Task_UpdCreds (LPTASKPACKET ptp);
 void Task_UpdUsers (LPTASKPACKET ptp);
index a4bc850..9de534f 100644 (file)
@@ -44,7 +44,6 @@ GLOBALS g;
 
 BOOL InitApp (LPSTR pszCmdLineA);
 void ExitApp (void);
-void Quit (void);
 void PumpMessage (MSG *pmsg);
 BOOL IsServerInstalled (void);
 
index c2e372d..6ac81eb 100644 (file)
@@ -8,5 +8,5 @@ echo !define MUI_VERSION %1 >> nsi-includes.nsi
 echo !define MUI_MAJORVERSION 1 >>nsi-includes.nsi
 echo !define MUI_MINORVERSION 2 >>nsi-includes.nsi
 echo !define MUI_PATCHLEVEL 1100 >>nsi-includes.nsi
-if "%AFSDEV_CL% == "1310" echo !define CL1310 1 >> nsi-includes.nsi
+if "%AFSDEV_CL%" == "1310" echo !define CL1310 1 >> nsi-includes.nsi
 if "%AFSDEV_BUILDTYPE%" == "CHECKED" echo !define DEBUG 1 >>nsi-includes.nsi
index 4001311..7b7abd4 100644 (file)
@@ -59,7 +59,7 @@ afsconf_CheckAuth(adir, acall)
 UNLOCK_GLOBAL_MUTEX}
 #endif /* !defined(UKERNEL) */
 
-static
+static int
 GetNoAuthFlag(adir)
      struct afsconf_dir *adir;
 {
@@ -71,6 +71,7 @@ GetNoAuthFlag(adir)
 }
 
 
+int
 afsconf_GetNoAuthFlag(adir)
      struct afsconf_dir *adir;
 {
@@ -80,6 +81,7 @@ afsconf_GetNoAuthFlag(adir)
     UNLOCK_GLOBAL_MUTEX return rc;
 }
 
+void
 afsconf_SetNoAuthFlag(adir, aflag)
      struct afsconf_dir *adir;
      int aflag;
@@ -104,6 +106,7 @@ afsconf_SetNoAuthFlag(adir, aflag)
 UNLOCK_GLOBAL_MUTEX}
 
 /* deletes a user from the UserList file */
+int
 afsconf_DeleteUser(adir, auser)
      struct afsconf_dir *adir;
      register char *auser;
@@ -190,6 +193,7 @@ afsconf_DeleteUser(adir, auser)
 }
 
 /* returns nth super user from the UserList file */
+int
 afsconf_GetNthUser(adir, an, abuffer, abufferLen)
      struct afsconf_dir *adir;
      afs_int32 an;
@@ -262,6 +266,7 @@ FindUser(adir, auser)
 }
 
 /* add a user to the user list, checking for duplicates */
+int
 afsconf_AddUser(adir, aname)
      struct afsconf_dir *adir;
      char *aname;
index 918504f..eca6616 100644 (file)
@@ -48,7 +48,7 @@ RCSID
     by acellInfo parm.   Useful only on the server (which describes only one cell).
 */
 
-static
+static int
 VerifyEntries(aci)
      register struct afsconf_cell *aci;
 {
@@ -90,6 +90,7 @@ VerifyEntries(aci)
    This is a handle to the internal cache that is maintained by the bosserver.
    */
 
+int
 afsconf_SetCellInfo(adir, apath, acellInfo)
      struct afsconf_dir *adir;
      char *apath;
@@ -101,6 +102,7 @@ afsconf_SetCellInfo(adir, apath, acellInfo)
     return code;
 }
 
+int
 afsconf_SetExtendedCellInfo(adir, apath, acellInfo, clones)
      struct afsconf_dir *adir;
      char *apath;
index 661938b..594da83 100644 (file)
@@ -135,3 +135,5 @@ extern int bnode_NewProc( /* bnode, execstring, corename, procaddr */ );
 extern int bnode_Init( /* no parms */ );
 extern afs_int32 bnode_Create();
 extern struct bnode *bnode_FindInstance();
+extern int bnode_WaitStatus(register struct bnode *abnode, int astatus);
+extern int bnode_SetStat(register struct bnode *abnode, register int agoal);
index 086c68d..7d3c837 100644 (file)
@@ -47,13 +47,6 @@ RCSID
 #include <ubik.h>
 #include <afs/ktime.h>
 
-
-
-extern char *volutil_PartitionName();
-extern struct rx_call *rx_NewCall();
-extern char *volutil_PartitionName();
-extern struct hostent *hostutil_GetHostByName();
-
 static IStatServer();
 static DoStat();
 
index 3d1181c..4d7d65e 100644 (file)
@@ -53,7 +53,6 @@ RCSID
 extern struct ktime bozo_nextRestartKT, bozo_nextDayKT;
 
 extern struct afsconf_dir *bozo_confdir;
-extern struct rx_securityClass *bozo_rxsc[2];
 extern int bozo_newKTs;
 extern int DoLogging;
 #ifdef BOS_RESTRICTED_MODE
index 070c4ee..e088810 100644 (file)
@@ -51,7 +51,6 @@ RCSID
 #define BOZO_LWP_STACKSIZE     16000
 extern int BOZO_ExecuteRequest();
 extern int RXSTATS_ExecuteRequest();
-extern int afsconf_GetKey();
 extern struct bnode_ops fsbnode_ops, ezbnode_ops, cronbnode_ops;
 
 void bozo_Log();
@@ -61,7 +60,6 @@ static char *bozo_pid;
 struct rx_securityClass *bozo_rxsc[3];
 const char *bozo_fileName;
 FILE *bozo_logFile;
-extern int rx_stackSize;       /* for rx_SetStackSize macro */
 
 int DoLogging = 0;
 int DoSyslog = 0;
index ecf0e6a..7fecb2c 100644 (file)
@@ -41,7 +41,6 @@ static int cron_timeout(), cron_getstat(), cron_setstat(), cron_delete();
 static int cron_procexit(), cron_getstring(), cron_getparm(), cron_restartp();
 static int cron_hascore();
 struct bnode *cron_create();
-extern char *ktime_DateOf();
 
 #define        SDTIME          60      /* time in seconds given to a process to evaporate */
 
index dc55897..2ac65e4 100644 (file)
@@ -45,7 +45,6 @@ static int fs_timeout(), fs_getstat(), fs_setstat(), fs_delete();
 static int fs_procexit(), fs_getstring(), fs_getparm(), fs_restartp();
 static int fs_hascore();
 struct bnode *fs_create();
-struct bnode *fsmr_create();
 
 static SetNeedsClock();
 static NudgeProcs();
index 8cf694b..0285f1a 100644 (file)
@@ -41,6 +41,10 @@ RCSID
     curPollPtr->flags &= ~(clear);             \
     unlock_Status();
 
+extern struct bc_config *bc_globalConfig;
+extern afs_int32 bc_GetConn(struct bc_config *aconfig, afs_int32 aport, struct rx_connection **tconn);
+extern statusP findStatus(afs_uint32 taskId);
+
 /* globals for backup coordinator status management */
 
 dlqlinkT statusHead;           /* chain of status blocks */
@@ -149,8 +153,6 @@ statusWatcher()
     PROCESS dispatchPid;
 
     afs_int32 code = 0;
-    extern struct bc_config *bc_globalConfig;
-    extern struct rx_connection *bc_GetConn();
 
     lastTaskCode = 0;
 
@@ -431,7 +433,6 @@ waitForTask(taskId)
 {
     statusP ptr;
     afs_int32 done = 0, rcode, t;
-    extern statusP findStatus();
 
     t = (TASK_DONE | ABORT_DONE | TASK_ERROR);
     while (!done) {
index cadd173..06179b4 100644 (file)
@@ -45,7 +45,6 @@ RCSID
 
 
 extern struct bc_config *bc_globalConfig;
-extern char *ktime_GetDateUsage();
 extern struct bc_dumpSchedule *bc_FindDumpSchedule();
 extern struct bc_volumeSet *bc_FindVolumeSet(struct bc_config *cfg,
                                             char *name);
@@ -53,12 +52,7 @@ extern struct bc_dumpTask bc_dumpTasks[BC_MAXSIMDUMPS];
 extern struct ubik_client *cstruct;
 extern int bc_Dumper();                /* function to do dumps */
 extern int bc_Restorer();      /* function to do restores */
-extern void bc_HandleMisc();
-extern afs_int32 ScanDumpHdr();
-extern afs_int32 ScanTapeVolume();
 extern char *whoami;
-extern int VL_ListEntry();
-extern int VL_ListAttributesN2();
 extern struct ktc_token ttoken;
 extern char *tailCompPtr();
 extern statusP createStatusNode();
@@ -3066,6 +3060,7 @@ dumpInfo(dumpid, detailFlag)
     return (code);
 }
 
+int
 compareDump(ptr1, ptr2)
      struct budb_dumpEntry *ptr1, *ptr2;
 {
index 1e526a6..05a994f 100644 (file)
@@ -89,6 +89,7 @@ dlqLinkb(headptr, entryptr)
  *     move all the items on the fromptr and append to the toptr's list
  */
 
+void
 dlqMoveb(fromptr, toptr)
      dlqlinkP fromptr;
      dlqlinkP toptr;
index aa954da..a8fc91e 100644 (file)
@@ -38,11 +38,6 @@ RCSID
 #include <afs/bubasics.h>
 #include "bc.h"
 
-extern struct bc_config *bc_globalConfig;
-extern FILE *bc_open();
-extern void bc_HandleMisc();
-extern char *whoami;
-
 static char db_dsvs = 0;       /*Assume debugging output turned off */
 static char mn[] = "dsvs";     /*Module name */
 
index 2682bd9..28af8cb 100644 (file)
@@ -43,7 +43,6 @@ RCSID
 
 struct bc_dumpTask bc_dumpTasks[BC_MAXSIMDUMPS];
 
-extern struct bc_config *bc_globalConfig;
 extern char *bc_CopyString();
 extern void bc_HandleMisc();
 extern char *whoami;
index 1da1b10..db9cd4f 100644 (file)
@@ -51,7 +51,6 @@ RCSID
 int localauth, interact;
 char tcell[64];
 
-extern int BC_ExecuteRequest();
 extern int bc_AddDumpCmd();
 extern int bc_AddHostCmd();
 extern int bc_AddVolEntryCmd();
@@ -83,8 +82,6 @@ extern int bc_dumpInfoCmd();
 extern int bc_restoreDbCmd();
 extern int bc_saveDbCmd();
 
-extern PrintError();
-
 /*
  * Global configuration information for the Backup Coordinator.
  */
index 9b26119..1222911 100644 (file)
@@ -38,12 +38,8 @@ RCSID
 #include <afs/vlserver.h>
 #include "error_macros.h"
 
-
-extern struct bc_config *bc_globalConfig;
 extern struct bc_dumpTask bc_dumpTasks[BC_MAXSIMDUMPS];
-extern void bc_HandleMisc();
 extern char *whoami;
-extern struct rx_connection *bc_GetConn();
 
 #define        BC_MAXLEVELS        20
 #define        MAXTAPESATONCE      10
index f9f66cf..4229910 100644 (file)
@@ -39,8 +39,9 @@ afs_int32 bc_UpdateVolumeSet();
 extern struct bc_config *bc_globalConfig;
 extern struct udbHandleS udbHandle;
 extern char *whoami;
-extern struct bc_volumeSet *bc_FindVolumeSet(struct bc_config *cf,
-                                            char *name);
+extern struct bc_volumeSet *bc_FindVolumeSet(struct bc_config *cf, char *name);
+extern void FreeVolumeSet(struct bc_volumeSet *avset);
+
 
 /* ------------------------------------
  * command level routines
index 79ba6e0..67f67e9 100644 (file)
@@ -29,7 +29,6 @@ RCSID
 #include "bc.h"
 #include <afs/volint.h>
 
-extern int VL_GetEntryByID();
 extern char *whoami;
 
 /* ********************************************************************* */
index 6598e6c..d545a71 100644 (file)
@@ -314,3 +314,7 @@ extern struct memoryDB db;
 struct memoryHashTable *ht_GetType();
 extern afs_uint32 ht_HashEntry();
 extern dbadr ht_LookupBucket();
+
+extern afs_int32 dbwrite(struct ubik_trans *ut, afs_int32 pos, char *buff, afs_int32 len);
+extern void db_panic(char *reason);
+extern void ht_Reset(struct memoryHashTable *mht);
index e702314..9524e1b 100644 (file)
@@ -65,8 +65,6 @@ RCSID
 
 extern struct ubik_dbase *BU_dbase;
 extern struct afsconf_dir *BU_conf;    /* for getting cell info */
-extern afs_int32 myHost;
-extern struct memoryDB db;     /* incore copies of db structures */
 
 afs_int32 AddVolume(), AddVolumes(), CreateDump(), DoDeleteDump(),
 DoDeleteTape(), ListDumps();
index b61d3df..95be539 100644 (file)
@@ -58,10 +58,6 @@ RCSID
 #include "globals.h"
 #include "afs/audit.h"
 
-
-extern afs_int32 ubik_lastYesTime;
-extern afs_int32 ubik_nBuffers;
-
 struct ubik_dbase *BU_dbase;
 struct afsconf_dir *BU_conf;   /* for getting cell info */
 
index e2c7764..f1b455e 100644 (file)
@@ -25,6 +25,8 @@ RCSID
 #include "butc_xbsa.h"
 #include <afs/butx.h>
 
+#include "error_macros.h"
+
 extern int debugLevel;
 
 
index c67bf31..8398dae 100644 (file)
@@ -40,7 +40,6 @@ RCSID
 
 #include "error_macros.h"
 
-extern struct ubik_client *cstruct;
 dlqlinkT savedEntries;
 dlqlinkT entries_to_flush;
 
index f67fb83..6c37af3 100644 (file)
@@ -59,15 +59,13 @@ addVolume();
 
 extern struct rx_connection *UV_Bind();
 
-extern char *globalCellName;
-
-extern afs_int32 xbsaType;
 extern afs_int32 groupId;
 extern afs_int32 BufferSize;
 extern afs_int32 statusSize;
 extern FILE *centralLogIO;
 afs_int32 lastPass = 0;
 #ifdef xbsa
+extern afs_int32 xbsaType;
 char *butcdumpIdStr = "/backup_afs_volume_dumps";
 extern struct butx_transactionInfo butxInfo;
 extern char *xbsaObjectOwner;
@@ -145,7 +143,7 @@ extern int maxpass;
 
 afs_int32 tc_EndMargin;
 afs_int32 tc_KEndMargin;
-char *bufferBlock;
+static char *bufferBlock;
 
 /* compute the absolute expiration date */
 afs_int32
index 23d2291..26e8d2b 100644 (file)
             code = evalue;                                      \
             goto abort_exit;                                    \
         }
+
+/*need conversion to varargs*//*extern void ELog(afs_int32 task, char *str, char *a, char *b, char *c, char *d, char *e, char *f, char *g, char *h, char *i, char *j);
+extern void ErrorLog(int debug, afs_int32 task, afs_int32 error1, afs_int32 error2, char *str, char *a, char *b, char *c, char *d, char *e, char *f, char *g, char *h, char *i, char *j);
+extern void TLog(afs_int32 task, char *str, char *a, char *b, char *c, char *d, char *e, char *f, char *g, char *h, char *i, char *j);
+extern void TapeLog(int debug, afs_int32 task, afs_int32 error1, afs_int32 error2, char *str, char *a, char *b, char *c, char *d, char *e, char *f, char *g, char *h, char *i, char *j);*/
+
+extern void FreeNode(afs_int32 taskID);
+extern void CreateNode(struct dumpNode **newNode);
+extern void LeaveDeviceQueue(struct deviceSyncNode *devLatch);
+extern void EnterDeviceQueue(struct deviceSyncNode *devLatch);
+extern Date ExpirationDate(afs_int32 dumpid);
+extern void InitNodeList(afs_int32 portOffset);
+
+/* bucoord/status.c */
+extern void clearStatus(afs_uint32 taskId, afs_uint32 flags);
+extern void setStatus(afs_uint32 taskId, afs_uint32 flags);
index a07f313..04a6227 100644 (file)
@@ -23,7 +23,9 @@ RCSID
 #include <errno.h>
 #include <afs/tcdata.h>
 
-extern int debugLevel;
+#include "error_macros.h"
+
+/*extern int debugLevel;*/
 static struct dumpNode *dumpQHeader;   /* ptr to head of the dumpNode list */
 static struct dumpNode headNode;       /* the dummy header of the node list */
 static afs_int32 maxTaskID;    /* the largest task Id allotted so far, this is never reused */
index 83b2233..6eb2ee3 100644 (file)
@@ -40,7 +40,6 @@ RCSID
 #include "butc_xbsa.h"
 
 /* GLOBAL CONFIGURATION PARAMETERS */
-extern int dump_namecheck;
 extern int queryoperator;
 extern int tapemounted;
 extern char *opencallout;
@@ -48,9 +47,11 @@ extern char *closecallout;
 extern char *whoami;
 extern char *extractDumpName();
 extern int BufferSize;         /* Size in B stored for header info */
-extern char *restoretofile;
 FILE *restoretofilefd;
+#ifdef xbsa
+extern char *restoretofile;
 extern int forcemultiple;
+#endif
 
 /* XBSA Global Parameters */
 afs_int32 xbsaType;
@@ -58,7 +59,7 @@ afs_int32 xbsaType;
 struct butx_transactionInfo butxInfo;
 #endif
 
-struct TapeBlock {             /* A 16KB tapeblock */
+static struct TapeBlock {              /* A 16KB tapeblock */
     char mark[BUTM_HDRSIZE];   /* Header info */
     char data[BUTM_BLKSIZE];   /* data */
 } *bufferBlock;
@@ -125,7 +126,7 @@ struct timezone tzp;
 afs_int32 readVolumeHeader( /*char *buffer,afs_int32 bufloc,(struct volumeHeader *)vhptr */ );
 
 /* The on-disk volume header or trailer can differ in size from platform to platform */
-struct TapeBlock tapeBlock;
+static struct TapeBlock tapeBlock;
 char tapeVolumeHT[sizeof(struct volumeHeader) + 2 * sizeof(char)];
 
 void
index 8186135..1b66eb9 100644 (file)
@@ -38,7 +38,6 @@ RCSID
 /* GLOBAL CONFIGURATION PARAMETERS */
 extern int autoQuery;
 extern int queryoperator;
-extern int isafile;
 
 /* Handle for the information read from all the tapes of a dump */
 afs_int32 tapepos;             /* when read a label, remember its position */
index dcb54bd..f451f50 100644 (file)
@@ -41,7 +41,6 @@ RCSID
 #include <afs/tcdata.h>
 #include "error_macros.h"
 #include "butc_xbsa.h"
-extern afs_int32 xbsaType;
 
 callPermitted(call)
      struct rx_call *call;
index e5d4b46..b208c21 100644 (file)
@@ -209,9 +209,10 @@ afscdefs =\
        -DSTRICT \
        -D_WIN32_IE=0x0400 \
        -D_WIN32_WINNT=0x0400 \
-     -DAFS_AFSDB_ENV \
-     -DAFS_FREELANCE_CLIENT \
-     -DAFS_64BIT_ENV \
+       -DAFS_AFSDB_ENV \
+       -DAFS_FREELANCE_CLIENT \
+       -DAFS_64BIT_ENV \
+       -DAFS_64BIT_CLIENT \
         $(AFSDEV_AUXCDEFINES)
 
 
index bfad14b..9789175 100644 (file)
@@ -84,6 +84,7 @@ Usage(void)
     exit(1);
 }
 
+int
 main(int argc, char **argv)
 {
     char stampsFile[1024];
index 504a0c8..291340a 100644 (file)
@@ -76,7 +76,6 @@ int
 des_random_key(des_cblock key)
 {
     LOCK_INIT if (!is_inited) {
-       void des_init_random_number_generator();
        des_init_random_number_generator(key);
     }
     UNLOCK_INIT
index 33ec02a..4105dbe 100644 (file)
@@ -87,7 +87,7 @@ static push_signals(), pop_signals();
 #endif
 
 int des_read_pw_string(char *, int, char *, int);
-int des_string_to_key(char *, des_cblock *);
+void des_string_to_key(char *, des_cblock *);
 
 /*** Routines ****************************************************** */
 int
index 223e1a4..fc28877 100644 (file)
 /* Some Cheap statistics which should be shared with the rxkad definitions, but
  * aren't.  The layout should match the layout in rxkad/rxkad.p.h. */
 
-struct {
-    afs_uint32 rxkad_stuff[34];        /* see rxkad.h */
-    afs_uint32 fc_stuff[3];    /* see rxkad.h */
+struct rxkad_stats {
+    afs_uint32 connections[3]; /* client side only */
+    afs_uint32 destroyObject;  /* client security objects */
+    afs_uint32 destroyClient;  /* client connections */
+    afs_uint32 destroyUnused;  /* unused server conn */
+    afs_uint32 destroyUnauth;  /* unauthenticated server conn */
+    afs_uint32 destroyConn[3]; /* server conn per level */
+    afs_uint32 expired;                /* server packets rejected */
+    afs_uint32 challengesSent; /* server challenges sent */
+    afs_uint32 challenges[3];  /* challenges seen by client */
+    afs_uint32 responses[3];   /* responses seen by server */
+    afs_uint32 preparePackets[6];
+    afs_uint32 checkPackets[6];
+    afs_uint32 bytesEncrypted[2];      /* index just by type */
+    afs_uint32 bytesDecrypted[2];
+    afs_uint32 fc_encrypts[2]; /* DECRYPT==0, ENCRYPT==1 */
+    afs_uint32 fc_key_scheds;  /* key schedule creations */
     afs_uint32 des_encrypts[2];        /* DECRYPT==0, ENCRYPT==1 */
     afs_uint32 des_key_scheds; /* key schedule creations */
     afs_uint32 des_randoms;    /* random blocks generated */
-    unsigned long spares[10];
+    long spares[10];
 } rxkad_stats;                 /* put these here for convenience */
 
 #ifdef AFS_PTHREAD_ENV
index 36271aa..32523f1 100644 (file)
@@ -25,7 +25,7 @@ RCSID
 /* MIN_ARGC == MAX_ARGC ==> required # args */
 
 extern char *errmsg();
-extern int des_string_to_key();
+extern void des_string_to_key();
 extern int des_key_sched();
 extern int des_ecb_encrypt();
 extern int des_cbc_encrypt();
index ee11cde..7a4d662 100644 (file)
@@ -23,7 +23,7 @@ RCSID
 
 
 extern char *errmsg();
-extern int des_string_to_key();
+extern void des_string_to_key();
 extern int des_key_sched();
 extern int des_ecb_encrypt();
 extern int des_cbc_encrypt();
index 6020625..7863ced 100644 (file)
@@ -46,7 +46,7 @@ struct Lock afs_bufferLock;
 #define BUFFER_FID_SIZE (6 + 2*sizeof(char*)/sizeof(int))
 #endif
 
-struct buffer {
+static struct buffer {
     /* fid is used for Unique cache key + i/o addressing.
      * fid size is based on 4 + size of inode and size of pointer
      */
index d03a60e..e01c1af 100644 (file)
@@ -98,6 +98,17 @@ extern int IsEmpty(void *dir);
 extern struct DirEntry *GetBlob(void *dir, afs_int32 blobno);
 extern int DirHash(register char *string);
 
+extern int DStat(int *abuffers, int *acalls, int *aios);
+extern int DInit(int abuffers);
+extern void *DRead(register afs_int32 *fid, register int page);
+extern void DRelease(register struct buffer *bp, int flag);
+extern int DVOffset(register void *ap);
+extern void DZap(register afs_int32 *fid);
+extern int DFlushVolume(register afs_int32 vid);
+extern int DFlushEntry(register afs_int32 *fid);
+extern int DFlush();
+extern void *DNew(register afs_int32 *fid, register int page);
+
 #ifdef KERNEL
 extern int afs_dir_NameBlobs(char *name);
 extern int afs_dir_Create(void *dir, char *entry, void *vfid);
index e18add8..f499a05 100644 (file)
@@ -38,10 +38,7 @@ RCSID
 
 #define MAXENAME 256
 
-struct DirEntry *GetBlob();
-struct PageHeader *DRead();
 extern afs_int32 DErrno;
-int NameBlobs(), Lookup(), Create(), MakeDir();
 
 /* figure out how many pages in use in a directory, given ptr to its (locked) header */
 static
index 56e6ed3..3012a7f 100644 (file)
@@ -44,11 +44,8 @@ RCSID
 #include "kautils.h"
 #include "kaport.h"
 
-
 #define CMD_PARSER_AMBIG_FIX 1 /* allow ambiguous aliases */
 
-extern char *ktime_GetDateUsage();
-
 #define        KA_SIXHOURS     (6*3600)
 
 static struct ubik_client *conn;
@@ -79,53 +76,6 @@ DefaultCell(void)
 /* These are the command operation procedures. */
 
 int
-ListUsers(struct cmd_syndesc *as, char *arock)
-{
-    struct kaident name;
-    afs_int32 index;
-    afs_int32 count;
-    afs_int32 next_index;
-    int code, all = 0, showa = 0;
-    int showkey = (as->parms[2].items != NULL);
-
-    if (as->parms[0].items)
-       all = 1;
-    if (as->parms[1].items) {
-       all = 1;
-       showa = 1;
-    }
-    for (index = 0; 1; index = next_index) {
-       code =
-           ubik_Call(KAM_ListEntry, conn, 0, index, &next_index, &count,
-                     &name);
-       if (code) {
-           com_err(whoami, code, "calling KAM_ListEntry");
-           break;
-       }
-       if (!next_index)
-           break;
-       if (next_index < 0)
-           printf("next_index (%d) is negative: ", next_index);
-       if (strlen(name.name) == 0)
-           printf("name is zero length: ");
-       if (all)
-           DumpUser(name.name, NULL, showa, showkey, name.instance);
-       else
-           ka_PrintUserID("", name.name, name.instance, "\n");
-    }
-    return code;
-}
-
-
-int
-ExamineUser(struct cmd_syndesc *as, char *arock)
-{
-    int showkey = (as->parms[1].items != NULL);
-    return DumpUser(as->parms[0].items->data, arock, 0, showkey, NULL);
-}
-
-
-int
 DumpUser(char *user, char *arock, int showadmin, int showkey, char *inst)
 {
     char name[MAXKTCNAMELEN];
@@ -283,6 +233,53 @@ DumpUser(char *user, char *arock, int showadmin, int showkey, char *inst)
     return 0;
 }
 
+int
+ListUsers(struct cmd_syndesc *as, char *arock)
+{
+    struct kaident name;
+    afs_int32 index;
+    afs_int32 count;
+    afs_int32 next_index;
+    int code, all = 0, showa = 0;
+    int showkey = (as->parms[2].items != NULL);
+
+    if (as->parms[0].items)
+       all = 1;
+    if (as->parms[1].items) {
+       all = 1;
+       showa = 1;
+    }
+    for (index = 0; 1; index = next_index) {
+       code =
+           ubik_Call(KAM_ListEntry, conn, 0, index, &next_index, &count,
+                     &name);
+       if (code) {
+           com_err(whoami, code, "calling KAM_ListEntry");
+           break;
+       }
+       if (!next_index)
+           break;
+       if (next_index < 0)
+           printf("next_index (%d) is negative: ", next_index);
+       if (strlen(name.name) == 0)
+           printf("name is zero length: ");
+       if (all)
+           DumpUser(name.name, NULL, showa, showkey, name.instance);
+       else
+           ka_PrintUserID("", name.name, name.instance, "\n");
+    }
+    return code;
+}
+
+
+int
+ExamineUser(struct cmd_syndesc *as, char *arock)
+{
+    int showkey = (as->parms[1].items != NULL);
+    return DumpUser(as->parms[0].items->data, arock, 0, showkey, NULL);
+}
+
+
 struct OKerrors {
     int code;
     char *msg;
index 3f6f8f3..f22e3a3 100644 (file)
@@ -35,9 +35,7 @@ RCSID
 #include "kautils.h"
 #include "kaserver.h"
 
-extern struct kaheader cheader;
 extern Date cheaderReadTime;   /* time cheader last read in */
-extern struct ubik_dbase *KA_dbase;
 
 #define set_header_word(tt,field,value) kawrite ((tt), ((char *)&(cheader.field) - (char *)&cheader), ((cheader.field = (value)), (char *)&(cheader.field)), sizeof(afs_int32))
 
index 26f707d..fb7fa72 100644 (file)
@@ -61,8 +61,6 @@ afs_int32 krb4_cross = 0;
 
 struct afsconf_dir *KA_conf;   /* for getting cell info */
 
-extern afs_int32 ubik_lastYesTime;
-extern afs_int32 ubik_nBuffers;
 int MinHours = 0;
 int npwSums = KA_NPWSUMS;      /* needs to be variable sometime */
 
index d5e0fc9..d1fc30a 100644 (file)
@@ -151,6 +151,10 @@ extern int ka_KeyIsZero(register char *akey, register int alen);
 
 extern void ka_timestr(afs_int32 time, char *tstr, afs_int32 tlen);
 
+extern void ka_debugKeyCache(struct ka_debugInfo *info);
+
+extern void save_principal(char *p, char *n, char *i, char *c);
+
 extern afs_int32 ka_GetAFSTicket(char *name, char *instance, char *realm,
                                 Date lifetime, afs_int32 flags);
 
index f7a5548..c0b7c73 100644 (file)
@@ -83,7 +83,7 @@ int CommandProc();
 
 static int zero_argc;
 static char **zero_argv;
-extern int init_child(), pasword_bad(), give_to_child(), terminate_child();
+extern int init_child(), give_to_child(), terminate_child();
 
 #ifdef AFS_NT40_ENV
 struct passwd {
index 92d4444..b894c8c 100644 (file)
@@ -84,7 +84,6 @@ struct packet {
     char data[MAX_PKT_LEN];
 };
 
-extern struct kadstats dynamic_statistics;
 extern char *lastOperation;
 extern char lrealm[];
 
index 820a4b3..ed7f21e 100644 (file)
@@ -41,48 +41,6 @@ RCSID
 #endif
 #endif
 
-
-
-/*
- * Prototypes for functions that don't exist in any header files
- */
-
-extern int BOZO_AddCellHost();
-extern int BOZO_AddKey();
-extern int BOZO_AddSUser();
-extern int BOZO_CreateBnode();
-extern int BOZO_DeleteBnode();
-extern int BOZO_DeleteCellHost();
-extern int BOZO_DeleteKey();
-extern int BOZO_DeleteSUser();
-extern int BOZO_EnumerateInstance();
-extern int BOZO_Exec();
-extern int BOZO_GetCellHost();
-extern int BOZO_GetCellName();
-extern int BOZO_GetDates();
-extern int BOZO_GetInstanceInfo();
-extern int BOZO_GetInstanceParm();
-extern int BOZO_GetInstanceParm();
-extern int BOZO_GetRestartTime();
-extern int BOZO_GetStatus();
-extern int BOZO_ListSUsers();
-extern int BOZO_ListKeys();
-extern int BOZO_Prune();
-extern int BOZO_ReBozo();
-extern int BOZO_Restart();
-extern int BOZO_RestartAll();
-extern int BOZO_SetCellName();
-extern int BOZO_SetNoAuthFlag();
-extern int BOZO_SetRestartTime();
-extern int BOZO_SetStatus(struct rx_connection *, char *, afs_int32);
-extern int BOZO_SetTStatus(struct rx_connection *, char *, afs_int32);
-extern int BOZO_ShutdownAll();
-extern int BOZO_StartupAll();
-extern int BOZO_UnInstall();
-extern int BOZO_WaitAll();
-extern int StartBOZO_GetLog();
-extern int StartBOZO_Install();
-
 typedef struct bos_server {
     int begin_magic;
     int is_valid;
index 1cccc7a..8b48b34 100644 (file)
@@ -36,7 +36,6 @@ RCSID
 #undef ENCRYPT
 
 extern int ubik_Call();
-extern int ubik_Call_New();
 extern int ubik_CallIter();
 
 typedef struct {
index 8d5cd9f..4acef0b 100644 (file)
@@ -32,27 +32,6 @@ RCSID
 #include <afs/ptserver.h>
 
 /*
- * The list of external functions that aren't prototyped anywhere
- */
-
-extern int PR_NameToID();
-extern int PR_AddToGroup();
-extern int PR_ChangeEntry();
-extern int PR_RemoveFromGroup();
-extern int PR_INewEntry();
-extern int PR_NewEntry();
-extern int PR_Delete();
-extern int PR_IDToName();
-extern int PR_ListEntry();
-extern int PR_SetMax();
-extern int PR_ListElements();
-extern int PR_SetFieldsEntry();
-extern int PR_IsAMemberOf();
-extern int PR_ListMax();
-extern int PR_ListOwned();
-extern int PR_ListEntries();
-
-/*
  * IsValidCellHandle - validate the cell handle for making pts
  * requests.
  *
index 289632d..e80b652 100644 (file)
@@ -38,17 +38,6 @@ RCSID
 #include <pthread.h>
 #endif
 
-extern int RXSTATS_RetrieveProcessRPCStats();
-extern int RXSTATS_RetrievePeerRPCStats();
-extern int RXSTATS_QueryProcessRPCStats();
-extern int RXSTATS_QueryPeerRPCStats();
-extern int RXSTATS_EnableProcessRPCStats();
-extern int RXSTATS_EnablePeerRPCStats();
-extern int RXSTATS_DisableProcessRPCStats();
-extern int RXSTATS_DisablePeerRPCStats();
-extern int RXSTATS_ClearProcessRPCStats();
-extern int RXSTATS_ClearPeerRPCStats();
-
 /*
  * This structure stores the client and server function lists.
  * This is kept separate from the actual interface definitions
index e3fbbc5..c29eb13 100644 (file)
@@ -46,8 +46,6 @@ RCSID
 #include "vsprocs.h"
 #include "lockprocs.h"
 
-extern int VL_GetAddrsU();
-
 typedef struct file_server {
     int begin_magic;
     int is_valid;
index 2ce3643..4b62878 100644 (file)
@@ -26,15 +26,6 @@ RCSID
 #endif
 
 /*
- * Functions that aren't prototyped, but that we use
- */
-
-extern int VL_CreateEntryN(), VL_CreateEntry(), VL_GetEntryByIDN(),
-VL_GetEntryByID(), VL_GetEntryByNameN(), VL_GetEntryByNameO(),
-VL_ReplaceEntryN(), VL_ReplaceEntry(), VL_ListAttributesN(),
-VL_ListAttributes(), VL_GetAddrsU();
-
-/*
  * VLDB entry conversion routines.
  * convert from one type of VLDB record to another.  There are only
  * two types "old" and "new".
index 0755920..ee96ee7 100644 (file)
@@ -40,7 +40,6 @@ RCSID
 #endif
 #include <afs/afsutil.h>
 
-extern char *valloc();
 int ft_debug;
 
 #define TRUE   1
index b0eae8f..845d451 100644 (file)
@@ -498,7 +498,7 @@ static void Initialize_PCB(PROCESS pcb, int priority, int stacksize,
 }
 
 
-VOID WINAPI Enter_LWP(PVOID fiberData)
+static VOID WINAPI Enter_LWP(PVOID fiberData)
 {
     PROCESS pcb = (PROCESS)fiberData;
 
index 60a04f8..a8adc20 100644 (file)
@@ -49,10 +49,7 @@ typedef unsigned char bool;
 
 #define MILLION        1000000
 
-static globalInitDone = 0;
-
-void openafs_insque(struct TM_Elem *, struct TM_Elem *);
-void openafs_remque(struct TM_Elem *);
+static int globalInitDone = 0;
 
 /* t1 = t2 - t3 */
 static void
index 2a21b38..04c938b 100644 (file)
@@ -41,7 +41,9 @@ char confdir[AFSDIR_PATH_MAX];
 
 char *whoami;
 
+#ifndef AFS_PTHREAD_ENV
 extern struct ubik_client *pruclient;
+#endif
 
 static int ignoreExist = 0;
 static char line[256];
index eb8f51a..c94d7d3 100644 (file)
@@ -50,9 +50,6 @@ RCSID
 #include "pterror.h"
 #include <afs/afsutil.h>
 
-extern char *ucstring();
-extern char *lcstring();
-
 static char *whoami = "testpr";
 static struct afsconf_dir *conf;       /* cell info, set by MyBeforeProc */
 static char conf_dir[100];
index 7dc7a6d..7376bbb 100644 (file)
@@ -182,6 +182,7 @@ struct rx_securityClass *ubik_sc[3];
 
 /* Other declarations */
 
+int
 afsconf_GetNoAuthFlag()
 {
     return (1);
index aabcc17..c77cbdf 100644 (file)
@@ -42,7 +42,7 @@ LARGE_INTEGER rxi_clockFreq;
 void clock_UpdateTime(void);
 
 void
-clock_Init()
+clock_Init(void)
 {
     if (!QueryPerformanceFrequency(&rxi_clockFreq)) {
        printf("No High Performance clock, exiting.\n");
@@ -57,9 +57,11 @@ clock_Init()
 
 #ifndef KERNEL
 /* Make clock uninitialized. */
-clock_UnInit()
+int
+clock_UnInit(void)
 {
     clockInitialized = 0;
+       return 0;
 }
 #endif
 
index a9322d8..ee716ba 100644 (file)
@@ -53,8 +53,6 @@ RCSID
 
 #define        TIMEOUT     20
 
-extern struct hostent *hostutil_GetHostByName();
-
 static short
 PortNumber(aport)
      register char *aport;
index cb40ae6..447b007 100644 (file)
@@ -66,8 +66,6 @@ RCSID
 #include "private_data.h"
 #define XPRT_RXKAD_CLIENT
 
-char *rxi_Alloc();
-
 #ifndef max
 #define        max(a,b)    ((a) < (b)? (b) : (a))
 #endif /* max */
index d961204..b9de6cc 100644 (file)
@@ -74,8 +74,6 @@ RCSID
 #include "private_data.h"
 #define XPRT_RXKAD_COMMON
 
-char *rxi_Alloc();
-
 #ifndef afs_max
 #define        afs_max(a,b)    ((a) < (b)? (b) : (a))
 #endif /* afs_max */
index 2492584..02a482a 100644 (file)
@@ -38,7 +38,7 @@ RCSID
 #include "ubik_int.h"
 
 #define        PHSIZE  128
-struct buffer {
+static struct buffer {
     struct ubik_dbase *dbase;  /* dbase within which the buffer resides */
     afs_int32 file;            /* Unique cache key */
     afs_int32 page;            /* page number */
index 68709e3..943f7c9 100644 (file)
@@ -145,12 +145,12 @@ ulock_getLock(atrans, atype, await)
 }
 
 /* Release the transaction lock */
-int
+void
 ulock_relLock(atrans)
      struct ubik_trans *atrans;
 {
     if (rwlockinit)
-       return EINVAL;
+       return;
 
     if (atrans->locktype == LOCKREAD) {
        ReleaseReadLock(&rwlock);
index 8e37bda..5a1d20a 100644 (file)
@@ -329,6 +329,13 @@ extern int DISK_Write();
 extern int DISK_WriteV();
 extern int DISK_Truncate();
 extern int DISK_SetVersion();
+
+/* disk.c */
+extern int udisk_abort(struct ubik_trans *atrans);
+
+/* lock.c */
+extern void ulock_relLock(struct ubik_trans *atrans);
+
 #endif /* UBIK_INTERNALS */
 
 extern afs_int32 ubik_nBuffers;
@@ -347,5 +354,8 @@ extern int ubik_ClientInit(register struct rx_connection **serverconns,
 
 extern afs_int32 ubik_ClientDestroy(struct ubik_client *aclient);
 
+/* ubik.c */
+extern int ubik_BeginTrans(register struct ubik_dbase *dbase, afs_int32 transMode, struct ubik_trans **transPtr);
+extern int ubik_EndTrans(register struct ubik_trans *transPtr);
 
 #endif /* UBIK_H */
index b79955d..52be681 100644 (file)
@@ -45,8 +45,6 @@ RCSID
 #include "ubik.h"
 #include "ubik_int.h"
 
-extern struct hostent *hostutil_GetHostByName();
-
 static short
 PortNumber(register char *aport)
 {
index 3bb4b0e..16fcf37 100644 (file)
@@ -54,6 +54,8 @@ RCSID
 #include "global.h"
 
 extern int UPDATE_ExecuteRequest();
+extern rxkad_level StringToLevel(char *name);
+
 static int AddObject(char **expPath, char *dir);
 static int PathInDirectory(char *dir, char *path);
 
index 52e450f..2d92d65 100644 (file)
@@ -107,9 +107,9 @@ static char circf;
 /* forward defs
 */
 
-static int advance();
-static int backref();
-static int cclass();
+static int advance(register char *lp, register char *ep);
+static int backref(register int i, register char *lp);
+static int cclass(register char *set, register char c, int af);
 
 
 /*
@@ -277,8 +277,7 @@ re_exec(register char *p1)
  * try to match the next thing in the dfa
  */
 static int
-advance(lp, ep)
-     register char *lp, *ep;
+advance(register char *lp, register char *ep)
 {
     register char *curlp;
     int ct, i;
@@ -382,9 +381,7 @@ advance(lp, ep)
 }
 
 static int
-backref(i, lp)
-     register int i;
-     register char *lp;
+backref(register int i, register char *lp)
 {
     register char *bp;
 
@@ -396,9 +393,7 @@ backref(i, lp)
 }
 
 static int
-cclass(set, c, af)
-     register char *set, c;
-     int af;
+cclass(register char *set, register char c, int af)
 {
     register int n;
 
index 0c50c62..fabf520 100644 (file)
@@ -165,7 +165,7 @@ DebugOn(int loglevel)
 void
 SetDebug_Signal(int signo)
 {
-    extern int IOMGR_SoftSig();
+/*    extern int IOMGR_SoftSig();*/
 
     if (LogLevel > 0) {
        LogLevel *= 5;
index 32fa3f2..eba5d2c 100644 (file)
@@ -51,8 +51,6 @@ RCSID
 #endif
 #define PAGESIZE 2048
 
-extern int LogLevel;
-
 afs_int32 lpErrno, lpCount;
 
 /* returns 0 on success, errno on failure */
index bfa1c4f..985fbc9 100644 (file)
@@ -72,7 +72,6 @@ void print_usage();
 void fill_entry();
 void fill_update_entry();
 
-extern int VL_GetAddrsU(), VL_RegisterAddrs();
 #define        VL_NUMBER_OPCODESX      34
 static char *opcode_names[VL_NUMBER_OPCODESX] = {
     "CreateEntry",
@@ -119,7 +118,6 @@ struct Vlent {
     char name[64];
 };
 
-extern int VL_UpdateEntryByName();
 #define        NVOLS   1000
 #define        ALLOCNT 50000
 struct Vlent *VLa[NVOLS];
@@ -130,7 +128,6 @@ struct ubik_client *cstruct;
 struct rx_connection *serverconns[MAXSERVERS];
 char confdir[AFSDIR_PATH_MAX];
 char *(args[50]);
-extern struct cmd_syndesc *cmd_CreateSyntax();
 
 struct Vlent *
 GetVolume(vol, entry)
index e30f8d6..c57c344 100644 (file)
@@ -66,9 +66,6 @@ afs_uint32 HostAddress[MAXSERVERID + 1];
 extern int afsconf_CheckAuth();
 extern int afsconf_ServerAuth();
 
-extern afs_int32 ubik_lastYesTime;
-extern afs_int32 ubik_nBuffers;
-
 static CheckSignal();
 int LogLevel = 0;
 int smallMem = 0;
index 9adb920..141e626 100644 (file)
@@ -128,4 +128,6 @@ struct extentaddr {
 
 #define VLog(level, str)   ViceLog(5, str)
 
+extern int FreeBlock(struct ubik_trans *trans, afs_int32 blockindex);
+
 #endif /* _VLSERVER_ */
index 6509d9d..3eb2b45 100644 (file)
@@ -35,7 +35,6 @@ RCSID
 
 extern struct vlheader cheader;
 struct vlheader xheader;
-extern struct ubik_dbase *VL_dbase;
 extern afs_uint32 HostAddress[];
 extern int maxnservers;
 struct extentaddr extentaddr;
index 7e0c0ef..0866310 100644 (file)
@@ -90,7 +90,6 @@ RCSID
 #endif
 #define osi_Assert(e) (void)(e)
 
-extern int LogLevel;           /* Vice loglevel */
 int (*V_BreakVolumeCallbacks) ();
 
 #define MAXHANDLERS    4       /* Up to 4 clients; must be at least 2, so that
@@ -123,9 +122,7 @@ struct command {
     char partName[16];         /* partition name, e.g. /vicepa */
 };
 
-
 /* Forward declarations */
-static int getport();
 static void FSYNC_sync();
 static void FSYNC_newconnection();
 static void FSYNC_com();
index 8b66e57..06eda01 100644 (file)
@@ -62,8 +62,6 @@ RCSID
 #endif /* !O_LARGEFILE */
 #endif /* AFS_NT40_ENV */
 
-extern afs_int32 DErrno;
-
 #ifdef AFS_PTHREAD_ENV
 pthread_once_t ih_glock_once = PTHREAD_ONCE_INIT;
 pthread_mutex_t ih_glock_mutex;
index d828dcf..5745546 100644 (file)
@@ -41,6 +41,8 @@ RCSID
 
 #define BASEFILEATTRIBUTE FILE_ATTRIBUTE_NORMAL
 
+static void AddToZLCDeleteList(char dir, char *name);
+
 /* nt_unlink - unlink a case sensitive name.
  *
  * nt_unlink supports the nt_dec call.
@@ -1107,7 +1109,6 @@ nt_ListAFSSubDirs(IHandle_t * dirIH,
     int tag, vno;
     FdHandle_t linkHandle;
     int ninodes = 0;
-    static void AddToZLCDeleteList(char dir, char *name);
     static void DeleteZLCFiles(char *path);
 
     s = nt_HandleToVolDir(path, &myIH);
index ccd138b..920e677 100644 (file)
@@ -219,7 +219,6 @@ extern off_t afs_lseek(int FD, off_t O, int F);
 #ifdef AFS_OSF_ENV
 extern void *calloc();
 #endif
-extern char *vol_DevName();
 static char *TimeStamp(time_t clock, int precision);
 
 #define ORPH_IGNORE 0
index 59a8b37..ea53c5a 100644 (file)
@@ -71,9 +71,9 @@ RCSID
 #define VolserVersion "2.0"
 #define N_SECURITY_OBJECTS 3
 
-extern int (*vol_PollProc) ();
 extern struct volser_trans *TransList();
 #ifndef AFS_PTHREAD_ENV
+extern int (*vol_PollProc) ();
 extern int IOMGR_Poll();
 #endif
 char *GlobalNameHack = NULL;
@@ -83,10 +83,6 @@ int GlobalVolType;
 int VolumeChanged;             /* XXXX */
 static char busyFlags[MAXHELPERS];
 struct volser_trans *QI_GlobalWriteTrans = 0;
-extern int QI_write();
-extern int QI_flush();
-extern int (*VolWriteProc) ();
-extern int (*VolFlushProc) ();
 extern void AFSVolExecuteRequest();
 extern void RXSTATS_ExecuteRequest();
 struct afsconf_dir *tdir;
index ca87c67..6ebfd46 100644 (file)
@@ -74,7 +74,6 @@ RCSID
 extern int DoLogging;
 extern struct volser_trans *FindTrans(), *NewTrans(), *TransList();
 extern struct afsconf_dir *tdir;
-extern char *volutil_PartitionName();
 
 extern void LogError(afs_int32 errcode);
 
@@ -92,10 +91,9 @@ afs_int32 VolPartitionInfo(), VolNukeVolume(), VolCreateVolume(),
 VolDeleteVolume(), VolClone();
 afs_int32 VolReClone(), VolTransCreate(), VolGetNthVolume(), VolGetFlags(),
 VolForward(), VolDump();
-afs_int32 VolForwardMultiple();
 afs_int32 VolRestore(), VolEndTrans(), VolSetForwarding(), VolGetStatus(),
 VolSetInfo(), VolGetName();
-afs_int32 VolSignalRestore(), VolListPartitions(), VolListOneVolume(),
+afs_int32 VolListPartitions(), VolListOneVolume(),
 VolXListOneVolume(), VolXListVolumes();
 afs_int32 VolListVolumes(), XVolListPartitions(), VolMonitor(),
 VolSetIdsTypes(), VolSetDate(), VolSetFlags();
index 6cea79e..03af749 100644 (file)
@@ -160,4 +160,9 @@ struct partList {           /*used by the backup system */
 #define RV_OFFLINE 0x2
 #define RV_RDONLY  0x10000
 
+extern afs_uint32 vsu_GetVolumeID(char *astring, struct ubik_client *acstruct, afs_int32 *errp);
+extern int vsu_ExtractName(char rname[], char name[]);
+extern afs_int32 vsu_ClientInit(int noAuthFlag, char *confDir, char *cellName, afs_int32 sauth, struct ubik_client **uclientp, int (*secproc)());
+extern void vsu_SetCrypt(int cryptflag);
+
 #endif /* _VOLSER_ */
index 104a298..d5be1c5 100644 (file)
@@ -76,9 +76,6 @@ struct tqHead {
     struct tqElem *next;
 };
 
-
-struct hostent *hostutil_GetHostByName(register char *ahost);
-
 #define COMMONPARMS     cmd_Seek(ts, 12);\
 cmd_AddParm(ts, "-cell", CMD_SINGLE, CMD_OPTIONAL, "cell name");\
 cmd_AddParm(ts, "-noauth", CMD_FLAG, CMD_OPTIONAL, "don't authenticate");\
@@ -94,23 +91,6 @@ struct rx_connection *tconn;
 afs_int32 tserver;
 extern struct ubik_client *cstruct;
 const char *confdir;
-extern struct rx_connection *UV_Bind();
-extern int UV_SetSecurity();
-extern int UV_SetVolumeInfo();
-extern int vsu_SetCrypt();
-extern VL_SetLock();
-extern VL_ReleaseLock();
-extern VL_DeleteEntry();
-extern VL_ListEntry();
-extern VL_GetAddrs();
-extern VL_GetAddrsU();
-extern VL_ChangeAddr();
-
-extern int vsu_ExtractName();
-extern PrintError();
-extern void EnumerateEntry();
-extern void SubEnumerateEntry();
-
 
 static struct tqHead busyHead, notokHead;
 
index bf77d96..2fad506 100644 (file)
@@ -64,17 +64,8 @@ RCSID
 
 #include <volser_prototypes.h>
 
-afs_int32 VolumeExists(), CheckVldbRWBK(), CheckVldb();
-
 struct ubik_client *cstruct;
 int verbose = 0;
-extern int VL_GetNewVolumeId();
-extern int VL_SetLock();
-extern int VL_ReleaseLock();
-extern int VL_DeleteEntry();
-
-void MapNetworkToHost();
-void MapHostToNetwork();
 
 struct release {
     afs_int32 time;
index 35c0a71..1be7993 100644 (file)
@@ -56,11 +56,6 @@ RCSID
 
 struct ubik_client *cstruct;
 static rxkad_level vsu_rxkad_level = rxkad_clear;
-extern int VL_CreateEntry(), VL_CreateEntryN();
-extern int VL_GetEntryByID(), VL_GetEntryByIDN();
-extern int VL_GetEntryByNameO(), VL_GetEntryByNameN();
-extern int VL_ReplaceEntry(), VL_ReplaceEntryN();
-extern int VL_ListAttributes(), VL_ListAttributesN(), VL_ListAttributesN2();
 
 static void
 ovlentry_to_nvlentry(oentryp, nentryp)
@@ -298,7 +293,7 @@ struct cacheips {
 #define GETADDRUCACHESIZE             64
 struct cacheips cacheips[GETADDRUCACHESIZE];
 int cacheip_index = 0;
-extern int VL_GetAddrsU();
+
 VLDB_IsSameAddrs(serv1, serv2, errorp)
      afs_int32 serv1, serv2, *errorp;
 {
@@ -578,6 +573,7 @@ vsu_ClientInit(noAuthFlag, confDir, cellName, sauth, uclientp, secproc)
 /*extract the name of volume <name> without readonly or backup suffixes
  * and return the result as <rname>.
  */
+int
 vsu_ExtractName(rname, name)
      char rname[], name[];
 {