PPL6-Icon Patrick's Programming Library Version 6.4.21 - Dokumentation
ppl6::Webserver Klassenreferenz

Klassen

class  Request
 

Öffentliche Methoden

 Webserver ()
 
virtual ~Webserver ()
 
virtual int authenticate (const CString &username, const CString &password, Request &req)
 Callback: Benutzer authentisieren. Mehr ...
 
void bind (const CString &adr, int port)
 
void enableSSL (bool enable)
 
virtual CString getDenyMessage ()
 
const CString & getHostname () const
 
int getPort () const
 
void loadCertificate (const CString &certificate, const CString &privatekey, const CString &password)
 
 PPLNORMALEXCEPTION (NoAddressSpecified)
 
 PPLNORMALEXCEPTION (SSLInitializationFailed)
 
 PPLPARAMETERISEDEXCEPTION (CouldNotBindToSocket)
 
 PPLPARAMETERISEDEXCEPTION (InvalidSSLCertificate)
 
 PPLPARAMETERISEDEXCEPTION (CouldNotStartDaemon)
 
 PPLPARAMETERISEDEXCEPTION (CouldNotCreateResponse)
 
 PPLPARAMETERISEDEXCEPTION (CouldNotQueueResponse)
 
void queueBasicAuthFailedResponse (const Request &req)
 
void queueResponse (const Request &req, const CString &text, int httpStatus=200)
 
void queueResponseError (const Request &req)
 
void queueResponseException (const Request &req, const ppl6::Exception &e)
 
virtual int request (Request &req)
 
void requireBasicAuthentication (bool enable, const CString &realm)
 
void setLogfile (CLog *log)
 
bool sslEnabled () const
 
void start ()
 
void stop ()
 
bool useBasicAuthentication () const
 

Private Attribute

bool basicAuthentication
 
void * daemon
 
CLog * log
 
int port
 
CString realm
 
CAssocArray res
 
CTCPSocket Socket
 
CSSL SSL
 
CString sslcert
 
bool SSLEnabled
 
CString sslkey
 

Beschreibung der Konstruktoren und Destruktoren

ppl6::Webserver::Webserver ( )
ppl6::Webserver::~Webserver ( )
virtual

Dokumentation der Elementfunktionen

int ppl6::Webserver::authenticate ( const CString &  username,
const CString &  password,
Request &  req 
)
virtual
Beschreibung:
Diese Funktion wird bei jedem Seitenaufruf aufgerufen, wenn Passwort-Authentisierung aktiviert wurde (siehe Webserver::requireBasicAuthentication). Der Benutzername und das Passwort werden als Parameter übergeben, der Returnwert der Funktion zeigt an, ob der Zugriff gewährt wird oder nicht.
Parameter
usernameString mit dem Benutzernamen
passwordString mit dem Passwort des Benutzers im Klartext
Rückgabe
Die Funktion muss 1 zurückgeben, wenn der Zugriff gewährt wird, andernfalls 0.
void ppl6::Webserver::bind ( const CString &  adr,
int  port 
)
void ppl6::Webserver::enableSSL ( bool  enable)
CString ppl6::Webserver::getDenyMessage ( )
virtual
const CString & ppl6::Webserver::getHostname ( ) const
int ppl6::Webserver::getPort ( ) const
void ppl6::Webserver::loadCertificate ( const CString &  certificate,
const CString &  privatekey,
const CString &  password 
)
ppl6::Webserver::PPLNORMALEXCEPTION ( NoAddressSpecified  )
ppl6::Webserver::PPLNORMALEXCEPTION ( SSLInitializationFailed  )
ppl6::Webserver::PPLPARAMETERISEDEXCEPTION ( CouldNotBindToSocket  )
ppl6::Webserver::PPLPARAMETERISEDEXCEPTION ( InvalidSSLCertificate  )
ppl6::Webserver::PPLPARAMETERISEDEXCEPTION ( CouldNotStartDaemon  )
ppl6::Webserver::PPLPARAMETERISEDEXCEPTION ( CouldNotCreateResponse  )
ppl6::Webserver::PPLPARAMETERISEDEXCEPTION ( CouldNotQueueResponse  )
void ppl6::Webserver::queueBasicAuthFailedResponse ( const Request &  req)
void ppl6::Webserver::queueResponse ( const Request &  req,
const CString &  text,
int  httpStatus = 200 
)
void ppl6::Webserver::queueResponseError ( const Request &  req)
void ppl6::Webserver::queueResponseException ( const Request &  req,
const ppl6::Exception &  e 
)
int ppl6::Webserver::request ( Request &  req)
virtual
void ppl6::Webserver::requireBasicAuthentication ( bool  enable,
const CString &  realm 
)
void ppl6::Webserver::setLogfile ( CLog *  log)
bool ppl6::Webserver::sslEnabled ( ) const
void ppl6::Webserver::start ( )
void ppl6::Webserver::stop ( )
bool ppl6::Webserver::useBasicAuthentication ( ) const

Dokumentation der Datenelemente

bool ppl6::Webserver::basicAuthentication
private
void* ppl6::Webserver::daemon
private
CLog* ppl6::Webserver::log
private
int ppl6::Webserver::port
private
CString ppl6::Webserver::realm
private
CAssocArray ppl6::Webserver::res
private
CTCPSocket ppl6::Webserver::Socket
private
CSSL ppl6::Webserver::SSL
private
CString ppl6::Webserver::sslcert
private
bool ppl6::Webserver::SSLEnabled
private
CString ppl6::Webserver::sslkey
private

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: