11#ifndef SQUID_SRC_IPC_SHAREDLISTEN_H
12#define SQUID_SRC_IPC_SHAREDLISTEN_H
"shared listen" is when concurrent processes are listening on the same fd
int fdNote
index into fd_note() comment strings
bool operator<(const OpenListenerParams &p) const
useful for map<>
Ip::Address addr
will be memset and memcopied
QuestionerId questioner() const
a request for a listen socket with given parameters
OpenListenerParams params
actual comm_open_sharedListen() parameters
int requestorId
kidId of the requestor
RequestId mapId
to map future response to the requestor's callback
void pack(TypedMsgHdr &hdrMsg) const
prepare for sendmsg()
a response to SharedListenRequest
void pack(TypedMsgHdr &hdrMsg) const
prepare for sendmsg()
int fd
opened listening socket or -1
QuestionerId intendedRecepient() const
for Mine() tests
RequestId mapId
to map future response to the requestor's callback
int errNo
errno value from comm_open_sharedListen() call
struct msghdr with a known type, fixed-size I/O and control buffers
void SharedListenJoined(const SharedListenResponse &response)
process Coordinator response to SharedListenRequest
void JoinSharedListen(const OpenListenerParams &, StartListeningCallback &)
prepare and send SharedListenRequest to Coordinator