diff options
author | Martin Willi <martin@revosec.ch> | 2014-06-04 16:26:58 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2014-06-04 16:26:58 +0200 |
commit | 8c55f8ef42816a695895990cf89697a30c235355 (patch) | |
tree | c4aa8a3f0f08166b37369bb93132d0ece470af42 /src/libstrongswan/networking/streams/stream_unix.h | |
parent | b4c51061c3c649e948324d1f3ad37ef6e48f8b96 (diff) | |
parent | d930d184177ef352c4b5def4e5848463819435ec (diff) | |
download | strongswan-8c55f8ef42816a695895990cf89697a30c235355.tar.bz2 strongswan-8c55f8ef42816a695895990cf89697a30c235355.tar.xz |
Merge branch 'win'
Ports the strongSwan core libraries and some plugins to the Windows platform
using a MinGW based toolchain. Beside generic platform abstraction and
the windows.[ch] compatibility layer, this merge introduces a Windows native
threading backend and a charon-svc Windows IKE service.
Travis adds a MinGW cross-compile build to Windows, and further enables -Werror
to let builds fail for all compiler warnings with gcc and Clang.
Diffstat (limited to 'src/libstrongswan/networking/streams/stream_unix.h')
-rw-r--r-- | src/libstrongswan/networking/streams/stream_unix.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/libstrongswan/networking/streams/stream_unix.h b/src/libstrongswan/networking/streams/stream_unix.h new file mode 100644 index 000000000..5204251b3 --- /dev/null +++ b/src/libstrongswan/networking/streams/stream_unix.h @@ -0,0 +1,48 @@ +/* + * Copyright (C) 2013 Martin Willi + * Copyright (C) 2013 revosec AG + * + * This program is free 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 2 of the License, or (at your + * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. + * + * 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. + */ + +/** + * @defgroup stream_unix stream_unix + * @{ @ingroup streams + */ + +#ifndef STREAM_UNIX_H_ +#define STREAM_UNIX_H_ + +#include <sys/un.h> + +/** + * Create a stream for UNIX sockets. + * + * UNIX URIs start with unix://, followed by the socket path. For absolute + * paths, an URI looks something like: + * + * unix:///path/to/socket + * + * @param uri UNIX socket specific URI, must start with "unix://" + * @return stream instance, NULL on failure + */ +stream_t *stream_create_unix(char *uri); + +/** + * Helper function to parse a unix:// URI to a sockaddr + * + * @param uri URI + * @param addr sockaddr + * @return length of sockaddr, -1 on error + */ +int stream_parse_uri_unix(char *uri, struct sockaddr_un *addr); + +#endif /** STREAM_UNIX_H_ @}*/ |