Go to file
Isaac Boukris 1d786faee1 unix_socket: add support for abstract unix domain socket
In addition to unix domain sockets, Linux also supports an
abstract namespace which is independent of the filesystem.

In order to support it, add new CURLOPT_ABSTRACT_UNIX_SOCKET
option which uses the same storage as CURLOPT_UNIX_SOCKET_PATH
internally, along with a flag to specify abstract socket.

On non-supporting platforms, the abstract address will be
interpreted as an empty string and fail gracefully.

Also add new --abstract-unix-socket tool parameter.

Signed-off-by: Isaac Boukris <iboukris@gmail.com>
Reported-by: Chungtsun Li (typeless)
Reviewed-by: Daniel Stenberg
Reviewed-by: Peter Wu
Closes #1197
Fixes #1061
2017-01-13 16:25:20 +01:00
.github ISSUE_TEMPLATE: try mentioning known bugs/todo in new issue template 2016-12-11 19:37:44 +01:00
CMake cmake: disable poll for macOS 2016-11-06 15:16:52 +01:00
docs unix_socket: add support for abstract unix domain socket 2017-01-13 16:25:20 +01:00
include unix_socket: add support for abstract unix domain socket 2017-01-13 16:25:20 +01:00
lib unix_socket: add support for abstract unix domain socket 2017-01-13 16:25:20 +01:00
m4 s/cURL/curl 2016-11-07 10:36:23 +01:00
packages os400: support CURLOPT_PROXY_PINNEDPUBLICKEY 2016-11-26 18:52:30 +01:00
projects build-wolfssl: Sync config with wolfSSL 3.10 2016-12-24 13:51:12 -05:00
scripts contrithanks.sh: exclude existing names case insensitively 2016-05-23 10:07:48 +02:00
src unix_socket: add support for abstract unix domain socket 2017-01-13 16:25:20 +01:00
tests url: --noproxy option overrides NO_PROXY environment variable 2017-01-13 11:18:29 +01:00
winbuild winbuild: add config option ENABLE_NGHTTP2 2016-11-25 09:00:54 +01:00
.dir-locals.el Add .dir-locals and set c-basic-offset to 2. 2015-12-23 10:16:14 +01:00
.gitattributes Tell git to not convert configure-related files. 2012-07-17 20:35:23 +02:00
.gitignore build: Install zsh completion 2015-11-24 22:22:01 +01:00
.travis.yml travis: removed option to rebuild autotool from source 2016-08-03 13:25:32 +02:00
CHANGES URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
CHANGES.0 URLs: change more http to https 2016-02-04 18:46:54 -05:00
CMakeLists.txt cmake: Fix passing _WINSOCKAPI_ macro to compiler 2017-01-09 20:49:45 -05:00
COPYING COPYING: update the generic copyright year range 2017-01-07 20:25:43 +01:00
CTestConfig.cmake ENH: move dashboard location 2009-07-15 19:40:46 +00:00
GIT-INFO GIT-INFO: remove the Mac 10.1-specific details 2016-10-10 10:29:19 +02:00
MacOSX-Framework MacOSX-Framework: sdk regex fix for sdk 10.10 and later 2015-10-25 12:35:49 +01:00
Makefile.am dist: add missing cmake modules to the tarball 2016-10-11 22:57:36 -04:00
Makefile.dist URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
README URLs: follow GitHub project rename (also Travis CI) 2016-02-04 23:01:38 +01:00
README.md README.md: add our CII Best Practices badge 2016-08-15 11:15:01 +02:00
RELEASE-NOTES RELEASE-NOTES: synced with a41e8592d6 2017-01-09 14:54:48 +01:00
acinclude.m4 configure: verify that compiler groks -Werror=partial-availability 2016-11-03 23:37:59 +01:00
appveyor.yml Appveyor: Updates for options - CURL_STATICLIB/BUILD_TESTING 2016-07-01 09:53:22 +02:00
buildconf URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
buildconf.bat dist: ship buildconf.bat too 2016-02-12 16:45:25 +01:00
configure.ac gnutls: check for alpn and ocsp in configure 2017-01-13 09:54:55 +01:00
curl-config.in URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
libcurl.pc.in URLs: change all http:// URLs to https:// 2016-02-03 00:19:02 +01:00
maketgz maketgz: make it support "only" generating version info 2016-10-17 09:29:46 +02:00

README.md

curl logo CII Best Practices

Curl is a command-line tool for transferring data specified with URL syntax. Find out how to use curl by reading the curl.1 man page or the MANUAL document. Find out how to install Curl by reading the INSTALL document.

libcurl is the library curl is using to do its job. It is readily available to be used by your software. Read the libcurl.3 man page to learn how!

You find answers to the most frequent questions we get in the FAQ document.

Study the COPYING file for distribution terms and similar. If you distribute curl binaries or other binaries that involve libcurl, you might enjoy the LICENSE-MIXING document.

Contact

If you have problems, questions, ideas or suggestions, please contact us by posting to a suitable mailing list.

All contributors to the project are listed in the THANKS document.

Website

Visit the curl web site for the latest news and downloads.

Git

To download the very latest source off the Git server do this:

git clone https://github.com/curl/curl.git

(you'll get a directory named curl created, filled with the source code)

Notice

Curl contains pieces of source code that is Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan. This notice is included here to comply with the distribution terms.