Commit | Line | Data |
---|---|---|
2c8f6e6e | 1 | This is an adapted version of the original by Zoong Pham. |
fbc35144 | 2 | |
2c8f6e6e WD |
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 { | |
fbc35144 MP |
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 | |
2c8f6e6e WD |
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 | |
fbc35144 MP |
20 | { |
21 | if (dry_run) return 0; | |
2c8f6e6e WD |
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 */ | |
fbc35144 | 32 | + |
2c8f6e6e WD |
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; | |
fbc35144 | 36 | + |
2c8f6e6e WD |
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 */ | |
fbc35144 | 56 | + |
2c8f6e6e WD |
57 | +#define EAI_BADHINTS 12 |
58 | +#define EAI_PROTOCOL 13 | |
59 | +#define EAI_MAX 14 | |
fbc35144 | 60 | + |
2c8f6e6e WD |
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) | |
fbc35144 | 65 | + |
2c8f6e6e | 66 | +/****** End Zoong added here */ |
fbc35144 | 67 | + |
2c8f6e6e WD |
68 | + |
69 | #if defined(__KAME__) && defined(INET6) | |
70 | # define FAITH | |
fbc35144 | 71 | #endif |