uHTTP for C++
uHTTP Namespace Reference

Namespaces

namespace  HTTP
 

Data Structures

class  BufferedReader
 
class  DatagramPacket
 
class  DatagramSocket
 
class  Date
 
class  Debug
 
class  Exception
 
class  File
 
class  FileInputStream
 
class  FileList
 
class  HostInterface
 
class  HTTPDate
 
class  HTTPHeader
 
class  HTTPHeaderList
 
class  HTTPMessage
 
class  HTTPMessageQueue
 
class  HTTPPacket
 
class  HTTPRequest
 
class  HTTPRequestListener
 
class  HTTPResponse
 
class  HTTPServer
 
class  HTTPServerList
 
class  HTTPSocket
 
class  HTTPStatus
 
class  HTTPWorkerThread
 
class  InetSocketAddress
 
class  InputStream
 
class  InputStreamReader
 
class  LineNumberReader
 
class  Listener
 
class  ListenerList
 
class  Logger
 
class  LoggerErrorFileTarget
 
class  LoggerFileTarget
 
class  LoggerLevel
 
class  LoggerNullTarget
 
class  LoggerStderrTarget
 
class  LoggerStdFileTarget
 
class  LoggerStdoutTarget
 
class  LoggerTarget
 
class  LoggerTargetList
 
class  Message
 
class  MessageQueue
 
class  MulticastSocket
 
class  Mutex
 
class  NetworkInterface
 
class  NetworkInterfaceList
 
class  Parameter
 
class  ParameterList
 
class  Random
 
class  Reader
 
class  Semaphore
 
class  ServerSocket
 
class  SharedVector
 
class  Socket
 
class  SocketCore
 
class  SocketInputStream
 
class  SocketList
 
class  String
 
class  StringBufferInputStream
 
class  StringReader
 
class  StringTokenizer
 
class  Thread
 
class  ThreadList
 
class  URI
 
class  URL
 
class  Vector
 
class  WeakVector
 

Typedefs

typedef sem_t SemaphoreId
 

Functions

const char * toMonthString (int value)
 
const char * toWeekString (int value)
 
const char * HTTPHeaderGetValue (uHTTP::LineNumberReader *reader, const std::string &name, std::string &buf)
 
const char * HTTPHeaderGetValue (const std::string &data, const std::string &name, std::string &buf)
 
int HTTPHeaderGetIntegerValue (const std::string &data, const std::string &name)
 
const char * GetServerName (std::string &buf)
 
size_t GetNHostAddresses ()
 
const char * GetHostAddress (size_t n, std::string &buf)
 
size_t GetHostAddresses (NetworkInterfaceList &netifList)
 
bool IsIPv6Address (const std::string &host)
 
const char * StripIPv6ScopeID (const std::string &addr, std::string &buf)
 
int GetIPv6ScopeID (const std::string &addr)
 
bool HasIPv4Addresses ()
 
bool HasIPv6Addresses ()
 
void SetHostInterface (const std::string &ifaddr)
 
const char * GetHostInterface ()
 
bool HasAssignedHostInterface ()
 
void SocketStartup ()
 
void SocketCleanup ()
 
int GetSocketLastErrorCode ()
 
const char * DecodeSocketError (int ErrorCode)
 
bool toSocketAddrIn (const std::string &addr, int port, struct sockaddr_in *sockaddr, bool isBindAddr=true)
 
bool toSocketAddrInfo (int sockType, const std::string &addr, int port, struct addrinfo **addrInfo, bool isBindAddr=true)
 
bool IsAbsoluteURL (const std::string &urlStr)
 
const char * URLGetHost (const std::string &urlStr, std::string &buf)
 
int URLGetPort (const std::string &urlStr)
 
const char * URLGetRelativeURL (const std::string &urlStr, std::string &buf, bool withParam=true)
 
const char * URLGetAbsoluteURL (const std::string &baseURLStr, const std::string &relURlStr, std::string &buf)
 
const char * GetHostURL (const std::string &host, int port, const std::string &uri, std::string &buf)
 
int Log (Logger *logger, int logType, const char *format,...)
 
bool StringHasData (const std::string &value)
 
int StringLength (const std::string &value)
 
bool StringEquals (const std::string &value1, const std::string &value2)
 
bool StringEqualsIgnoreCase (const std::string &value1, const std::string &value2)
 
bool StringStartsWith (const std::string &value, const std::string &startsWith)
 
bool StringEndsWith (const std::string &value, const std::string &endsWith)
 
bool StringStartsWith (const std::string &value, const char startsWith)
 
bool StringEndsWith (const std::string &value, const char endsWith)
 
int StringIndexOf (const std::string &value, char c)
 
int String2Integer (const std::string &value)
 
long String2Long (const std::string &value)
 
size_t String2Sizet (const std::string &value)
 
int HexString2Integer (const std::string &value)
 
long HexString2Long (const std::string &value)
 
size_t HexString2Sizet (const std::string &value)
 
const char * Integer2String (int value, std::string &valueBuf)
 
const char * Integer2HexString (int value, std::string &valueBuf)
 
const char * Long2String (long value, std::string &valueBuf)
 
const char * Long2HexString (long value, std::string &valueBuf)
 
const char * Sizet2String (size_t value, std::string &valueBuf)
 
const char * Sizet2HexString (size_t value, std::string &valueBuf)
 
const char * StringTrim (const std::string &value, const std::string &trimChars, std::string &buf)
 
const char * StringTrim (const std::string &value, std::string &buf)
 
const char * StringToUpperCase (std::string &str)
 
const char * StringToLowerCase (std::string &str)
 
const char * StringReplaceChars (std::string &str, const std::string &fromChars, const std::string &toChanrs)
 
void Wait (long mtime)
 
void WaitRandom (long mtime)
 
long GetCurrentSystemTime ()
 
float Random ()
 

Variables

const char TEXT_CONTENT_TYPE [] = "text/html; charset=\"utf-8\""
 
const char PRODUCT_NAME [] = "uhttp"
 
const char LIBRARY_NAME [] = "libuhttp++"
 
const char LIBRARY_VERSION [] = "0.6"
 
const long FILE_INBUF_SIZE = 512 * 1024
 
const long SOCKET_RECV_WAIT_TIME = 100
 
const long SOCKET_RECV_RETRY_CNT = 10
 
const long SOCKET_INBUF_SIZE = 512 * 1024
 
const int URI_KNKOWN_PORT = -1
 

Typedef Documentation

◆ SemaphoreId

typedef sem_t uHTTP::SemaphoreId

Function Documentation

◆ DecodeSocketError()

const char * uHTTP::DecodeSocketError ( int ErrorCode)

◆ GetCurrentSystemTime()

long uHTTP::GetCurrentSystemTime ( )

◆ GetHostAddress()

const char * uHTTP::GetHostAddress ( size_t n,
std::string & buf )

◆ GetHostAddresses()

size_t uHTTP::GetHostAddresses ( NetworkInterfaceList & netifList)

◆ GetHostInterface()

const char * uHTTP::GetHostInterface ( )

◆ GetHostURL()

const char * uHTTP::GetHostURL ( const std::string & host,
int port,
const std::string & uri,
std::string & buf )

◆ GetIPv6ScopeID()

int uHTTP::GetIPv6ScopeID ( const std::string & addr)

◆ GetNHostAddresses()

size_t uHTTP::GetNHostAddresses ( )

◆ GetServerName()

const char * uHTTP::GetServerName ( std::string & buf)

◆ GetSocketLastErrorCode()

int uHTTP::GetSocketLastErrorCode ( )

◆ HasAssignedHostInterface()

bool uHTTP::HasAssignedHostInterface ( )

◆ HasIPv4Addresses()

bool uHTTP::HasIPv4Addresses ( )

◆ HasIPv6Addresses()

bool uHTTP::HasIPv6Addresses ( )

◆ HexString2Integer()

int uHTTP::HexString2Integer ( const std::string & value)

◆ HexString2Long()

long uHTTP::HexString2Long ( const std::string & value)

◆ HexString2Sizet()

size_t uHTTP::HexString2Sizet ( const std::string & value)

◆ HTTPHeaderGetIntegerValue()

int uHTTP::HTTPHeaderGetIntegerValue ( const std::string & data,
const std::string & name )

◆ HTTPHeaderGetValue() [1/2]

const char * uHTTP::HTTPHeaderGetValue ( const std::string & data,
const std::string & name,
std::string & buf )

◆ HTTPHeaderGetValue() [2/2]

const char * uHTTP::HTTPHeaderGetValue ( uHTTP::LineNumberReader * reader,
const std::string & name,
std::string & buf )

◆ Integer2HexString()

const char * uHTTP::Integer2HexString ( int value,
std::string & valueBuf )

◆ Integer2String()

const char * uHTTP::Integer2String ( int value,
std::string & valueBuf )

◆ IsAbsoluteURL()

bool uHTTP::IsAbsoluteURL ( const std::string & urlStr)

◆ IsIPv6Address()

bool uHTTP::IsIPv6Address ( const std::string & host)

◆ Log()

int uHTTP::Log ( Logger * logger,
int logType,
const char * format,
... )

◆ Long2HexString()

const char * uHTTP::Long2HexString ( long value,
std::string & valueBuf )

◆ Long2String()

const char * uHTTP::Long2String ( long value,
std::string & valueBuf )

◆ Random()

float uHTTP::Random ( )

◆ SetHostInterface()

void uHTTP::SetHostInterface ( const std::string & ifaddr)

◆ Sizet2HexString()

const char * uHTTP::Sizet2HexString ( size_t value,
std::string & valueBuf )

◆ Sizet2String()

const char * uHTTP::Sizet2String ( size_t value,
std::string & valueBuf )

◆ SocketCleanup()

void uHTTP::SocketCleanup ( )

◆ SocketStartup()

void uHTTP::SocketStartup ( )

◆ String2Integer()

int uHTTP::String2Integer ( const std::string & value)

◆ String2Long()

long uHTTP::String2Long ( const std::string & value)

◆ String2Sizet()

size_t uHTTP::String2Sizet ( const std::string & value)

◆ StringEndsWith() [1/2]

bool uHTTP::StringEndsWith ( const std::string & value,
const char endsWith )

◆ StringEndsWith() [2/2]

bool uHTTP::StringEndsWith ( const std::string & value,
const std::string & endsWith )

◆ StringEquals()

bool uHTTP::StringEquals ( const std::string & value1,
const std::string & value2 )

◆ StringEqualsIgnoreCase()

bool uHTTP::StringEqualsIgnoreCase ( const std::string & value1,
const std::string & value2 )

◆ StringHasData()

bool uHTTP::StringHasData ( const std::string & value)

◆ StringIndexOf()

int uHTTP::StringIndexOf ( const std::string & value,
char c )

◆ StringLength()

int uHTTP::StringLength ( const std::string & value)

◆ StringReplaceChars()

const char * uHTTP::StringReplaceChars ( std::string & str,
const std::string & fromChars,
const std::string & toChanrs )

◆ StringStartsWith() [1/2]

bool uHTTP::StringStartsWith ( const std::string & value,
const char startsWith )

◆ StringStartsWith() [2/2]

bool uHTTP::StringStartsWith ( const std::string & value,
const std::string & startsWith )

◆ StringToLowerCase()

const char * uHTTP::StringToLowerCase ( std::string & str)

◆ StringToUpperCase()

const char * uHTTP::StringToUpperCase ( std::string & str)

◆ StringTrim() [1/2]

const char * uHTTP::StringTrim ( const std::string & value,
const std::string & trimChars,
std::string & buf )

◆ StringTrim() [2/2]

const char * uHTTP::StringTrim ( const std::string & value,
std::string & buf )

◆ StripIPv6ScopeID()

const char * uHTTP::StripIPv6ScopeID ( const std::string & addr,
std::string & buf )

◆ toMonthString()

const char * uHTTP::toMonthString ( int value)

◆ toSocketAddrIn()

bool uHTTP::toSocketAddrIn ( const std::string & addr,
int port,
struct sockaddr_in * sockaddr,
bool isBindAddr = true )

◆ toSocketAddrInfo()

bool uHTTP::toSocketAddrInfo ( int sockType,
const std::string & addr,
int port,
struct addrinfo ** addrInfo,
bool isBindAddr = true )

◆ toWeekString()

const char * uHTTP::toWeekString ( int value)

◆ URLGetAbsoluteURL()

const char * uHTTP::URLGetAbsoluteURL ( const std::string & baseURLStr,
const std::string & relURlStr,
std::string & buf )

◆ URLGetHost()

const char * uHTTP::URLGetHost ( const std::string & urlStr,
std::string & buf )

◆ URLGetPort()

int uHTTP::URLGetPort ( const std::string & urlStr)

◆ URLGetRelativeURL()

const char * uHTTP::URLGetRelativeURL ( const std::string & urlStr,
std::string & buf,
bool withParam = true )

◆ Wait()

void uHTTP::Wait ( long mtime)

◆ WaitRandom()

void uHTTP::WaitRandom ( long mtime)

Variable Documentation

◆ FILE_INBUF_SIZE

const long uHTTP::FILE_INBUF_SIZE = 512 * 1024

◆ LIBRARY_NAME

const char uHTTP::LIBRARY_NAME[] = "libuhttp++"

◆ LIBRARY_VERSION

const char uHTTP::LIBRARY_VERSION[] = "0.6"

◆ PRODUCT_NAME

const char uHTTP::PRODUCT_NAME[] = "uhttp"

◆ SOCKET_INBUF_SIZE

const long uHTTP::SOCKET_INBUF_SIZE = 512 * 1024

◆ SOCKET_RECV_RETRY_CNT

const long uHTTP::SOCKET_RECV_RETRY_CNT = 10

◆ SOCKET_RECV_WAIT_TIME

const long uHTTP::SOCKET_RECV_WAIT_TIME = 100

◆ TEXT_CONTENT_TYPE

const char uHTTP::TEXT_CONTENT_TYPE[] = "text/html; charset=\"utf-8\""

◆ URI_KNKOWN_PORT

const int uHTTP::URI_KNKOWN_PORT = -1