Skip to content

Latest commit

 

History

History
296 lines (182 loc) · 7.29 KB

API.md

File metadata and controls

296 lines (182 loc) · 7.29 KB

API Reference

Header files

File rfc2217_server.h

Structures and Types

Type Name
enum rfc2217_control_t
RFC2217 control signal definitions FIXME: split this into separate enums and callbacks.
typedef unsigned(* rfc2217_on_baudrate_t
baudrate change request callback
typedef void(* rfc2217_on_client_connected_t
callback on client connection
typedef void(* rfc2217_on_client_disconnected_t
callback on client disconnection
typedef rfc2217_control_t(* rfc2217_on_control_t
control signal change request callback
typedef void(* rfc2217_on_data_received_t
callback on data received from client
typedef rfc2217_purge_t(* rfc2217_on_purge_t
buffer purge request callback
enum rfc2217_purge_t
RFC2217 purge request definitions.
struct rfc2217_server_config_t
RFC2217 server configuration.
typedef struct rfc2217_server_s * rfc2217_server_t
RFC2217 server instance handle.

Functions

Type Name
int rfc2217_server_create (const rfc2217_server_config_t *config, rfc2217_server_t *out_server)
Create RFC2217 server instance.
void rfc2217_server_destroy (rfc2217_server_t server)
Destroy RFC2217 server instance.
int rfc2217_server_send_data (rfc2217_server_t server, const uint8_t *data, size_t len)
Send data to client.
int rfc2217_server_start (rfc2217_server_t server)
Start RFC2217 server.
int rfc2217_server_stop (rfc2217_server_t server)
Stop RFC2217 server.

Structures and Types Documentation

enum rfc2217_control_t

RFC2217 control signal definitions FIXME: split this into separate enums and callbacks.

enum rfc2217_control_t {
    RFC2217_CONTROL_SET_NO_FLOW_CONTROL = 1,
    RFC2217_CONTROL_SET_XON_XOFF_FLOW_CONTROL = 2,
    RFC2217_CONTROL_SET_HARDWARE_FLOW_CONTROL = 3,
    RFC2217_CONTROL_SET_BREAK = 5,
    RFC2217_CONTROL_CLEAR_BREAK = 6,
    RFC2217_CONTROL_SET_DTR = 8,
    RFC2217_CONTROL_CLEAR_DTR = 9,
    RFC2217_CONTROL_SET_RTS = 11,
    RFC2217_CONTROL_CLEAR_RTS = 12
};

typedef rfc2217_on_baudrate_t

baudrate change request callback

typedef unsigned(* rfc2217_on_baudrate_t) (void *ctx, unsigned requested_baudrate);

Parameters:

  • ctx context pointer passed to rfc2217_server_create
  • requested_baudrate requested baudrate

Returns:

actual baudrate that was set

typedef rfc2217_on_client_connected_t

callback on client connection

typedef void(* rfc2217_on_client_connected_t) (void *ctx);

Parameters:

  • ctx context pointer passed to rfc2217_server_create

typedef rfc2217_on_client_disconnected_t

callback on client disconnection

typedef void(* rfc2217_on_client_disconnected_t) (void *ctx);

Parameters:

  • ctx context pointer passed to rfc2217_server_create

typedef rfc2217_on_control_t

control signal change request callback

typedef rfc2217_control_t(* rfc2217_on_control_t) (void *ctx, rfc2217_control_t requested_control);

Parameters:

  • ctx context pointer passed to rfc2217_server_create
  • requested_control requested control signals

Returns:

actual control signals that were set

typedef rfc2217_on_data_received_t

callback on data received from client

typedef void(* rfc2217_on_data_received_t) (void *ctx, const uint8_t *data, size_t len);

Parameters:

  • ctx context pointer passed to rfc2217_server_create
  • data pointer to received data
  • len length of received data

typedef rfc2217_on_purge_t

buffer purge request callback

typedef rfc2217_purge_t(* rfc2217_on_purge_t) (void *ctx, rfc2217_purge_t requested_purge);

Parameters:

  • ctx context pointer passed to rfc2217_server_create
  • requested_purge requested buffer purge

Returns:

actual buffer purge that was performed

enum rfc2217_purge_t

RFC2217 purge request definitions.

enum rfc2217_purge_t {
    RFC2217_PURGE_RECEIVE = 0,
    RFC2217_PURGE_TRANSMIT = 1,
    RFC2217_PURGE_BOTH = 2
};

struct rfc2217_server_config_t

RFC2217 server configuration.

Variables:

  • void * ctx
    context pointer passed to callbacks

  • rfc2217_on_baudrate_t on_baudrate
    callback called when client requests baudrate change

  • rfc2217_on_client_connected_t on_client_connected
    callback called when client connects

  • rfc2217_on_client_disconnected_t on_client_disconnected
    callback called when client disconnects

  • rfc2217_on_control_t on_control
    callback called when client requests control signal change

  • rfc2217_on_data_received_t on_data_received
    callback called when data is received from client

  • rfc2217_on_purge_t on_purge
    callback called when client requests buffer purge

  • unsigned port
    TCP port to listen on.

  • unsigned task_core_id
    server task core ID

  • unsigned task_priority
    server task priority

  • unsigned task_stack_size
    server task stack size

typedef rfc2217_server_t

RFC2217 server instance handle.

typedef struct rfc2217_server_s* rfc2217_server_t;

Functions Documentation

function rfc2217_server_create

Create RFC2217 server instance.

int rfc2217_server_create (
    const rfc2217_server_config_t *config,
    rfc2217_server_t *out_server
) 

Parameters:

  • config RFC2217 server configuration
  • out_server pointer to store created server instance

Returns:

0 on success, negative error code on failure

function rfc2217_server_destroy

Destroy RFC2217 server instance.

void rfc2217_server_destroy (
    rfc2217_server_t server
) 

Parameters:

  • server RFC2217 server instance

function rfc2217_server_send_data

Send data to client.

int rfc2217_server_send_data (
    rfc2217_server_t server,
    const uint8_t *data,
    size_t len
) 

Parameters:

  • server RFC2217 server instance
  • data pointer to data to send
  • len length of data to send

Returns:

0 on success, negative error code on failure

function rfc2217_server_start

Start RFC2217 server.

int rfc2217_server_start (
    rfc2217_server_t server
) 

Parameters:

  • server RFC2217 server instance

Returns:

0 on success, negative error code on failure

function rfc2217_server_stop

Stop RFC2217 server.

int rfc2217_server_stop (
    rfc2217_server_t server
) 

Parameters:

  • server RFC2217 server instance

Returns:

0 on success, negative error code on failure