6 #include <sys/socket.h>
7 #include "serversocket.h"
51 struct msghdr fdpass_msg;
52 struct iovec empty_data;
53 char cmsgbuf[CMSG_SPACE(
sizeof(
int))];
57 struct msghdr parent_msg;
58 struct iovec msg_data;
Listen on a single socket for incoming connections.
Definition: serversocket.h:15
This class implements low-level socket connection operations. Inherit from it to implement protocols ...
Definition: socketconnection.h:47
Pass sockets and messages between processes.
Definition: socketreceiver.h:21
int passSocketToPeer(int fd)
Return 0 for success, errno on failure.
Definition: socketreceiver.cpp:82
pid_t peerPid() const
Return PID of the peer process.
Definition: socketreceiver.h:38
virtual SocketConnection * incoming() override
Return connection object if new client available, else return nullptr.
Definition: socketreceiver.cpp:32
void peerDead()
Stop communication with peer process and terminate as soon as possible.
Definition: socketreceiver.h:43
SocketReceiver(Task *task, int sock, pid_t peer_pid)
Definition: socketreceiver.cpp:8
ssize_t passMessageToPeer(const char *buf, size_t len)
Send data to peer. Return amount sent, or < 0 for error.
Definition: socketreceiver.cpp:94
void closeMe()
Tell the network engine that the connection should be closed.
Definition: socket.h:178
The purpose of a task is to manage socket connections, and/or to execute timers.
Definition: task.h:39