Collaboration diagram for GopherStateData:

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

StoreEntryentry
 
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.

Definition at line 81 of file gopher.cc.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NORMAL 
HTML_DIR 
HTML_INDEX_RESULT 
HTML_CSO_RESULT 
HTML_INDEX_PAGE 
HTML_CSO_PAGE 

Definition at line 115 of file gopher.cc.

Constructor & Destructor Documentation

◆ GopherStateData()

GopherStateData::GopherStateData ( FwdState aFwd)
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()

◆ 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()

void GopherStateData::operator delete ( void *  address)
inline

Definition at line 83 of file gopher.cc.

◆ operator new()

void* GopherStateData::operator new ( size_t  size)
inline

Definition at line 83 of file gopher.cc.

◆ toCbdata()

void* GopherStateData::toCbdata ( )
inlinenoexcept

Definition at line 83 of file gopher.cc.

Member Data Documentation

◆ buf

char* GopherStateData::buf

Definition at line 136 of file gopher.cc.

Referenced by GopherStateData(), ~GopherStateData(), and gopherToHTML().

◆ CBDATA_GopherStateData

cbdata_type GopherStateData::CBDATA_GopherStateData = CBDATA_UNKNOWN
staticprivate

Definition at line 83 of file gopher.cc.

◆ 

enum { ... } GopherStateData::conversion

◆ cso_recno

int GopherStateData::cso_recno

Definition at line 131 of file gopher.cc.

Referenced by gopherSendComplete(), and gopherToHTML().

◆ entry

◆ 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

◆ 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:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors