Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | event/BufferedSocket: pass writable pointer to OnSocketInput() | Max Kellermann | 2013-10-15 | 1 | -1/+9 | |
| | | | | | Remove the const_cast from HttpdClient.cxx, and avoid one allocation in ClientRead.cxx. | |||||
* | util/FifoBuffer: C++ version of the fifo_buffer library | Max Kellermann | 2013-10-15 | 2 | -44/+21 | |
| | ||||||
* | system/clock: convert to C++ | Max Kellermann | 2013-10-15 | 1 | -4/+4 | |
| | ||||||
* | require GLib 2.28 | Max Kellermann | 2013-10-15 | 1 | -2/+0 | |
| | | | | The header glib_compat.h is now obsolete and can be removed. | |||||
* | gcc.h: rename to Compiler.h | Max Kellermann | 2013-10-15 | 8 | -8/+8 | |
| | ||||||
* | Log: new logging library API | Max Kellermann | 2013-10-02 | 1 | -11/+12 | |
| | | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend. | |||||
* | system/SocketError: un-inline constructor | Max Kellermann | 2013-09-04 | 1 | -0/+2 | |
| | | | | Reduces header dependencies. | |||||
* | util/Error: new error passing library | Max Kellermann | 2013-09-04 | 5 | -54/+56 | |
| | | | | Replaces GLib's GError. | |||||
* | system/resolver: convert to C++ | Max Kellermann | 2013-09-04 | 1 | -1/+1 | |
| | ||||||
* | EventLoop: initialise the thread id explicitly | Max Kellermann | 2013-08-10 | 1 | -1/+2 | |
| | ||||||
* | EventLoop: new implementation using epoll | Max Kellermann | 2013-08-10 | 13 | -16/+705 | |
| | | | | Implement an event loop without GLib. | |||||
* | event/Call: signal the calling thread | Max Kellermann | 2013-08-10 | 1 | -0/+5 | |
| | | | | Fixes regression from commit 018f4155. | |||||
* | event/IdleMonitor: new monitor class | Max Kellermann | 2013-08-10 | 2 | -0/+130 | |
| | ||||||
* | event/MultiSocketMonitor: add struct SingleFD | Max Kellermann | 2013-08-10 | 2 | -8/+32 | |
| | | | | Prepare for migrating away from GLib. | |||||
* | event/MultiSocketMonitor: use uint64_t instead of gint64 | Max Kellermann | 2013-08-10 | 2 | -5/+6 | |
| | | | | Unsigned and portable. | |||||
* | event/MultiSocketMonitor: eliminate virtual method CheckSockets() | Max Kellermann | 2013-08-10 | 2 | -8/+16 | |
| | | | | Handle timeout internally. | |||||
* | event/MultiSocketMonitor: PrepareSockets() returns timeout | Max Kellermann | 2013-08-10 | 1 | -2/+5 | |
| | | | | Simplify the API, don't use GLib specific integer type. | |||||
* | thread/Id: new class replacing GThread pointers | Max Kellermann | 2013-08-10 | 2 | -8/+9 | |
| | | | | Remove a GLib dependencies from class EventLoop and DatabaseLock. | |||||
* | event: add function BlockingCall() | Max Kellermann | 2013-08-08 | 2 | -0/+108 | |
| | | | | | Replaces io_thread_call(). This approach is more generic and easier to use due to std::function. | |||||
* | EventLoop: add methodd IsInside() | Max Kellermann | 2013-08-08 | 2 | -2/+26 | |
| | | | | | Track which thread runs the EventLoop and provide a check whether we're currently inside. | |||||
* | EventLoop: un-inline Run() and others | Max Kellermann | 2013-08-08 | 2 | -22/+61 | |
| | | | | Prepare for adding more code. | |||||
* | event/*Monitor: add method GetEventLoop() | Max Kellermann | 2013-08-08 | 4 | -1/+16 | |
| | ||||||
* | event/SocketMonitor: un-inline Schedule() | Max Kellermann | 2013-08-08 | 2 | -24/+23 | |
| | | | | Merge with CommitEventFlags(). | |||||
* | event/SocketMonitor: add assertions | Max Kellermann | 2013-08-08 | 2 | -0/+12 | |
| | ||||||
* | event/BufferedSocket: add missing include | Max Kellermann | 2013-08-08 | 1 | -0/+1 | |
| | ||||||
* | event/DeferredMonitor: rename Run() to RunDeferred() | Max Kellermann | 2013-08-07 | 2 | -4/+4 | |
| | ||||||
* | event/DeferredMonitor: use EventLoop::AddIdle() | Max Kellermann | 2013-08-07 | 2 | -3/+7 | |
| | ||||||
* | event/DeferredMonitor: new class wrapping g_idle_add() | Max Kellermann | 2013-08-07 | 2 | -0/+109 | |
| | ||||||
* | event/EventFD: move to libsystem | Max Kellermann | 2013-08-07 | 5 | -361/+2 | |
| | ||||||
* | event/SignalMonitor: use signalfd() if available | Max Kellermann | 2013-08-07 | 1 | -1/+72 | |
| | ||||||
* | SignalHandlers: move code to new class SignalMonitor | Max Kellermann | 2013-08-07 | 2 | -0/+197 | |
| | ||||||
* | event/Event{Pipe,FD}: auto-create in constructor | Max Kellermann | 2013-08-07 | 4 | -59/+23 | |
| | | | | Errors are fatal now. This makes the class a lot easier to use. | |||||
* | Makefile.am: move sources to libsystem.a | Max Kellermann | 2013-08-07 | 7 | -10/+10 | |
| | ||||||
* | configure.ac: add option --enable-eventfd | Max Kellermann | 2013-08-06 | 5 | -102/+227 | |
| | | | | | | Remove the runtime check for eventfd(), hard-code the feature once it's been selected at compile time. The class WakeFD is splitted into EventFD and EventPipe, using WakeFD as a macro diversion. | |||||
* | event/TimeoutMonitor: eliminate support for periodic events | Max Kellermann | 2013-04-08 | 2 | -14/+7 | |
| | | | | | No caller needs this. Fixes use-after-free after returning from Client::OnTimeout(). | |||||
* | event/ServerSocket: close only sockets that have been opened | Max Kellermann | 2013-02-04 | 1 | -1/+3 | |
| | | | | Fixes assertion failure. | |||||
* | ServerSocket: Initialize length variable | Uli Schlachter | 2013-02-04 | 1 | -1/+1 | |
| | ||||||
* | event/SocketMonitor: wake up the event loop after flag change | Max Kellermann | 2013-01-30 | 2 | -0/+14 | |
| | ||||||
* | event/Loop: add method WakeUp() | Max Kellermann | 2013-01-30 | 1 | -0/+4 | |
| | ||||||
* | event/ServerSocket: add method GetEventLoop() | Max Kellermann | 2013-01-30 | 1 | -0/+4 | |
| | ||||||
* | ServerSocket: replace callback with virtual method | Max Kellermann | 2013-01-30 | 2 | -17/+12 | |
| | ||||||
* | ServerSocket: expose the class | Max Kellermann | 2013-01-30 | 2 | -154/+133 | |
| | | | | Eliminate the C wrappers. | |||||
* | ServerSocket: move to libevent.a | Max Kellermann | 2013-01-30 | 2 | -0/+579 | |
| | ||||||
* | event/BufferedSocket: move output buffer to FullyBufferedSocket | Max Kellermann | 2013-01-30 | 4 | -112/+202 | |
| | | | | | BufferedSocket has just an input buffer, and FullyBufferedSocket adds the output buffer. | |||||
* | event/SocketMonitor: OnSocketReady() returns bool | Max Kellermann | 2013-01-30 | 3 | -6/+11 | |
| | ||||||
* | event/SocketMonitor: add methods Read(), Write() | Max Kellermann | 2013-01-30 | 4 | -27/+43 | |
| | ||||||
* | require GLib 2.24 | Max Kellermann | 2013-01-29 | 1 | -0/+1 | |
| | ||||||
* | event/SocketMonitor: add method Steal() | Max Kellermann | 2013-01-27 | 2 | -3/+17 | |
| | ||||||
* | event/SocketMonitor: add method Open() | Max Kellermann | 2013-01-15 | 2 | -9/+27 | |
| | | | | Allow creating a closed SocketMonitor instance. | |||||
* | input/Curl: move code to class MultiSocketMonitor | Max Kellermann | 2013-01-15 | 2 | -0/+231 | |
| |