winnt-build-cleanup-20030825
authorRobert S. Murawski <rsm4@cssd.pitt.edu>
Tue, 26 Aug 2003 04:03:32 +0000 (04:03 +0000)
committerDerrick Brashear <shadow@dementia.org>
Tue, 26 Aug 2003 04:03:32 +0000 (04:03 +0000)
include unified afs error support for winnt. removed dup'd code.

supports building an installer with NSIS

====================
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.
====================

include unified afs error support for winnt. removed dup'd code.

supports building an installer with NSIS

remove orphaned osi_malloc header ref

====================

more updates. make libadmin build, fix dependancies for unified_afs,
copy rxstat header out during build

====================

fix NSIS installer build paths
clean up base64 support for nt
clean up int64 support in volser

====================

more updates. make libadmin build, fix dependancies for unified_afs,
copy rxstat header out during build

21 files changed:
src/NTMakefile
src/WINNT/afs_setup_utils/afs_setup_utils.cpp
src/WINNT/afsapplib/hashlist.cpp
src/WINNT/afsapplib/subclass.cpp
src/WINNT/afsd/afsd.c
src/WINNT/afsd/afsd_service.c
src/WINNT/afsd/afslogon.c
src/WINNT/afsd/cm_buf.c
src/WINNT/afsd/cm_callback.c
src/WINNT/afsd/smb.c
src/WINNT/client_config/drivemap.cpp
src/WINNT/client_exp/gui2fs.cpp
src/WINNT/install/NSIS/OpenAFS.nsi
src/WINNT/talocale/tal_alloc.cpp
src/afs/NTMakefile [new file with mode: 0644]
src/libadmin/adminutil/NTMakefile
src/rxstat/NTMakefile
src/viced/viced.c
src/vlserver/vlserver.c
src/volser/dumpstuff.c
src/volser/vos.c

index a646122..997ca65 100644 (file)
@@ -72,7 +72,14 @@ comerr: util
        $(NTMAKE)
        $(CD) ..\..
 
-cmd: comerr
+afs: comerr
+      echo ***** $@
+      $(DOCD) $(SRC)\afs
+      $(CD) $(SRC)\afs
+      $(NTMAKE)
+      $(CD) ..\..
+
+cmd: afs
      echo ***** $@
        $(DOCD) $(SRC)\$@
        $(CD) $(SRC)\$@
@@ -557,7 +564,7 @@ InstallShield5:
        $(NTMAKE)
        $(CD) ..\..\..\..
 
-media: InstallShield5
+media: InstallShield5 NSIS
 
 # Clean target for obj tree
 clean:
@@ -580,3 +587,10 @@ mkdir:
        -mkdir $(DESTDIR)\free\bin
        -@copy $(SRC)\config\NTLANG.BAT .
 
+NSIS:
+   echo ***** Making NSIS Installer
+   $(DOCD) $(SRC)\WINNT\install\NSIS
+   $(CD) $(SRC)\WINNT\install\NSIS
+   $(NTMAKE)
+   $(CD) ..\..\..\..
+
index fe09729..2e6ff61 100644 (file)
@@ -31,7 +31,6 @@ extern "C" {
 #include <WINNT/afsreg.h>
 #include <WINNT/afssw.h>
 #include <WINNT/talocale.h>
-#include <winnt/osi_malloc.h>
 
 #include "resource.h"
 #include "progress_dlg.h"
index 7aa519c..3607bdc 100644 (file)
@@ -13,7 +13,6 @@ extern "C" {
 }
 
 #include <WINNT/TaLocale.h>
-#include <winnt/osi_malloc.h>
 
 
 /*
index ae45052..1f8d844 100644 (file)
@@ -14,7 +14,6 @@ extern "C" {
 
 #include <windows.h>
 #include <WINNT/subclass.h>
-#include <winnt/osi_malloc.h>
 
 
 /*
index 6c79852..a481f2e 100644 (file)
@@ -20,7 +20,6 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <winsock2.h>
-#include <winnt/osi_malloc.h>
 
 
 HANDLE main_inst;
index f0050d3..3a4e0ca 100644 (file)
@@ -18,7 +18,6 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <winsock2.h>
-#include <winnt/osi_malloc.h>
 
 #include <osi.h>
 
index a41707c..ff671c1 100644 (file)
@@ -23,7 +23,6 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <fcntl.h>
-#include <winnt/osi_malloc.h>
 
 DWORD LogonOption,TraceOption;
 
index d433ed4..b4790d9 100644 (file)
@@ -19,7 +19,6 @@
 #include <malloc.h>
 #include <stdio.h>
 #include <assert.h>
-#include <winnt/osi_malloc.h>
 
 #include "afsd.h"
 
index bceb0c0..507d9f5 100644 (file)
@@ -867,7 +867,7 @@ int SRXAFSCB_GetCellByNum(struct rx_call *a_call, afs_int32 a_cellnum,
 }
 
 /* debug interface: not implemented */
-int SRXAFSCB_GetCellByNum(struct rx_call *a_call, afs_int32 a_cellnum,
+int SRXAFSCB_TellMeAboutYourself(struct rx_call *a_call, afs_int32 a_cellnum,
                           char **a_name, serverList *a_hosts)
 {
     /* XXXX */
index 3cd183a..d2f1e0d 100644 (file)
@@ -32,7 +32,6 @@
 #include "afsd.h"
 
 #include "smb.h"
-#include <winnt/osi_malloc.h>
 
 /* These characters are illegal in Windows filenames */
 static char *illegalChars = "\\/:*?\"<>|";
index 9443675..db61e27 100644 (file)
@@ -20,7 +20,6 @@ extern "C" {
 #include <time.h>
 #include <adssts.h>
 #include <osilog.h>
-#include <winnt/osi_malloc.h>
 
 /*
  * REGISTRY ___________________________________________________________________
index 8db6c48..4b5283b 100644 (file)
@@ -1223,45 +1223,6 @@ BOOL IsSymlink(const char * true_name)
        return (code==0);
 }
 
-BOOL IsSymlink(const char * true_name)
-{
-    char parent_dir[MAXSIZE];          /*Parent directory of true name*/
-       char strip_name[MAXSIZE];
-    struct ViceIoctl blob;
-       char *last_component;
-    int code;
-       last_component = (char *) strrchr(true_name, '\\');
-       if (!last_component)
-           last_component = (char *) strrchr(true_name, '/');
-       if (last_component) {
-           /*
-            * Found it.  Designate everything before it as the parent directory,
-            * everything after it as the final component.
-            */
-           strncpy(parent_dir, true_name, last_component - true_name + 1);
-           parent_dir[last_component - true_name + 1] = 0;
-           last_component++;   /*Skip the slash*/
-       }
-       else {
-           /*
-            * No slash appears in the given file name.  Set parent_dir to the current
-            * directory, and the last component as the given name.
-            */
-           fs_ExtractDriveLetter(true_name, parent_dir);
-           strcat(parent_dir, ".");
-           last_component = strip_name;
-        fs_StripDriveLetter(true_name, strip_name, sizeof(strip_name));
-       }
-
-       blob.in = last_component;
-       blob.in_size = strlen(last_component)+1;
-       blob.out_size = MAXSIZE;
-       blob.out = space;
-       memset(space, 0, MAXSIZE);
-       code = pioctl(parent_dir, VIOC_ISSYMLINK, &blob, 1);
-       return (code==0);
-}
-
 
 /*
  * Delete AFS mount points.  Variables are used as follows:
@@ -1530,82 +1491,6 @@ BOOL GetTokenInfo(CStringArray& tokenInfo)
 //     tokenInfo.Add("");
 //     return TRUE;
 
-BOOL RemoveSymlink(const char * linkName)
-{
-       BOOL error = FALSE;
-    INT code=0;
-    struct ViceIoctl blob;
-    char tbuffer[1024];
-    char lsbuffer[1024];
-       char tpbuffer[1024];
-    char *tp;
-    
-       tp = (char *) strrchr(linkName, '\\');
-       if (!tp)
-           tp = (char *) strrchr(linkName, '/');
-       if (tp) {
-           strncpy(tbuffer, linkName, code=tp-linkName+1);  /* the dir name */
-            tbuffer[code] = 0;
-           tp++;   /* skip the slash */
-       }
-       else {
-           fs_ExtractDriveLetter(linkName, tbuffer);
-           strcat(tbuffer, ".");
-         fs_StripDriveLetter(tp, tpbuffer, 0);
-                tp=tpbuffer;
-       }
-       blob.in = tp;
-       blob.in_size = strlen(tp)+1;
-       blob.out = lsbuffer;
-       blob.out_size = sizeof(lsbuffer);
-       code = pioctl(tbuffer, VIOC_LISTSYMLINK, &blob, 0);
-       if (code)
-               return FALSE;
-       blob.out_size = 0;
-       blob.in = tp;
-       blob.in_size = strlen(tp)+1;
-       return (pioctl(tbuffer, VIOC_DELSYMLINK, &blob, 0)==0);
-}
-
-BOOL IsSymlink(const char * true_name)
-{
-    char parent_dir[MAXSIZE];          /*Parent directory of true name*/
-       char strip_name[MAXSIZE];
-    struct ViceIoctl blob;
-       char *last_component;
-    int code;
-       last_component = (char *) strrchr(true_name, '\\');
-       if (!last_component)
-           last_component = (char *) strrchr(true_name, '/');
-       if (last_component) {
-           /*
-            * Found it.  Designate everything before it as the parent directory,
-            * everything after it as the final component.
-            */
-           strncpy(parent_dir, true_name, last_component - true_name + 1);
-           parent_dir[last_component - true_name + 1] = 0;
-           last_component++;   /*Skip the slash*/
-       }
-       else {
-           /*
-            * No slash appears in the given file name.  Set parent_dir to the current
-            * directory, and the last component as the given name.
-            */
-           fs_ExtractDriveLetter(true_name, parent_dir);
-           strcat(parent_dir, ".");
-           last_component = strip_name;
-        fs_StripDriveLetter(true_name, strip_name, sizeof(strip_name));
-       }
-
-       blob.in = last_component;
-       blob.in_size = strlen(last_component)+1;
-       blob.out_size = MAXSIZE;
-       blob.out = space;
-       memset(space, 0, MAXSIZE);
-       code = pioctl(parent_dir, VIOC_LISTSYMLINK, &blob, 1);
-       return (code==0);
-}
-
 
        HOURGLASS hourglass;
 
index 1433033..d64f1c4 100644 (file)
@@ -458,7 +458,7 @@ DontUseFile:
   ; Create the AFS service
   GetTempFileName $R0
   File /oname=$R0 "${AFS_WININSTALL_DIR}\Service.exe"
-  nsExec::Exec "$R0 OpenAFSDaemon $INSTDIR\Client\Porgram\afsd_service.exe ""OpenAFS Client Service"""
+  nsExec::Exec "$R0 OpenAFSDaemon ""$INSTDIR\Client\Program\afsd_service.exe"" ""OpenAFS Client Service"""
   Delete $R0
   
   WriteUninstaller "$INSTDIR\Uninstall.exe"
index 77876ab..9a687c5 100644 (file)
@@ -17,7 +17,6 @@
 #include <windows.h>
 #include <commctrl.h>
 #include <WINNT/tal_alloc.h>
-#include <winnt/osi_malloc.h>
 
 
 /*
diff --git a/src/afs/NTMakefile b/src/afs/NTMakefile
new file mode 100644 (file)
index 0000000..e998a8f
--- /dev/null
@@ -0,0 +1,19 @@
+# Copyright 2000, International Business Machines Corporation and others.
+# All Rights Reserved.
+# 
+# This software has been released under the terms of the IBM Public
+# License.  For details, see the LICENSE file in the top-level source
+# directory or online at http://www.openafs.org/dl/license10.html
+
+!INCLUDE ..\config\NTMakefile.$(SYS_NAME)
+
+################################################
+# compile_et to get unified_afs.h
+
+$(DESTDIR)\include\afs\unified_afs.c $(DESTDIR)\include\afs\unified_afs.h:   unified_afs.et  unified_afs.p.h
+   $(DEL) unified_afs.c unified_afs.h
+   $(COMPILE_ET) unified_afs -h unified_afs
+   $(COPY) unified_afs.h $(DESTDIR)\include\afs
+
+install: $(DESTDIR)\include\afs\unified_afs.c
+
index f3d22e3..803d403 100644 (file)
@@ -30,7 +30,6 @@ INCFILES= $(INCFILEDIR)\afs_AdminCommonErrors.h \
        $(INCFILEDIR)\afs_AdminMiscErrors.h \
        $(INCFILEDIR)\afs_AdminPtsErrors.h \
        $(INCFILEDIR)\afs_AdminUtilErrors.h \
-       $(INCFILEDIR)\afsconfig.h \
        $(INCFILEDIR)\afs_AdminVosErrors.h
 
 $(INCFILES):$$(@F)
index cb63e8c..0598ad2 100644 (file)
@@ -32,7 +32,10 @@ $(LIBFILE): $(LIBOBJS)
 rxstat.cs.c rxstat.ss.c rxstat.xdr.c rxstat.h: rxstat.xg
        $(RXGEN) -x $**
 
-install: $(LIBFILE) $(INCFILES)
+copyheader: rxstat.h
+   $(COPY) rxstat.h $(INCFILEDIR)\rx\rxstat.h
+
+install: copyheader $(LIBFILE) $(INCFILES)
 
 install9x: install
 
@@ -42,4 +45,3 @@ clean::
 
 
 mkdir:
-       
index b7b22cf..9672cca 100644 (file)
@@ -1543,7 +1543,9 @@ main(int argc, char *argv[])
     NewParms(1);
 
     /* Open FileLog on stdout, stderr, fd 1 and fd2 (for perror), sigh. */
+#ifndef AFS_NT40_ENV
     serverLogSyslogTag = "fileserver";
+#endif
     OpenLog(AFSDIR_SERVER_FILELOG_FILEPATH);
     SetupLogSignals();
 
index 111f147..e30f8d6 100644 (file)
@@ -225,7 +225,9 @@ main(argc, argv)
     }
     vl_dbaseName = AFSDIR_SERVER_VLDB_FILEPATH;
 
+#ifndef AFS_NT40_ENV
     serverLogSyslogTag = "vlserver";
+#endif
     OpenLog(AFSDIR_SERVER_VLOG_FILEPATH);      /* set up logging */
     SetupLogSignals();
 
index e2890b8..ac206f9 100644 (file)
@@ -1355,74 +1355,74 @@ SizeDumpVolumeHeader(register struct iod *iodp, register Volume * vp,
 {
     int code = 0;
     static char nullString[1] = "";    /*The ``contents'' of motd */
-    afs_int64 addvar;
+    afs_uint64 addvar;
 
 /*     if (!code) code = DumpTag(iodp, D_VOLUMEHEADER); */
     FillInt64(addvar,0, 1);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) {code = DumpInt32(iodp, 'i',V_id(vp));} */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'v',V_stamp(vp).version); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpString(iodp, 'n',V_name(vp)); */
     FillInt64(addvar,0, (2 + strlen(V_name(vp))));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpBool(iodp, 's',V_inService(vp)); */
     FillInt64(addvar,0, 2);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpBool(iodp, 'b',V_blessed(vp)); */
     FillInt64(addvar,0, 2);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'u',V_uniquifier(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpByte(iodp, 't',(byte)V_type(vp)); */
     FillInt64(addvar,0, 2);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code){ code = DumpInt32(iodp, 'p',V_parentId(vp));} */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'c',V_cloneId(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'q',V_maxquota(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'm',V_minquota(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'd',V_diskused(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'f',V_filecount(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'a', V_accountNumber(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'o', V_owner(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'C',V_creationDate(vp));      /\* Rw volume creation date *\/ */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'A',V_accessDate(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'U',V_updateDate(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'E',V_expirationDate(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'B',V_backupDate(vp));                /\* Rw volume backup clone date *\/ */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpString(iodp, 'O',V_offlineMessage(vp)); */
     FillInt64(addvar,0, (2 + strlen(V_offlineMessage(vp))));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     /\* */
 /*      * We do NOT dump the detailed volume statistics residing in the old */
 /*      * motd field, since we cannot tell from the info in a dump whether */
@@ -1431,16 +1431,16 @@ SizeDumpVolumeHeader(register struct iod *iodp, register Volume * vp,
 /*      *\/ */
 /*     if (!code) code = DumpString(iodp, 'M', nullString); */
     FillInt64(addvar,0, (2 + strlen(nullString)));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpArrayInt32(iodp, 'W', (afs_uint32 *)V_weekUse(vp), sizeof(V_weekUse(vp))/sizeof(V_weekUse(vp)[0])); */
     FillInt64(addvar,0, (3 + 4 * (sizeof(V_weekUse(vp)) / sizeof(V_weekUse(vp)[0]))));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'D', V_dayUseDate(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'Z', V_dayUse(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     return code;
 }
 
@@ -1448,9 +1448,9 @@ static int
 SizeDumpEnd(register struct iod *iodp, register struct volintSize *v_size)
 {
     int code = 0;
-    afs_int64 addvar;
+    afs_uint64 addvar;
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     return code;
 }
 
@@ -1481,7 +1481,7 @@ SizeDumpDumpHeader(register struct iod *iodp, register Volume * vp,
     int code = 0;
     int UseLatestReadOnlyClone = 1;
     afs_int32 dumpTimes[2];
-    afs_int64 addvar;
+    afs_uint64 addvar;
 /*    iodp->device = vp->device; */
 /*    iodp->parentId = V_parentId(vp); */
 /*    iodp->dumpPartition = vp->partition; */
@@ -1489,18 +1489,18 @@ SizeDumpDumpHeader(register struct iod *iodp, register Volume * vp,
     ZeroInt64(v_size->dump_size);      /* initialize the size */
 /*     if (!code) code = DumpDouble(iodp, D_DUMPHEADER, DUMPBEGINMAGIC, DUMPVERSION); */
     FillInt64(addvar,0, 9);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'v', UseLatestReadOnlyClone? V_id(vp): V_parentId(vp)); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpString(iodp, 'n',V_name(vp)); */
     FillInt64(addvar,0, (2 + strlen(V_name(vp))));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     dumpTimes[0] = fromtime; */
 /*     dumpTimes[1] = V_backupDate(vp);        /\* Until the time the clone was made *\/ */
 /*     if (!code) code = DumpArrayInt32(iodp, 't', (afs_uint32 *)dumpTimes, 2); */
     FillInt64(addvar,0, (3 + 4 * 2));
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     return code;
 }
 
@@ -1510,57 +1510,57 @@ SizeDumpVnode(register struct iod *iodp, struct VnodeDiskObject *v, int volid,
              register struct volintSize *v_size)
 {
     int code = 0;
-    afs_int64 addvar;
+    afs_uint64 addvar;
 
     if (!v || v->type == vNull)
        return code;
 /*     if (!code) code = DumpDouble(iodp, D_VNODE, vnodeNumber, v->uniquifier); */
     FillInt64(addvar,0, 9);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     if (!dumpEverything)
        return code;
 /*     if (!code)  code = DumpByte(iodp, 't',(byte)v->type); */
     FillInt64(addvar,0, 2);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpShort(iodp, 'l', v->linkCount); /\* May not need this *\/ */
     FillInt64(addvar,0, 3);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'v', v->dataVersion); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'm', v->unixModifyTime); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'a', v->author); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'o', v->owner); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code && v->group) code = DumpInt32(iodp, 'g', v->group);   /\* default group is 0 *\/ */
     if (v->group) {
        FillInt64(addvar,0, 5);
-       AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+       AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     }
 /*     if (!code) code = DumpShort(iodp, 'b', v->modeBits); */
     FillInt64(addvar,0, 3);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 'p', v->parent); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
 /*     if (!code) code = DumpInt32(iodp, 's', v->serverModifyTime); */
     FillInt64(addvar,0, 5);
-    AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+    AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     if (v->type == vDirectory) {
 /*     acl_HtonACL(VVnodeDiskACL(v)); */
 /*     if (!code) code = DumpByteString(iodp, 'A', (byte *) VVnodeDiskACL(v), VAclDiskSize(v)); */
        FillInt64(addvar,0, (1 + VAclDiskSize(v)));
-       AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+       AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     }
 
     if (VNDISK_GET_INO(v)) {
        FillInt64(addvar,0, (v->length + 5));
-       AddInt64(v_size->dump_size, addvar, &v_size->dump_size);
+       AddUInt64(v_size->dump_size, addvar, &v_size->dump_size);
     }
     return code;
 }
index 5658a61..e469d63 100644 (file)
@@ -4805,7 +4805,11 @@ Sizes(as)
     fprintf(STDOUT, "Volume: %s\n", as->parms[0].items->data);
 
     if (as->parms[3].items) {  /* do the dump estimate */
+#ifdef AFS_64BIT_ENV
        vol_size.dump_size = 0;
+#else
+   FillInt64(vol_size.dump_size,0, 1);
+#endif
        code = UV_GetSize(avolid, aserver, apart, fromdate, &vol_size);
        if (code) {
            PrintDiagnostics("size", code);