Chuck Swiger / Pubnub_c_core

Fork of Pubnub_c_core by Srdjan Veljkovic

Embed: (wiki syntax)

« Back to documentation index

pubnub_ Struct Reference

pubnub_ Struct Reference

The Pubnub context. More...

#include <pubnub_internal_common.h>

Data Fields

enum pubnub_state state
 Network communication state.
enum pubnub_trans trans
 Type of current transaction.
uint8_t const * sendptr
 Pointer to the next data to be sent.
uint16_t sendlen
 The number of bytes left to be sent.
uint16_t readlen
 The number of bytes left to be read.
uint8_t * ptr
 Pointer to next free byte in the read buffer.
uint16_t left
 Number of bytes left (empty) in the read buffer.
enum PBSocketState sock_state
 The state of the socket.
unsigned len
 Number of bytes to read - given by the user.
uint16_t http_chunked
 Indicates whether we are receiving chunked or regular HTTP response.
uint16_t http_code
 Last received HTTP (result) code.
struct process * initiator
 Process that started last transaction.
int transaction_timeout_ms
 Duration of the transaction timeout, in milliseconds.
enum pubnub_proxy_type proxy_type
 The type (protocol) of the proxy to use.
char proxy_hostname [PUBNUB_MAX_PROXY_HOSTNAME_LENGTH+1]
 Hostname (address) of the proxy server to use.
uint16_t proxy_port
 The (TCP) port to use on the proxy.
bool proxy_tunnel_established
 Indicates whether this is the "first" HTTP request - that is, the `CONNECT` one.
char proxy_saved_path [PUBNUB_BUF_MAXLEN]
 The saved path part of the URL for the Pubnub transaction.

Detailed Description

The Pubnub context.

Note:
Don't declare any members as `bool`, as there may be alignment issues when this is included from both C and C++ compilers, especially pre-C99 C compilers (like MSVC (at least until MSVC 2013)).

Definition at line 58 of file pubnub_internal_common.h.


Field Documentation

uint16_t http_chunked

Indicates whether we are receiving chunked or regular HTTP response.

Definition at line 90 of file pubnub_internal_common.h.

uint16_t http_code

Last received HTTP (result) code.

Definition at line 93 of file pubnub_internal_common.h.

struct process* initiator

Process that started last transaction.

Definition at line 101 of file pubnub_internal_common.h.

uint16_t left

Number of bytes left (empty) in the read buffer.

Definition at line 79 of file pubnub_internal_common.h.

unsigned len

Number of bytes to read - given by the user.

Definition at line 85 of file pubnub_internal_common.h.

char proxy_hostname[PUBNUB_MAX_PROXY_HOSTNAME_LENGTH+1]

Hostname (address) of the proxy server to use.

Definition at line 163 of file pubnub_internal_common.h.

uint16_t proxy_port

The (TCP) port to use on the proxy.

Definition at line 166 of file pubnub_internal_common.h.

char proxy_saved_path[PUBNUB_BUF_MAXLEN]

The saved path part of the URL for the Pubnub transaction.

Definition at line 177 of file pubnub_internal_common.h.

Indicates whether this is the "first" HTTP request - that is, the `CONNECT` one.

The first is sent to the proxy, while the second (if the first succeeds) is sent to the "real" HTTP server (to which the proxy established a "tunnel".

Definition at line 173 of file pubnub_internal_common.h.

enum pubnub_proxy_type proxy_type

The type (protocol) of the proxy to use.

Definition at line 160 of file pubnub_internal_common.h.

uint8_t* ptr

Pointer to next free byte in the read buffer.

Definition at line 76 of file pubnub_internal_common.h.

uint16_t readlen

The number of bytes left to be read.

Definition at line 73 of file pubnub_internal_common.h.

uint16_t sendlen

The number of bytes left to be sent.

Definition at line 70 of file pubnub_internal_common.h.

uint8_t const* sendptr

Pointer to the next data to be sent.

Definition at line 67 of file pubnub_internal_common.h.

enum PBSocketState sock_state

The state of the socket.

Definition at line 82 of file pubnub_internal_common.h.

Network communication state.

Definition at line 62 of file pubnub_internal_common.h.

Type of current transaction.

Definition at line 64 of file pubnub_internal_common.h.

Duration of the transaction timeout, in milliseconds.

Definition at line 142 of file pubnub_internal_common.h.