From 9bb5ff6c411d35a2ebae30110cbd5b431e36abcf Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Wed, 22 Sep 2004 16:37:45 +0000 Subject: [PATCH] Moved the mkfifo() and socket-making code to mkfifo.diff. --- tru64.diff | 48 +++++++----------------------------------------- 1 file changed, 7 insertions(+), 41 deletions(-) diff --git a/tru64.diff b/tru64.diff index e278244..ed7cfab 100644 --- a/tru64.diff +++ b/tru64.diff @@ -1,3 +1,5 @@ +Depends-On-Patch: mkfifo.diff + This is an adapted version of the original by Zoong Pham. --- orig/lib/getaddrinfo.c 2004-03-16 01:26:36 @@ -23,49 +25,13 @@ This is an adapted version of the original by Zoong Pham. #if defined(__KAME__) && defined(INET6) # define FAITH #endif ---- orig/rsync.h 2004-08-03 15:41:32 +--- orig/rsync.h 2004-07-03 20:23:33 +++ rsync.h 2004-07-03 20:23:33 -@@ -162,6 +162,11 @@ enum msgcode { - #include +@@ -164,6 +164,7 @@ enum msgcode { #endif -+#ifdef HAVE_SYS_UN_H + #ifdef HAVE_SYS_UN_H +#define _SOCKADDR_LEN -+#include -+#endif -+ - #ifdef HAVE_STRING_H - #include - #endif ---- orig/syscall.c 2004-08-02 21:56:59 -+++ syscall.c 2004-06-18 17:38:35 -@@ -76,6 +76,29 @@ int do_mknod(char *pathname, mode_t mode - { - if (dry_run) return 0; - RETURN_ERROR_IF_RO_OR_LO; -+# 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 + -- 2.34.1