
Public Types | |
enum | { NORMAL , HTML_DIR , HTML_INDEX_RESULT , HTML_CSO_RESULT , HTML_INDEX_PAGE , HTML_CSO_PAGE } |
Public Member Functions | |
void * | operator new (size_t size) |
void | operator delete (void *address) |
void * | toCbdata () noexcept |
GopherStateData (FwdState *aFwd) | |
~GopherStateData () | |
const char * | iconUrl (char) |
Static Public Member Functions | |
static void | DelayAwareRead (GopherStateData *) |
queues or defers a read call More... | |
Public Attributes | |
StoreEntry * | entry |
enum GopherStateData:: { ... } | conversion |
int | HTML_header_added |
int | HTML_pre |
char | type_id |
char | request [MAX_URL] |
bool | overflowed |
some received bytes ignored due to internal buffer capacity limits More... | |
int | cso_recno |
int | len |
the number of not-yet-parsed Gopher line bytes in this->buf More... | |
char * | buf |
Comm::ConnectionPointer | serverConn |
FwdState::Pointer | fwd |
HttpReply::Pointer | reply_ |
char | replybuf [BUFSIZ] |
Static Private Attributes | |
static cbdata_type | CBDATA_GopherStateData = CBDATA_UNKNOWN |
Detailed Description
Gopher Gateway Internals
Gopher is somewhat complex and gross because it must convert from the Gopher protocol to HTTP.
Member Enumeration Documentation
◆ anonymous enum
anonymous enum |
Constructor & Destructor Documentation
◆ GopherStateData()
|
inline |
Definition at line 86 of file gopher.cc.
References buf, entry, StoreEntry::lock(), MEM_4K_BUF, memAllocate(), replybuf, and request.
◆ ~GopherStateData()
GopherStateData::~GopherStateData | ( | ) |
Definition at line 170 of file gopher.cc.
References buf, entry, MEM_4K_BUF, memFree(), and StoreEntry::unlock().
Member Function Documentation
◆ DelayAwareRead()
|
static |
Definition at line 818 of file gopher.cc.
References asyncCall(), BUFSIZ, StoreEntry::bytesWanted(), cbdataDialer(), comm_read(), commCbCall(), conn, debugs, MemObject::delayRead(), entry, fd_table, gopherReadReply, Comm::IsConnOpen(), StoreEntry::mem(), replybuf, and serverConn.
Referenced by gopherReadReply(), and gopherSendComplete().
◆ iconUrl()
const char * GopherStateData::iconUrl | ( | char | gtype | ) |
URL for icon to display (or nil), given the Gopher item-type code. The returned c-string is invalidated by the next call to this function.
Definition at line 180 of file gopher.cc.
References GOPHER_3270, GOPHER_BIN, GOPHER_CSO, GOPHER_DIRECTORY, GOPHER_DOSBIN, GOPHER_FILE, GOPHER_GIF, GOPHER_HTML, GOPHER_IMAGE, GOPHER_INDEX, GOPHER_INFO, GOPHER_MACBINHEX, GOPHER_PLUS_IMAGE, GOPHER_PLUS_MOVIE, GOPHER_PLUS_SOUND, GOPHER_SOUND, GOPHER_TELNET, GOPHER_UUENCODED, GOPHER_WWW, and mimeGetIconURL().
Referenced by gopherToHTML().
◆ operator delete()
|
inline |
◆ operator new()
◆ toCbdata()
Member Data Documentation
◆ buf
char* GopherStateData::buf |
Definition at line 136 of file gopher.cc.
Referenced by GopherStateData(), ~GopherStateData(), and gopherToHTML().
◆ CBDATA_GopherStateData
|
staticprivate |
◆
enum { ... } GopherStateData::conversion |
Referenced by gopherReadReply(), gopherSendComplete(), gopherStart(), and gopherToHTML().
◆ cso_recno
int GopherStateData::cso_recno |
Definition at line 131 of file gopher.cc.
Referenced by gopherSendComplete(), and gopherToHTML().
◆ entry
StoreEntry* GopherStateData::entry |
Definition at line 114 of file gopher.cc.
Referenced by GopherStateData(), ~GopherStateData(), DelayAwareRead(), gopherEndHTML(), gopherMimeCreate(), gopherReadReply(), gopherSendComplete(), gopherSendRequest(), gopherStart(), gopherTimeout(), and gopherToHTML().
◆ fwd
FwdState::Pointer GopherStateData::fwd |
Definition at line 138 of file gopher.cc.
Referenced by gopherReadReply(), gopherSendComplete(), and gopherTimeout().
◆ HTML_header_added
int GopherStateData::HTML_header_added |
Definition at line 123 of file gopher.cc.
Referenced by gopherEndHTML(), gopherSendComplete(), and gopherToHTML().
◆ HTML_pre
int GopherStateData::HTML_pre |
Definition at line 124 of file gopher.cc.
Referenced by gopherEndHTML(), and gopherToHTML().
◆ len
int GopherStateData::len |
Definition at line 134 of file gopher.cc.
Referenced by gopherReadReply(), and gopherToHTML().
◆ overflowed
bool GopherStateData::overflowed |
Definition at line 129 of file gopher.cc.
Referenced by gopherReadReply(), and gopherToHTML().
◆ reply_
HttpReply::Pointer GopherStateData::reply_ |
Definition at line 139 of file gopher.cc.
Referenced by gopherMimeCreate(), and gopherReadReply().
◆ replybuf
char GopherStateData::replybuf[BUFSIZ] |
Definition at line 140 of file gopher.cc.
Referenced by GopherStateData(), DelayAwareRead(), and gopherReadReply().
◆ request
char GopherStateData::request[MAX_URL] |
Definition at line 126 of file gopher.cc.
Referenced by GopherStateData(), gopherMimeCreate(), gopherSendRequest(), and gopherStart().
◆ serverConn
Comm::ConnectionPointer GopherStateData::serverConn |
Definition at line 137 of file gopher.cc.
Referenced by DelayAwareRead(), gopherReadReply(), gopherSendComplete(), gopherSendRequest(), and gopherStart().
◆ type_id
char GopherStateData::type_id |
Definition at line 125 of file gopher.cc.
Referenced by gopherMimeCreate(), gopherSendComplete(), gopherSendRequest(), and gopherStart().
The documentation for this class was generated from the following file:
- src/gopher.cc