X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/fbc3514412c8faf2a0ef372ef3e5f335b20d9d18..c1ff70aa47e11c5b37634479a0facee775a7b6d9:/tru64.diff diff --git a/tru64.diff b/tru64.diff index 4afdf59..a2dac69 100644 --- a/tru64.diff +++ b/tru64.diff @@ -1,220 +1,20 @@ -Hi Eckert, +This is an adapted version of the original by Zoong Pham. -On Thu, Mar 21, 2002 at 03:15:39PM -0500, Eckert, Robert D wrote: -> Greetings, here is the output of the 'configure' step and -> the compile step (using the Compaq cc compiler that comes -> with Tru64 V5.1A. The configure reported success and most of -> the compile steps cam through error/warning free except for -> the one that stumbled. Can someone help me out here? I am willing -> to provide a binary for Tru64 V5.1A if we can swat this bug. +To use this patch, run these commands for a successful build: -I had the same problem. I managed to have rsync compiled OK on my -Tru64 5.1 box with helps from couple of people from this list. -Try with the patch I attach here. -I am not a C programmer so you'd better check to make sure it is -correct. + patch -p1 We depend greatly on Rsync to keep a fresh backup of our -> 70gb storage system that is the backend of http://www.indiana.edu/, -> Indiana University's main web site to the Internet. - -I plan to do the same here instead of Tru64 vdump and vrestore -once I am sure backups by rsync is as reliable as vdump/vrestore. -Do you use rsync for root, usr partitions and and database files? -Have you had any problem with rsync so far? - -Cheers, --- -Zoong Pham zpham@mercy.com.au -UNIX Systems Administrator Mercy Health and Aged Care Inc. - -To get my PGP public key, email me with the subject: -Request for Zoong Pham's PGP public key - - - - -diff -u -r rsync-2.5.4/batch.c rsync-2.5.4.new/batch.c ---- rsync-2.5.4/batch.c Thu Feb 7 08:20:48 2002 -+++ rsync-2.5.4.new/batch.c Fri Mar 22 09:24:01 2002 -@@ -405,7 +405,15 @@ - - /* FIXME: This will break if s->count is ever not exactly an int. */ - write_batch_csums_file(flist_entry, sizeof(int)); -+ if (s) { -+ write_batch_csums_file(&s->count, sizeof(int)); -+ } -+ else if (!s) { -+ write_batch_csums_file(&int_zero, sizeof(int)); -+ } -+ /* - write_batch_csums_file(s ? &s->count : &int_zero, sizeof(int)); -+ */ - - if (s) { - for (i = 0; i < s->count; i++) { -diff -u -r rsync-2.5.4/config.h.in rsync-2.5.4.new/config.h.in ---- rsync-2.5.4/config.h.in Thu Feb 28 10:15:55 2002 -+++ rsync-2.5.4.new/config.h.in Fri Mar 22 09:24:01 2002 -@@ -140,6 +140,9 @@ - /* Define if you have the `mknod' function. */ - #undef HAVE_MKNOD - -+/* Define if you have the `mkfifo' function. */ -+#undef HAVE_MKFIFO -+ - /* Define if you have the `mtrace' function. */ - #undef HAVE_MTRACE - -@@ -244,6 +247,9 @@ - - /* Define if you have the header file. */ - #undef HAVE_SYS_SOCKET_H -+ -+/* Define if you have the header file. */ -+#undef HAVE_SYS_UN_H +based-on: a01e3b490eb36ccf9e704840e1b6683dab867550 +diff --git a/syscall.c b/syscall.c +--- a/syscall.c ++++ b/syscall.c +@@ -23,6 +23,7 @@ + #include "rsync.h" - /* Define if you have the header file. */ - #undef HAVE_SYS_STAT_H -diff -u -r rsync-2.5.4/configure rsync-2.5.4.new/configure ---- rsync-2.5.4/configure Wed Mar 13 11:03:50 2002 -+++ rsync-2.5.4.new/configure Fri Mar 22 09:24:01 2002 -@@ -3414,7 +3414,7 @@ - fi - done - --for ac_header in sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h -+for ac_header in sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h sys/un.h - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` - echo "$as_me:3420: checking for $ac_header" >&5 -@@ -6165,7 +6165,7 @@ - fi - rm -f conftest.data - --for ac_func in waitpid wait4 getcwd strdup strerror chown chmod mknod -+for ac_func in waitpid wait4 getcwd strdup strerror chown chmod mknod mkfifo - do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` - echo "$as_me:6171: checking for $ac_func" >&5 -diff -u -r rsync-2.5.4/configure.in rsync-2.5.4.new/configure.in ---- rsync-2.5.4/configure.in Wed Mar 13 11:03:34 2002 -+++ rsync-2.5.4.new/configure.in Fri Mar 22 09:24:01 2002 -@@ -242,7 +242,7 @@ - AC_HEADER_SYS_WAIT - AC_CHECK_HEADERS(sys/fcntl.h sys/select.h fcntl.h sys/time.h sys/unistd.h unistd.h utime.h grp.h) - AC_CHECK_HEADERS(compat.h sys/param.h ctype.h sys/wait.h sys/ioctl.h) --AC_CHECK_HEADERS(sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h) -+AC_CHECK_HEADERS(sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h sys/un.h) - AC_CHECK_HEADERS(glob.h alloca.h mcheck.h sys/sysctl.h arpa/inet.h arpa/nameser.h) - AC_CHECK_HEADERS(netdb.h) - AC_CHECK_HEADERS(malloc.h) -@@ -315,7 +315,19 @@ - AC_CHECK_FUNCS(inet_ntop, , AC_LIBOBJ(lib/inet_ntop)) - AC_CHECK_FUNCS(inet_pton, , AC_LIBOBJ(lib/inet_pton)) - --AC_CHECK_FUNCS(getaddrinfo, , AC_LIBOBJ(lib/getaddrinfo)) -+# Tru64 UNIX has getaddrinfo() but has it renamed in libc as -+# something else so we must include to get the -+# redefinition. -+AC_MSG_CHECKING([for getaddrinfo]) -+AC_TRY_LINK([#include -+#include -+#include ],[getaddrinfo(NULL, NULL, NULL, NULL);], -+ [AC_MSG_RESULT([yes]) -+ AC_DEFINE(HAVE_GETADDRINFO, 1, -+ [Define if you have the `getaddrinfo' function.])], -+ [AC_MSG_RESULT([no]) -+ AC_LIBOBJ(lib/getaddrinfo)]) -+ - AC_CHECK_FUNCS(getnameinfo, , AC_LIBOBJ(lib/getnameinfo)) - - AC_CHECK_MEMBER([struct sockaddr.sa_len], -@@ -348,7 +360,7 @@ - dnl AC_FUNC_MEMCMP - - AC_FUNC_UTIME_NULL --AC_CHECK_FUNCS(waitpid wait4 getcwd strdup strerror chown chmod mknod) -+AC_CHECK_FUNCS(waitpid wait4 getcwd strdup strerror chown chmod mknod mkfifo) - AC_CHECK_FUNCS(fchmod fstat strchr readlink link utime utimes strftime) - AC_CHECK_FUNCS(memmove lchown vsnprintf snprintf asprintf setsid glob strpbrk) - AC_CHECK_FUNCS(strlcat strlcpy mtrace mallinfo setgroups) -diff -u -r rsync-2.5.4/lib/getaddrinfo.c rsync-2.5.4.new/lib/getaddrinfo.c ---- rsync-2.5.4/lib/getaddrinfo.c Fri Dec 14 16:33:12 2001 -+++ rsync-2.5.4.new/lib/getaddrinfo.c Fri Mar 22 09:24:10 2002 -@@ -41,6 +41,20 @@ - - #include - -+/****** Start Zoong added here */ -+ -+#define EAI_BADHINTS 12 -+#define EAI_PROTOCOL 13 -+#define EAI_MAX 14 -+ -+#define AI_PASSIVE 0x00000001 /* get address to use bind() */ -+#define AI_CANONNAME 0x00000002 /* fill ai_canonname */ -+#define AI_NUMERICHOST 0x00000004 /* prevent name resolution */ -+#define AI_MASK (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST) -+ -+/****** End Zoong added here */ -+ -+ - #if defined(__KAME__) && defined(INET6) - # define FAITH - #endif -diff -u -r rsync-2.5.4/rsync.h rsync-2.5.4.new/rsync.h ---- rsync-2.5.4/rsync.h Sat Feb 23 11:17:50 2002 -+++ rsync-2.5.4.new/rsync.h Fri Mar 22 09:24:01 2002 -@@ -109,6 +109,11 @@ - #include - #endif - -+#ifdef HAVE_SYS_UN_H + #if !defined MKNOD_CREATES_SOCKETS && defined HAVE_SYS_UN_H +#define _SOCKADDR_LEN -+#include -+#endif -+ - #ifdef HAVE_STRING_H - #include - #endif -diff -u -r rsync-2.5.4/syscall.c rsync-2.5.4.new/syscall.c ---- rsync-2.5.4/syscall.c Tue Feb 19 09:44:23 2002 -+++ rsync-2.5.4.new/syscall.c Fri Mar 22 09:24:01 2002 -@@ -67,6 +67,36 @@ - { - if (dry_run) return 0; - CHECK_RO -+ -+#if HAVE_MKFIFO -+ if (S_ISFIFO(mode)) { -+ return mkfifo(pathname, mode); -+ } -+#endif -+ -+#if HAVE_SYS_UN_H -+ if (S_ISSOCK(mode)) { -+ int sock; -+ struct sockaddr_un saddr; -+ int len = strlen(pathname) + 1; /* include null */ -+ -+ saddr.sun_family = AF_UNIX; -+ strncpy(saddr.sun_path, pathname, sizeof(saddr.sun_path)); -+ saddr.sun_len = len > sizeof(saddr.sun_path) ? sizeof(saddr.sun_path): len; -+ -+ if ((sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) { -+ return -1; -+ } -+ unlink(pathname); -+ if ((bind(sock, (struct sockaddr*)&saddr, sizeof(saddr))) < 0) { -+ return -1; -+ } -+ close(sock); -+ return do_chmod(pathname, mode); -+ } -+#endif -+ -+ - return mknod(pathname, mode, dev); - } + #include #endif + #ifdef HAVE_SYS_ATTR_H