9#ifndef SQUID_SRC_COMM_IOCALLBACK_H
10#define SQUID_SRC_COMM_IOCALLBACK_H
15#include "mem/forward.h"
52 void cancel(
const char *reason);
75#define COMMIO_FD_READCB(fd) (&(Comm::ioCallbacks(fd).readcb))
76#define COMMIO_FD_WRITECB(fd) (&(Comm::ioCallbacks(fd).writecb))
Details about a particular Comm IO callback event.
void setCallback(iocb_type type, AsyncCall::Pointer &cb, char *buf, FREE *func, int sz)
void selectOrQueueWrite()
called when fd needs to write but may need to wait in line for its quota
AsyncCall::Pointer callback
void finish(Comm::Flag code, int xerrn)
finish the IO operation immediately and schedule the callback with the current state.
void cancel(const char *reason)
Actively cancel the given callback.
Comm::ConnectionPointer conn
unsigned int quotaQueueReserv
reservation ID from CommQuotaQueue
Abstraction layer for TCP, UDP, TLS, UDS and filedescriptor sockets.
CbEntry & ioCallbacks(int fd)
iocb_type
Type of IO callbacks the Comm layer deals with.