27 os <<
", err=" << answer.
errNo;
35 auto &answer = callback.
answer();
36 answer.conn = listenConn;
39 if (!giveEachWorkerItsOwnQueue &&
UsingSmp()) {
54 const auto savedErrno = errno;
59 debugs(54, 3,
"opened listen " << answer);
#define ScheduleCallHere(call)
AsyncCall::Pointer release()
"shared listen" is when concurrent processes are listening on the same fd
int fdNote
index into fd_note() comment strings
Ip::Address addr
will be memset and memcopied
int errNo
errno value from the comm_open_listener() call
Comm::ConnectionPointer conn
opened listening socket
void comm_open_listener(int sock_type, int proto, Comm::ConnectionPointer &conn, const char *note)
#define debugs(SECTION, LEVEL, CONTENT)
bool IsConnOpen(const Comm::ConnectionPointer &conn)
FdNoteId
We cannot send char* FD notes to other processes. Pass int IDs and convert.
void StartListening(int sock_type, int proto, const Comm::ConnectionPointer &listenConn, FdNoteId, StartListeningCallback &)
const char * FdNote(int fdNodeId)
converts FdNoteId into a string
void JoinSharedListen(const OpenListenerParams &, StartListeningCallback &)
prepare and send SharedListenRequest to Coordinator
std::ostream & operator<<(std::ostream &os, const QuestionerId &qid)