summaryrefslogtreecommitdiff
path: root/src/event/ServerSocket.cxx
AgeCommit message (Collapse)Author
2018-08-21net/Resolver: replace with more advanced implementationMax Kellermann
The new implementation is copied from another project and is BSD-licensed. It is exception-safe and can parse IPv6 scope ids with interface names.
2018-08-14fixed setting unix socket permissions1848
first call fchmod() to prevent TOCTTOU, then apply permissions using chmod()
2018-08-09event/ServerSocket: fix get_remote_uid() callMax Kellermann
This call was broken since commit 9a5bcc6db0c58459b63d25fede1945b7ebef67a8 because the `UniqueSocketDescriptor` had already been moved.
2018-08-07Moved call to fchmod() on socket from OneServerSocket::Open() to ↵1848
socket_bind_listen()
2018-08-07Use fchmod instead of chmod for unix sockets to prevent TOCTTOU1848
2018-01-17fs/AllocatedPath: make the nullptr_t constructor publicMax Kellermann
2017-12-19Main, ...: catch any exception, not just std::runtime_errorMax Kellermann
2017-12-16Merge branch 'v0.20.x'Max Kellermann
2017-12-12*: check defined(_WIN32) instead of defined(WIN32)Max Kellermann
Only _WIN32 is defined by the compiler, and WIN32 is not standardized and may be missing. Closes #169
2017-11-10event/SocketMonitor: rename Get() to GetSocket()Max Kellermann
2017-11-10event/SocketMonitor: add "noexcept"Max Kellermann
2017-08-11system/fd_util: remove unused libraryMax Kellermann
2017-08-11net/IPv4Address: new classMax Kellermann
2017-08-10net/SocketDescriptor: add method SetKeepAlive()Max Kellermann
2017-08-10net/ServerSocket: pass UniqueSocketDescriptor&& to OnAccept()Max Kellermann
2017-08-10event/SocketMonitor: use class SocketDescriptorMax Kellermann
2017-08-10net/SocketUtil: socket_bind_listen() returns UniqueSocketDescriptorMax Kellermann
2017-05-08*: add "noexcept" to many, many function prototypesMax Kellermann
This eliminates some overhead, because the compiler doesn't need to consider these functions throwing.
2017-01-03update copyright yearMax Kellermann
2016-10-28event/ServerSocket: migrate from class Error to C++ exceptionsMax Kellermann
2016-08-15fs/FileSystem: RemoveFile() throws exception on errorMax Kellermann
2016-03-01*: include cleanup (using iwyu)Max Kellermann
2016-02-26update copyright year to 2016Max Kellermann
2015-09-30event/ServerSocket: fix AF_UNIX address in use errorAnthony DeRossi
bind fails with an "address already in use" error if the socket path already exists. This was broken by cbb595ba.
2015-07-22event/ServerSocket: use AllocatedSocketAddress to build local socket addressMax Kellermann
2015-07-22event/ServerSocket: use AllocatedSocketAddress for OneServerSocket::addressMax Kellermann
Manages memory automatically.
2015-07-22net/StaticSocketAddress: replace cast operator with GetAddress()Max Kellermann
The implicit cast operator can be very dangerous.
2015-07-22net/ToString: rename sockaddr_to_string() to ToString()Max Kellermann
2015-07-22net/Resolver: move sockaddr_to_string() to ToString.cxxMax Kellermann
2015-03-05event/ServerSocket: #ifdef out local socket support on WindowsMax Kellermann
2015-02-13net/StaticSocketAdress: new class wrapping struct sockaddr_storageMax Kellermann
2015-02-10net/SocketAddress: light wrapper for struct sockaddrMax Kellermann
2015-02-10system/{Resolver,Socket{Error,Util}}: move to new library libnet.aMax Kellermann
2015-02-10event/ServerSocket: remove obsolete macro DEFAULT_PORTMax Kellermann
2015-01-01Copyright year 2015Max Kellermann
2014-12-04playlist, InotifySource, ...: update GLib commentsMax Kellermann
2014-11-18Merge tag 'v0.18.18' into v0.19.xMax Kellermann
2014-11-18event/ServerSocket: fix get_remote_uid() error valueMax Kellermann
Must return -1 on error, not 0. 0 is root.
2014-03-15configure.ac: always define _GNU_SOURCE on LinuxMax Kellermann
Make sure glibc gives us all features.
2014-01-13copyright year 2014Max Kellermann
2014-01-07util/Alloc: new library replacing GLib's g_malloc()Max Kellermann
2014-01-06event/SocketMonitor: don't close the socket automaticallyMax Kellermann
Users now have to call Close() explicitly. This simplifies using the class, as most users have automatic socket management already, and Steal() had to be used often.
2013-12-04system/Resolver: sockaddr_to_string() returns std::string()Max Kellermann
No GLib memory allocation.
2013-11-28include cleanup using iwyuMax Kellermann
2013-11-04event/ServerSocket: don't abort if IPv6 is not availableMax Kellermann
First check if an IPv6 socket can be created.
2013-11-04event/ServerSocket: fix assertion failureMax Kellermann
Regression from previous commit. D'oh!
2013-11-04event/ServerSocket: open sockets in the order they were configuredMax Kellermann
Use a std::list which can be appended at the end.
2013-10-19event/ServerSocket: pass AllocatedPath to AddPath()Max Kellermann
2013-10-02Log: new logging library APIMax Kellermann
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-04system/SocketError: un-inline constructorMax Kellermann
Reduces header dependencies.