diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2007-12-12 13:19:02 +0000 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2007-12-12 13:19:02 +0000 |
commit | 57adf50a0299978606069e64b994e9bfb58ad701 (patch) | |
tree | daf5506f682c93a5b6d64c79aa179e57ddf67ef0 /gacopyz/gacopyz.c | |
parent | 0f78d4cebb75377eeb3c61e349e8eb088d9d88be (diff) | |
download | mailfromd-57adf50a0299978606069e64b994e9bfb58ad701.tar.gz mailfromd-57adf50a0299978606069e64b994e9bfb58ad701.tar.bz2 |
* src/syslog_async.c: Include config.h, netinet/in.h and signal.h
Conditionally include paths.h, provide replacements for _PATH_LOG
and _PATH_CONSOLE if it is absent.
Provide dummy replacement for MSG_NOSIGNAL and LOG_PERROR.
(log_write_async): Ignore SIGPIPE if MSG_NOSIGNAL is not defined.
* src/main.c: Conditionally compile syslog-async stuff.
* src/Makefile.am: Likewise.
* configure.ac: Check for paths.h.
Restore previous meaning of --enable-syslog-async.
(DEFAULT_SYSLOG_ASYNC): New variable.
Raise version number to 4.2.1.
* doc/mailfromd.texi: Reflect above-mentioned changes.
* gacopyz/server.c, gacopyz/gacopyz.c: Rename all sun to s_un and
sin to s_in, to avoid name clashes.
* NEWS (4.2.1): New entry.
git-svn-id: file:///svnroot/mailfromd/tags/release_4_2@1535 7a8a7f39-df28-0410-adc6-e0d955640f24
Diffstat (limited to 'gacopyz/gacopyz.c')
-rw-r--r-- | gacopyz/gacopyz.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/gacopyz/gacopyz.c b/gacopyz/gacopyz.c index 1fff7edb..24f694e8 100644 --- a/gacopyz/gacopyz.c +++ b/gacopyz/gacopyz.c @@ -149,14 +149,14 @@ static int do_connect(gacopyz_conn_t conn, const char *cstr, char *proto, char *port, char *path, int backlog, int rmsocket) { union { struct sockaddr sa; - struct sockaddr_in sin; - struct sockaddr_un sun; + struct sockaddr_in s_in; + struct sockaddr_un s_un; } addr; int socklen; int fd, flags; int yes = 1; if (!proto @@ -168,23 +168,23 @@ do_connect(gacopyz_conn_t conn, _("%s: invalid connection type: %s; " "port is meaningless for UNIX sockets"), conn->desc.xxfi_name, cstr); return -1; } - if (strlen(path) > sizeof addr.sun.sun_path) { + if (strlen(path) > sizeof addr.s_un.sun_path) { errno = EINVAL; gacopyz_log(conn, SMI_LOG_ERR, _("%s: %s: UNIX socket name too long"), conn->desc.xxfi_name, path); return -1; } addr.sa.sa_family = PF_UNIX; - socklen = sizeof(addr.sun); - strcpy(addr.sun.sun_path, path); + socklen = sizeof(addr.s_un); + strcpy(addr.s_un.sun_path, path); if (stat(path, &st)) { if (errno == ENOENT) { conn->cleanup = cleanup_unix_socket; conn->cleanup_data = strdup(path); } else { @@ -214,13 +214,13 @@ do_connect(gacopyz_conn_t conn, } else if (strcmp(proto, "inet") == 0) { short pnum; long num; char *p; addr.sa.sa_family = PF_INET; - socklen = sizeof(addr.sin); + socklen = sizeof(addr.s_in); if (!port) { gacopyz_log(conn, SMI_LOG_ERR, _("%s: invalid connection type: %s; " "missing port number"), conn->desc.xxfi_name, cstr); @@ -247,26 +247,26 @@ do_connect(gacopyz_conn_t conn, return -1; } pnum = sp->s_port; } if (!path) - addr.sin.sin_addr.s_addr = INADDR_ANY; + addr.s_in.sin_addr.s_addr = INADDR_ANY; else { struct hostent *hp = gethostbyname(path); if (!hp) { gacopyz_log(conn, SMI_LOG_ERR, _("%s: Unknown host name %s"), conn->desc.xxfi_name, path); return -1; } addr.sa.sa_family = hp->h_addrtype; switch (hp->h_addrtype) { case AF_INET: - memmove(&addr.sin.sin_addr, hp->h_addr, 4); - addr.sin.sin_port = pnum; + memmove(&addr.s_in.sin_addr, hp->h_addr, 4); + addr.s_in.sin_port = pnum; break; default: gacopyz_log(conn, SMI_LOG_ERR, _("%s: invalid connection type: %s; " "unsupported address family"), |