This is now in CVS.
[rsync/rsync-patches.git] / tru64.diff
... / ...
CommitLineData
1This is an adapted version of the original by Zoong Pham.
2
3--- rsync.h 11 Feb 2004 08:01:21 -0000 1.186
4+++ rsync.h 23 Feb 2004 18:56:02 -0000
5@@ -156,6 +156,11 @@ enum msgcode {
6 #include <sys/socket.h>
7 #endif
8
9+#ifdef HAVE_SYS_UN_H
10+#define _SOCKADDR_LEN
11+#include <sys/un.h>
12+#endif
13+
14 #ifdef HAVE_STRING_H
15 #include <string.h>
16 #endif
17--- syscall.c 18 Feb 2004 22:33:21 -0000 1.30
18+++ syscall.c 23 Feb 2004 18:56:02 -0000
19@@ -76,6 +76,29 @@ int do_mknod(char *pathname, mode_t mode
20 {
21 if (dry_run) return 0;
22 RETURN_ERROR_IF_RO_OR_LO;
23+# if HAVE_MKFIFO
24+ if (S_ISFIFO(mode))
25+ return mkfifo(pathname, mode);
26+# endif
27+# if HAVE_SYS_UN_H
28+ if (S_ISSOCK(mode)) {
29+ int sock;
30+ struct sockaddr_un saddr;
31+ int len = strlen(pathname) + 1; /* include null */
32+
33+ saddr.sun_family = AF_UNIX;
34+ strncpy(saddr.sun_path, pathname, sizeof saddr.sun_path);
35+ saddr.sun_len = len > sizeof saddr.sun_path ? sizeof saddr.sun_path: len;
36+
37+ if ((sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
38+ return -1;
39+ unlink(pathname);
40+ if ((bind(sock, (struct sockaddr*)&saddr, sizeof saddr)) < 0)
41+ return -1;
42+ close(sock);
43+ return do_chmod(pathname, mode);
44+ }
45+# endif
46 return mknod(pathname, mode, dev);
47 }
48 #endif
49--- lib/getaddrinfo.c 10 Jan 2003 22:38:25 -0000 1.17
50+++ lib/getaddrinfo.c 23 Feb 2004 18:56:02 -0000
51@@ -41,6 +41,20 @@
52
53 #include <rsync.h>
54
55+/****** Start Zoong added here */
56+
57+#define EAI_BADHINTS 12
58+#define EAI_PROTOCOL 13
59+#define EAI_MAX 14
60+
61+#define AI_PASSIVE 0x00000001 /* get address to use bind() */
62+#define AI_CANONNAME 0x00000002 /* fill ai_canonname */
63+#define AI_NUMERICHOST 0x00000004 /* prevent name resolution */
64+#define AI_MASK (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST)
65+
66+/****** End Zoong added here */
67+
68+
69 #if defined(__KAME__) && defined(INET6)
70 # define FAITH
71 #endif