ESP32 HTTPS Server
httpsserver::HTTPSConnection Class Reference

Connection class for an open TLS-enabled connection to an HTTPSServer. More...

#include <HTTPSConnection.hpp>

Inheritance diagram for httpsserver::HTTPSConnection:
Collaboration diagram for httpsserver::HTTPSConnection:

Public Member Functions

 HTTPSConnection (ResourceResolver *resResolver)
 
virtual int initialize (int serverSocketID, SSL_CTX *sslCtx, HTTPHeaders *defaultHeaders)
 
virtual void closeConnection ()
 
virtual bool isSecure ()
 
- Public Member Functions inherited from httpsserver::HTTPConnection
 HTTPConnection (ResourceResolver *resResolver)
 
virtual int initialize (int serverSocketID, HTTPHeaders *defaultHeaders)
 
virtual IPAddress getClientIP ()
 
void loop ()
 
bool isClosed ()
 
bool isError ()
 

Protected Member Functions

virtual size_t readBytesToBuffer (byte *buffer, size_t length)
 
virtual size_t pendingByteCount ()
 
virtual bool canReadData ()
 
virtual size_t writeBuffer (byte *buffer, size_t length)
 

Friends

class HTTPRequest
 
class HTTPResponse
 

Additional Inherited Members

- Protected Types inherited from httpsserver::HTTPConnection
enum  {
  STATE_UNDEFINED, STATE_INITIAL, STATE_REQUEST_FINISHED, STATE_HEADERS_FINISHED,
  STATE_BODY_FINISHED, STATE_WEBSOCKET, STATE_CLOSING, STATE_CLOSED,
  STATE_ERROR
}
 
enum  { CSTATE_UNDEFINED, CSTATE_ACTIVE, CSTATE_CLOSED }
 
- Protected Attributes inherited from httpsserver::HTTPConnection
unsigned long _lastTransmissionTS
 
unsigned long _shutdownTS
 
enum httpsserver::HTTPConnection:: { ... }  _connectionState
 
enum httpsserver::HTTPConnection:: { ... }  _clientState
 

Detailed Description

Connection class for an open TLS-enabled connection to an HTTPSServer.

Member Function Documentation

◆ initialize()

int httpsserver::HTTPSConnection::initialize ( int  serverSocketID,
SSL_CTX *  sslCtx,
HTTPHeaders defaultHeaders 
)
virtual

Initializes the connection from a server socket.

The call WILL BLOCK if accept(serverSocketID) blocks. So use select() to check for that in advance.


The documentation for this class was generated from the following files: