From 2db48258392cd24f17d0de2b46fceb9039f59953 Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Fri, 28 May 2010 11:03:50 -0500 Subject: [PATCH] Clean up warnings in the tests directory Build repair.o with strict aliasing disabled because it addresses the same data structure via two different structs at the same time. Fix various other, more minor warnings. Several fixes here require more Autoconf glue to work properly, but that's deferred to future work (such as some HAVE_* defines that we don't probe for and the handling of non-native 64-bit integers in some of the code). Change-Id: I721a9fb952d2cf485d2df8e5672e5e5f5d9d6159 Reviewed-on: http://gerrit.openafs.org/2060 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/tests/.gitignore | 2 ++ src/tests/Makefile.in | 17 ++++++++++------ src/tests/afscp.c | 2 +- src/tests/afsdump_dirlist.c | 19 ++++++++++++++---- src/tests/afsdump_extract.c | 5 +++++ src/tests/asu.c | 2 +- src/tests/backuphdr.c | 6 +++++- src/tests/create-stat.c | 8 +++----- src/tests/dumptool.c | 36 +++++++++++++++++++-------------- src/tests/dup2-and-unlog.c | 3 +++ src/tests/fs_lib.c | 12 ++++++----- src/tests/fs_lib.h | 17 ++++++++++++++++ src/tests/fsx.c | 40 ++++++++++++++++++++----------------- src/tests/hardlink2.c | 3 --- src/tests/large-dir2.c | 1 + src/tests/make-page.c | 1 + src/tests/mmap-cat.c | 3 --- src/tests/mmap-vs-read.c | 2 +- src/tests/pine.c | 1 + src/tests/rename6.c | 1 - src/tests/rm-rf.c | 3 +++ src/tests/snprintf.c | 3 +++ src/tests/stagehdr.c | 11 +++++++++- src/tests/test-parallel1.c | 1 + src/tests/test-setgroups.c | 4 ++++ src/tests/test-setpag.c | 3 +++ src/tests/utime-file.c | 1 + src/tests/write-closed2.c | 1 + src/tests/write-large.c | 4 +++- src/tests/write-rand.c | 3 --- src/tests/xf_rxcall.c | 2 +- 31 files changed, 147 insertions(+), 70 deletions(-) create mode 100644 src/tests/fs_lib.h diff --git a/src/tests/.gitignore b/src/tests/.gitignore index 3ac53c83e..140a4ff5d 100644 --- a/src/tests/.gitignore +++ b/src/tests/.gitignore @@ -6,6 +6,7 @@ /xf_errs.h /OS.pm /Dirpath.pm +/afscp /afsdump_dirlist /afsdump_extract /afsdump_scan @@ -54,6 +55,7 @@ /rename6 /rm-rf /run-tests +/run-tests.conf /still-there-p /strange-characters-c /symlink diff --git a/src/tests/Makefile.in b/src/tests/Makefile.in index 4504943d7..2e141a648 100644 --- a/src/tests/Makefile.in +++ b/src/tests/Makefile.in @@ -40,6 +40,10 @@ OBJS_libdumpscan.a = primitive.o util.o dumpscan_errs.o parsetag.o \ TARGETS = libxfiles.a libdumpscan.a \ afsdump_scan afsdump_dirlist afsdump_extract dumptool +all: run-tests OpenAFS/Dirpath.pm libxfiles.a libdumpscan.a $(TEST_PROGRAMS)\ + afsdump_scan afsdump_dirlist afsdump_extract dumptool OpenAFS/Dirpath.sh + @chmod +x run-tests + afsdump_scan: libxfiles.a libdumpscan.a $(OBJS_afsdump_scan) $(CC) $(CFLAGS) $(LDFLAGS) -o afsdump_scan $(OBJS_afsdump_scan) $(LIBS) @@ -76,8 +80,13 @@ dumpscan_errs.c dumpscan_errs.h: dumpscan_errs.et util.o xfiles.o xf_files.o: xf_errs.h backuphdr.o directory.o parsedump.o parsetag.o: dumpscan_errs.h -parsevnode.o parsevol.o pathname.o repair.o: dumpscan_errs.h -stagehdr.o util.o: dumpscan_errs.h +parsevnode.o parsevol.o pathname.o stagehdr.o: dumpscan_errs.h +util.o: dumpscan_errs.h + +# repair addresses the same storage as two different types of structs at the +# same time. +repair.o: repair.c dumpscan_errs.h + $(CCOBJ) $(CFLAGS) @CFLAGS_NOSTRICT@ -c ${srcdir}/repair.c ${TOP_LIBDIR}/libxfiles.a: libxfiles.a ${INSTALL_DATA} $? $@ @@ -339,10 +348,6 @@ install: uninstall: -all: run-tests OpenAFS/Dirpath.pm libxfiles.a libdumpscan.a $(TEST_PROGRAMS)\ - afsdump_scan afsdump_dirlist afsdump_extract dumptool OpenAFS/Dirpath.sh - @chmod +x run-tests - clean: -rm -f xf_errs.c xf_errs.h dumpscan_errs.c dumpscan_errs.h *.o \ $(TARGETS) run-tests $(TEST_PROGRAMS) OpenAFS/Dirpath.pm OpenAFS/Dirpath.sh diff --git a/src/tests/afscp.c b/src/tests/afscp.c index da858d59f..0cbeba4e6 100644 --- a/src/tests/afscp.c +++ b/src/tests/afscp.c @@ -585,7 +585,7 @@ Finish: double rate, size, time; if (finish.tv_sec == start.tv_sec) { printf("Copied %d bytes in %d microseconds\n", filesz, - finish.tv_usec - start.tv_usec); + (int)(finish.tv_usec - start.tv_usec)); } else { printf("Copied %d bytes in %d seconds\n", filesz, (int)(finish.tv_sec - start.tv_sec)); diff --git a/src/tests/afsdump_dirlist.c b/src/tests/afsdump_dirlist.c index 3dced0075..4933c00b0 100644 --- a/src/tests/afsdump_dirlist.c +++ b/src/tests/afsdump_dirlist.c @@ -28,12 +28,23 @@ /* afsdump_dirlist.c - List an AFS directory file */ +#include + #include #include #include #include +#include +#include +#include +#include +#include +#include + #include "dumpscan.h" +#include "dumpscan_errs.h" +#include "xf_errs.h" extern int optind; extern char *optarg; @@ -42,7 +53,6 @@ char *argv0; static char *input_path; static int quiet, verbose, error_count; -static path_hashinfo phi; static dump_parser dp; @@ -67,7 +77,7 @@ parse_options(int argc, char **argv) int c; /* Set the program name */ - if (argv0 = strrchr(argv[0], '/')) + if ((argv0 = strrchr(argv[0], '/')) != NULL) argv0++; else argv0 = argv[0]; @@ -117,11 +127,12 @@ my_error_cb(afs_uint32 code, int fatal, void *ref, char *msg, ...) afs_com_err_va(argv0, code, msg, alist); va_end(alist); } + return 0; } /* Main program */ -void +int main(int argc, char **argv) { XFILE input_file; @@ -154,5 +165,5 @@ main(int argc, char **argv) fprintf(stderr, "*** %d errors\n", error_count); if (r && !quiet) fprintf(stderr, "*** FAILED: %s\n", afs_error_message(r)); - exit(0); + return 0; } diff --git a/src/tests/afsdump_extract.c b/src/tests/afsdump_extract.c index b1ecbb9d2..122c968b9 100644 --- a/src/tests/afsdump_extract.c +++ b/src/tests/afsdump_extract.c @@ -39,6 +39,11 @@ #include #include +#include +#include +#include +#include + #include "dumpscan.h" #include "dumpscan_errs.h" #include "xf_errs.h" diff --git a/src/tests/asu.c b/src/tests/asu.c index ec300b314..fc3c21e08 100644 --- a/src/tests/asu.c +++ b/src/tests/asu.c @@ -41,7 +41,7 @@ #include #include #include - +#include #include diff --git a/src/tests/backuphdr.c b/src/tests/backuphdr.c index 3eb5db2ed..e42cfffc9 100644 --- a/src/tests/backuphdr.c +++ b/src/tests/backuphdr.c @@ -93,6 +93,10 @@ PrintBackupHdr(backup_system_header * hdr) printf(" => %s", ctime(&to)); printf(" Dump Time: %d == %s", hdr->dump_date, ctime(&dd)); printf(" Dump Flags: 0x%08x\n", hdr->flags); - printf(" Length: %d\n", hdr->dumplen); +#ifdef NATIVE_INT64 + printf(" Length: %llu\n", hdr->dumplen); +#else + printf(" Length: %u,%u\n", hdr->dumplen.hi, hdr->dumplen.lo); +#endif printf(" File Num: %d\n", hdr->filenum); } diff --git a/src/tests/create-stat.c b/src/tests/create-stat.c index 3f09fa281..1625b02bd 100644 --- a/src/tests/create-stat.c +++ b/src/tests/create-stat.c @@ -35,6 +35,8 @@ #include #endif +#include + #include #include #include @@ -48,11 +50,7 @@ #include #include - -struct VenusFid { - afs_int32 Cell; - struct AFSFid Fid; -}; +#include static void usage(int ret) diff --git a/src/tests/dumptool.c b/src/tests/dumptool.c index fee670ef3..affa5f9f6 100644 --- a/src/tests/dumptool.c +++ b/src/tests/dumptool.c @@ -279,7 +279,6 @@ int ShutdownInProgress = 0; static int ReadDumpHeader(FILE *, struct DumpHeader *); static int ReadVolumeHeader(FILE *, VolumeDiskData *); static int ScanVnodes(FILE *, VolumeDiskData *, int); -static int DumpVnodeFile(FILE *, struct VnodeDiskObject *, VolumeDiskData *); static struct vnodeData *InsertVnode(unsigned int, struct VnodeDiskObject *); static struct vnodeData *GetVnode(unsigned int); static int CompareVnode(const void *, const void *); @@ -292,7 +291,6 @@ static struct vnodeData *ChangeDirectory(int, char **, struct vnodeData *); static void CopyFile(int, char **, struct vnodeData *, FILE *); static void CopyVnode(int, char **, FILE *); static void DumpAllFiles(int, char **, struct vnodeData *, VolumeDiskData *); -static void DumpAllResidencies(FILE *, struct vnodeData *, VolumeDiskData *); static struct vnodeData *FindFile(struct vnodeData *, char *); static void ResetDirCursor(struct DirCursor *, struct vnodeData *); static struct DirEntry *ReadNextDir(struct DirCursor *, struct vnodeData *); @@ -303,15 +301,23 @@ static int ReadInt32(FILE *, uint32_t *); static int ReadString(FILE *, char *, int); static int ReadByteString(FILE *, void *, int); +#ifdef RESIDENCY +static int DumpVnodeFile(FILE *, struct VnodeDiskObject *, VolumeDiskData *); +static void DumpAllResidencies(FILE *, struct vnodeData *, VolumeDiskData *); +#endif + int main(int argc, char *argv[]) { - int c, errflg = 0, dumpvnodes = 0, force = 0, inode = 0; + int c, errflg = 0, force = 0, inode = 0; unsigned int magic; struct DumpHeader dheader; VolumeDiskData vol; off64_t offset; +#ifdef RESIDENCY int Res, Arg1, Arg2, Arg3, i; + int dumpvnodes = 0; +#endif char *p; struct winsize win; FILE *f; @@ -460,8 +466,8 @@ main(int argc, char *argv[]) } if (verbose) - printf("Dump is for volume %lu (%s)\n", dheader.volumeId, - dheader.volumeName); + printf("Dump is for volume %lu (%s)\n", + (unsigned long) dheader.volumeId, dheader.volumeName); if (getc(f) != D_VOLUMEHEADER) { fprintf(stderr, "Volume header is missing from dump, aborting\n"); @@ -475,8 +481,8 @@ main(int argc, char *argv[]) if (verbose) { printf("Volume information:\n"); - printf("\tid = %lu\n", vol.id); - printf("\tparent id = %lu\n", vol.parentId); + printf("\tid = %lu\n", (unsigned long) vol.id); + printf("\tparent id = %lu\n", (unsigned long) vol.parentId); printf("\tname = %s\n", vol.name); printf("\tflags ="); if (vol.inUse) @@ -488,14 +494,14 @@ main(int argc, char *argv[]) if (vol.needsSalvaged) printf(" needsSalvaged"); printf("\n"); - printf("\tuniquifier = %lu\n", vol.uniquifier); + printf("\tuniquifier = %lu\n", (unsigned long) vol.uniquifier); tmv = vol.creationDate; printf("\tCreation date = %s", ctime(&tmv)); tmv = vol.accessDate; printf("\tLast access date = %s", ctime(&tmv)); tmv = vol.updateDate; printf("\tLast update date = %s", ctime(&tmv)); - printf("\tVolume owner = %lu\n", vol.owner); + printf("\tVolume owner = %lu\n", (unsigned long) vol.owner); } if (verbose) @@ -1409,7 +1415,7 @@ DirListInternal(struct vnodeData *vdata, char *pathnames[], int numpathnames, c = '/'; else if (lvdata->vnode->type == vSymlink) c = '@'; - else if (lvdata->vnode->modeBits & 0111 != 0) + else if ((lvdata->vnode->modeBits & 0111) != 0) c = '*'; else c = ' '; @@ -1898,7 +1904,7 @@ FindFile(struct vnodeData *vdatacwd, char *filename) } if ((vdata = GetVnode(ntohl(ep->fid.vnode))) == NULL) { - fprintf(stderr, "%s: No vnode information for %lu found\n", filename, + fprintf(stderr, "%s: No vnode information for %u found\n", filename, ntohl(ep->fid.vnode)); return NULL; } @@ -1972,7 +1978,7 @@ MakeArgv(char *string, int *argc, char ***argv) *argc = 0; *argv = largv; - while (*la++ = GetToken(s, &s, ap, &ap)) + while ((*la++ = GetToken(s, &s, ap, &ap)) != NULL) (*argc)++; } @@ -2409,15 +2415,15 @@ ReadByteString(FILE * f, void *s, int size) * The directory hashing algorithm used by AFS */ -DirHash(string) - register char *string; +int +DirHash(char *string) { /* Hash a string to a number between 0 and NHASHENT. */ register unsigned char tc; register int hval; register int tval; hval = 0; - while (tc = (*string++)) { + while ((tc = (*string++)) != '\0') { hval *= 173; hval += tc; } diff --git a/src/tests/dup2-and-unlog.c b/src/tests/dup2-and-unlog.c index a03e45506..c3e05c5dd 100644 --- a/src/tests/dup2-and-unlog.c +++ b/src/tests/dup2-and-unlog.c @@ -8,6 +8,9 @@ #include #include +#include +#include + int main(int argc, char **argv) { diff --git a/src/tests/fs_lib.c b/src/tests/fs_lib.c index 83617296a..1a068c04f 100644 --- a/src/tests/fs_lib.c +++ b/src/tests/fs_lib.c @@ -51,13 +51,12 @@ #include #include #include +#include -enum { PIOCTL_MAXSIZE = 2000 }; +#include +#include -struct VenusFid { - afs_int32 Cell; - struct AFSFid Fid; -}; +enum { PIOCTL_MAXSIZE = 2000 }; /* * fs_getfid, the the `fid' that `path' points on. @@ -431,6 +430,8 @@ fs_invalidate(const char *path) * outflags == NULL -> don't return */ +#if defined(VIOC_XFSDEBUG) || defined(VIOC_XFSDEBUG_PRINT) \ + || defined(VIOC_ARLADEBUG) static int debug(int pioctl_cmd, int inflags, int *outflags, char *pathname) { @@ -463,6 +464,7 @@ debug(int pioctl_cmd, int inflags, int *outflags, char *pathname) return 0; } +#endif /* * xfs_debug diff --git a/src/tests/fs_lib.h b/src/tests/fs_lib.h new file mode 100644 index 000000000..deef8b5fb --- /dev/null +++ b/src/tests/fs_lib.h @@ -0,0 +1,17 @@ +/* Prototypes for fs_lib.c. */ + +#ifndef FS_LIB_H +#define FS_LIB_H 1 + +#include +#include + +struct VenusFid { + afs_int32 Cell; + struct AFSFid Fid; +}; + +int fs_getfid(char *, struct VenusFid *); +int fs_rmmount(const char *); + +#endif /* !FS_LIB_H */ diff --git a/src/tests/fsx.c b/src/tests/fsx.c index 44b7f309c..86137eaeb 100644 --- a/src/tests/fsx.c +++ b/src/tests/fsx.c @@ -393,9 +393,10 @@ doread(unsigned offset, unsigned size) return; if (!quiet - && (progressinterval && testcalls % progressinterval == 0 || debug - && (monitorstart == -1 || offset + size > monitorstart - && (monitorend == -1 || offset <= monitorend)))) + && ((progressinterval && testcalls % progressinterval == 0) + || (debug + && (monitorstart == -1 || offset + size > monitorstart) + && (monitorend == -1 || offset <= monitorend)))) prt("%lu read\t0x%x thru\t0x%x\t(0x%x bytes)\n", testcalls, offset, offset + size - 1, size); ret = lseek(fd, (off_t) offset, SEEK_SET); @@ -442,9 +443,10 @@ domapread(unsigned offset, unsigned size) return; if (!quiet - && (progressinterval && testcalls % progressinterval == 0 || debug - && (monitorstart == -1 || offset + size > monitorstart - && (monitorend == -1 || offset <= monitorend)))) + && ((progressinterval && testcalls % progressinterval == 0) + || (debug + && (monitorstart == -1 || offset + size > monitorstart) + && (monitorend == -1 || offset <= monitorend)))) prt("%lu mapread\t0x%x thru\t0x%x\t(0x%x bytes)\n", testcalls, offset, offset + size - 1, size); @@ -510,9 +512,10 @@ dowrite(unsigned offset, unsigned size) return; if (!quiet - && (progressinterval && testcalls % progressinterval == 0 || debug - && (monitorstart == -1 || offset + size > monitorstart - && (monitorend == -1 || offset <= monitorend)))) + && ((progressinterval && testcalls % progressinterval == 0) + || (debug + && (monitorstart == -1 || offset + size > monitorstart) + && (monitorend == -1 || offset <= monitorend)))) prt("%lu write\t0x%x thru\t0x%x\t(0x%x bytes)\n", testcalls, offset, offset + size - 1, size); ret = lseek(fd, (off_t) offset, SEEK_SET); @@ -565,9 +568,10 @@ domapwrite(unsigned offset, unsigned size) return; if (!quiet - && (progressinterval && testcalls % progressinterval == 0 || debug - && (monitorstart == -1 || offset + size > monitorstart - && (monitorend == -1 || offset <= monitorend)))) + && ((progressinterval && testcalls % progressinterval == 0) + || (debug + && (monitorstart == -1 || offset + size > monitorstart) + && (monitorend == -1 || offset <= monitorend)))) prt("%lu mapwrite\t0x%x thru\t0x%x\t(0x%x bytes)\n", testcalls, offset, offset + size - 1, size); @@ -620,8 +624,9 @@ dotruncate(unsigned size) if (testcalls <= simulatedopcount) return; - if (progressinterval && testcalls % progressinterval == 0 || debug - && (monitorstart == -1 || monitorend == -1 || size <= monitorend)) + if ((progressinterval && testcalls % progressinterval == 0) + || (debug + && (monitorstart == -1 || monitorend == -1 || size <= monitorend))) prt("%lu trunc\tfrom 0x%x to 0x%x\n", testcalls, oldsize, size); if (ftruncate(fd, (off_t) size) == -1) { prt("ftruncate1: %x\n", size); @@ -632,7 +637,7 @@ dotruncate(unsigned size) void -writefileimage() +writefileimage(void) { ssize_t iret; @@ -749,8 +754,7 @@ test(void) void -cleanup(sig) - int sig; +cleanup(int sig) { if (sig) prt("signal %d\n", sig); @@ -1027,7 +1031,7 @@ main(int argc, char **argv) warn("main: error on write"); } else warn("main: short write, 0x%x bytes instead of 0x%x\n", - (unsigned)written, maxfilelen); + (unsigned)written, (unsigned)maxfilelen); exit(98); } } else diff --git a/src/tests/hardlink2.c b/src/tests/hardlink2.c index 210d90f03..e74505367 100644 --- a/src/tests/hardlink2.c +++ b/src/tests/hardlink2.c @@ -46,10 +46,7 @@ int main(int argc, char *argv[]) { - int fd1; int ret; - struct stat sb1; - ret = mkdir("1", 0777); if (ret < 0) diff --git a/src/tests/large-dir2.c b/src/tests/large-dir2.c index 06797139a..891a2b959 100644 --- a/src/tests/large-dir2.c +++ b/src/tests/large-dir2.c @@ -43,6 +43,7 @@ #include #include #include +#include #include diff --git a/src/tests/make-page.c b/src/tests/make-page.c index 475efeeca..2a0d89681 100644 --- a/src/tests/make-page.c +++ b/src/tests/make-page.c @@ -46,6 +46,7 @@ #include #include #include +#include #include diff --git a/src/tests/mmap-cat.c b/src/tests/mmap-cat.c index efea1319e..153e7f896 100644 --- a/src/tests/mmap-cat.c +++ b/src/tests/mmap-cat.c @@ -105,7 +105,6 @@ doit(const char *filename, void (*func) (int, struct stat *)) static int read_flag; static int mmap_flag; -static int help_flag; static void usage(int exit_val) @@ -117,8 +116,6 @@ usage(int exit_val) int main(int argc, char **argv) { - int optind = 0; - if (argc != 2) usage(1); diff --git a/src/tests/mmap-vs-read.c b/src/tests/mmap-vs-read.c index e4879b3e2..0d875022f 100644 --- a/src/tests/mmap-vs-read.c +++ b/src/tests/mmap-vs-read.c @@ -133,7 +133,7 @@ do_test(int randomp) err(1, "open %s", file); mmap_buf = mmap_file(fd, sz); - malloc_buf = read_file(fd, sz); + malloc_buf = (unsigned char *) read_file(fd, sz); close(fd); unlink(file); if (memcmp(malloc_buf, mmap_buf, sz) != 0) { diff --git a/src/tests/pine.c b/src/tests/pine.c index cd686111c..cf66e8c2a 100644 --- a/src/tests/pine.c +++ b/src/tests/pine.c @@ -41,6 +41,7 @@ #include #include #include +#include #include diff --git a/src/tests/rename6.c b/src/tests/rename6.c index e4bd78a74..422848294 100644 --- a/src/tests/rename6.c +++ b/src/tests/rename6.c @@ -55,7 +55,6 @@ main(int argc, char **argv) { int ret; int fd; - struct stat old_sb, new_sb, dot_sb; fd = open("foo", O_RDWR | O_CREAT | O_TRUNC, 0644); if (fd < 0) diff --git a/src/tests/rm-rf.c b/src/tests/rm-rf.c index d5045e46e..5d0d760a9 100644 --- a/src/tests/rm-rf.c +++ b/src/tests/rm-rf.c @@ -44,7 +44,10 @@ #include #include +#include + #include +#include static void kill_one(const char *filename); diff --git a/src/tests/snprintf.c b/src/tests/snprintf.c index ed86a12d8..f5ce26419 100644 --- a/src/tests/snprintf.c +++ b/src/tests/snprintf.c @@ -44,6 +44,9 @@ #ifndef HAVE_VASNPRINTF int vasnprintf(char **ret, size_t max_sz, const char *format, va_list args); #endif +#ifndef HAVE_VASPRINTF +int vasprintf(char**ret, const char *format, va_list args); +#endif #ifndef min #define min(a, b) ((a) > (b) ? (b) : (a)) diff --git a/src/tests/stagehdr.c b/src/tests/stagehdr.c index c5fc43e95..b1d8db165 100644 --- a/src/tests/stagehdr.c +++ b/src/tests/stagehdr.c @@ -99,7 +99,12 @@ ParseStageHdr(XFILE * X, unsigned char *tag, backup_system_header * hdr) hdr->dump_date = ntohl(bckhdr->c_time); hdr->filenum = ntohl(bckhdr->c_filenum); hdr->volid = ntohl(bckhdr->c_id); +#ifdef NATIVE_INT64 hdr->dumplen = ntohl(bckhdr->c_length); +#else + hdr->dumplen.hi = 0; + hdr->dumplen.lo = ntohl(bckhdr->c_length); +#endif hdr->level = ntohl(bckhdr->c_level); hdr->magic = ntohl(bckhdr->c_magic); hdr->cksum = ntohl(bckhdr->c_checksum); @@ -145,7 +150,11 @@ DumpStageHdr(XFILE * OX, backup_system_header * hdr) bckhdr->c_filenum = htonl(hdr->filenum); bckhdr->c_time = htonl(hdr->dump_date); bckhdr->c_id = htonl(hdr->volid); - bckhdr->c_length = htonl(hdr->dumplen); +#ifdef NATIVE_INT64 + bckhdr->c_length = htonl((afs_uint32) hdr->dumplen); +#else + bckhdr->c_length = htonl(hdr->dumplen.lo); +#endif bckhdr->c_level = htonl(hdr->level); bckhdr->c_magic = htonl(STAGE_MAGIC); bckhdr->c_flags = htonl(hdr->flags); diff --git a/src/tests/test-parallel1.c b/src/tests/test-parallel1.c index dd208c632..e5fc6353a 100644 --- a/src/tests/test-parallel1.c +++ b/src/tests/test-parallel1.c @@ -36,6 +36,7 @@ #endif #include +#include #include #include #include diff --git a/src/tests/test-setgroups.c b/src/tests/test-setgroups.c index 72730d772..76f012bf3 100644 --- a/src/tests/test-setgroups.c +++ b/src/tests/test-setgroups.c @@ -35,6 +35,7 @@ #include #endif +#include #include #include #include @@ -42,6 +43,9 @@ #include #include +#include +#include + #include #if !defined(NGROUPS) && defined(NGROUPS_MAX) diff --git a/src/tests/test-setpag.c b/src/tests/test-setpag.c index d9294981c..90be89c91 100644 --- a/src/tests/test-setpag.c +++ b/src/tests/test-setpag.c @@ -43,6 +43,9 @@ #include #include +#include +#include + #include #if !defined(NGROUPS) && defined(NGROUPS_MAX) diff --git a/src/tests/utime-file.c b/src/tests/utime-file.c index 2594b670d..be2135ee9 100644 --- a/src/tests/utime-file.c +++ b/src/tests/utime-file.c @@ -42,6 +42,7 @@ #include #include #include +#include #include diff --git a/src/tests/write-closed2.c b/src/tests/write-closed2.c index a812ff3eb..53305b4bc 100644 --- a/src/tests/write-closed2.c +++ b/src/tests/write-closed2.c @@ -59,6 +59,7 @@ #include #include #include +#include #ifndef MAP_FAILED #define MAP_FAILED ((void *)-1) diff --git a/src/tests/write-large.c b/src/tests/write-large.c index 0e3bd5b54..70a9342cf 100644 --- a/src/tests/write-large.c +++ b/src/tests/write-large.c @@ -31,7 +31,9 @@ * SUCH DAMAGE. */ -#define _LARGEFILE64_SOURCE +#ifndef _LARGEFILE64_SOURCE +# define _LARGEFILE64_SOURCE +#endif #ifdef HAVE_CONFIG_H #include diff --git a/src/tests/write-rand.c b/src/tests/write-rand.c index 1891f9883..07bbcf06e 100644 --- a/src/tests/write-rand.c +++ b/src/tests/write-rand.c @@ -81,9 +81,6 @@ main(int argc, char **argv) { const char *file; size_t sz; - char *random_buf; - char *read_buf1; - char *read_buf2; int fd; if (argc != 3) diff --git a/src/tests/xf_rxcall.c b/src/tests/xf_rxcall.c index 1c7100e3e..97c23bf75 100644 --- a/src/tests/xf_rxcall.c +++ b/src/tests/xf_rxcall.c @@ -184,7 +184,7 @@ xfon_voldump(XFILE * X, int flag, char *name) struct ktc_principal sname; struct ktc_token token; struct afsconf_dir *confdir; - afs_uint32 code, server_addr; + afs_uint32 code, server_addr = 0; afs_int32 volid, date, partid = 0; int isnum, index; char *x, *y; -- 2.39.5