* Copyright (c) 1987-2011 by the citadel.org team
*
* This program is open source software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as published
- * by the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
+ * modify it under the terms of the GNU General Public License, version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "sysdep.h"
#include <sys/time.h>
#include <sys/socket.h>
#include <netinet/in.h>
-#include <sys/un.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <string.h>
#include <libcitadel.h>
#include "citadel.h"
#include "server.h"
-#ifndef HAVE_SNPRINTF
-#include "snprintf.h"
-#endif
#include "sysdep_decls.h"
#include "config.h"
#include "clientsocket.h"
#include "ctdl_module.h"
-
-/*
- * Connect to a unix domain socket (normally called by sock_connect() passthru)
- */
-int uds_sock_connect(char *sockpath)
-{
- struct sockaddr_un addr;
- int s;
-
- memset(&addr, 0, sizeof(addr));
- addr.sun_family = AF_UNIX;
- safestrncpy(addr.sun_path, sockpath, sizeof addr.sun_path);
-
- s = socket(AF_UNIX, SOCK_STREAM, 0);
- if (s < 0) {
- syslog(LOG_ERR, "socket() failed: %s", strerror(errno));
- return(-1);
- }
-
- if (connect(s, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
- syslog(LOG_ERR, "connect() failed: %s", strerror(errno));
- close(s);
- return(-1);
- }
-
- return s;
-}
-
-
-/*
- * Connect to a service via a client socket. This supports both IPv4 and IPv6.
- * If the first character of the host name/addr is "/" then we assume the caller
- * is actually trying to connect to a unix domain socket and we do that instead.
- */
int sock_connect(char *host, char *service)
{
struct in6_addr serveraddr;
if ((host == NULL) || IsEmptyStr(host))
return (-1);
-
- if (host[0] == '/') {
- return uds_sock_connect(host);
- }
-
if ((service == NULL) || IsEmptyStr(service))
return (-1);