|
spandsp
0.0.6
|
#include <stdio.h>#include <stdlib.h>#include <inttypes.h>#include <string.h>#include <errno.h>#include "spandsp/telephony.h"#include "spandsp/logging.h"#include "spandsp/async.h"#include "spandsp/hdlc.h"#include "spandsp/schedule.h"#include "spandsp/queue.h"#include "spandsp/v42.h"#include "spandsp/private/logging.h"#include "spandsp/private/schedule.h"#include "spandsp/private/hdlc.h"#include "spandsp/private/v42.h"Defines | |
| #define | LAPM_FRAMETYPE_MASK 0x03 |
| #define | LAPM_FRAMETYPE_I 0x00 |
| #define | LAPM_FRAMETYPE_I_ALT 0x02 |
| #define | LAPM_FRAMETYPE_S 0x01 |
| #define | LAPM_FRAMETYPE_U 0x03 |
| #define | T_WAIT_MIN 2000 |
| #define | T_WAIT_MAX 10000 |
| #define | T_400 750000 |
| #define | T_401 1000000 |
| #define | T_402 1000000 |
| #define | T_403 10000000 |
| #define | N_400 3 |
| #define | N_401 128 |
| #define | LAPM_DLCI_DTE_TO_DTE 0 |
| #define | LAPM_DLCI_LAYER2_MANAGEMENT 63 |
Functions | |
| void | lapm_reset (lapm_state_t *s) |
| void | lapm_restart (lapm_state_t *s) |
| const char * | lapm_status_to_str (int status) |
| int | lapm_tx (lapm_state_t *s, const void *buf, int len) |
| int | lapm_release (lapm_state_t *s) |
| int | lapm_loopback (lapm_state_t *s, int enable) |
| int | lapm_break (lapm_state_t *s, int enable) |
| int | lapm_tx_iframe (lapm_state_t *s, const void *buf, int len, int cr) |
| void | lapm_dump (lapm_state_t *s, const uint8_t *frame, int len, int showraw, int txrx) |
| void | lapm_receive (void *user_data, const uint8_t *frame, int len, int ok) |
| void | v42_rx_bit (void *user_data, int bit) |
| int | v42_tx_bit (void *user_data) |
| void | v42_set_status_callback (v42_state_t *s, v42_status_func_t callback, void *user_data) |
| void | v42_restart (v42_state_t *s) |
| v42_state_t * | v42_init (v42_state_t *s, int calling_party, int detect, v42_frame_handler_t frame_handler, void *user_data) |
| int | v42_release (v42_state_t *s) |
| int | v42_free (v42_state_t *s) |
| int lapm_break | ( | lapm_state_t * | s, |
| int | enable | ||
| ) |
Send a break over a LAP.M connection
| void lapm_dump | ( | lapm_state_t * | s, |
| const uint8_t * | frame, | ||
| int | len, | ||
| int | showraw, | ||
| int | txrx | ||
| ) |
Dump LAP.M frames in a raw and/or decoded forms
| frame | The frame itself |
| len | The length of the frame, in octets |
| showraw | TRUE if the raw octets should be dumped |
| txrx | TRUE if tx, FALSE if rx. Used to highlight the packet's direction. |
References span_log(), and span_log_buf().
| int lapm_loopback | ( | lapm_state_t * | s, |
| int | enable | ||
| ) |
Enable or disable loopback of a LAP.M connection
| int lapm_release | ( | lapm_state_t * | s | ) |
Initiate an orderly release of a LAP.M connection
| int lapm_tx | ( | lapm_state_t * | s, |
| const void * | buf, | ||
| int | len | ||
| ) |
Transmit a LAP.M frame
References queue_write().
| int lapm_tx_iframe | ( | lapm_state_t * | s, |
| const void * | buf, | ||
| int | len, | ||
| int | cr | ||
| ) |
Transmit a LAP.M information frame
References span_log().
| int v42_free | ( | v42_state_t * | s | ) |
Free a V.42 context.
| s | The V.42 context. |
| v42_state_t* v42_init | ( | v42_state_t * | s, |
| int | calling_party, | ||
| int | detect, | ||
| v42_frame_handler_t | frame_handler, | ||
| void * | user_data | ||
| ) |
Initialise a V.42 context.
| s | The V.42 context. |
| calling_party | TRUE if caller mode, else answerer mode. |
| frame_handler | A callback function to handle received frames of data. |
| user_data | An opaque pointer passed to the frame handler routine. |
References queue_init(), and v42_restart().
| int v42_release | ( | v42_state_t * | s | ) |
Release a V.42 context.
| s | The V.42 context. |
| void v42_restart | ( | v42_state_t * | s | ) |
| void v42_rx_bit | ( | void * | user_data, |
| int | bit | ||
| ) |
Process a newly received bit for a V.42 context.
References v42_state_s::lapm.
| void v42_set_status_callback | ( | v42_state_t * | s, |
| v42_status_func_t | callback, | ||
| void * | user_data | ||
| ) |
Assign or remove a callback routine used to deal with V.42 status changes.
| int v42_tx_bit | ( | void * | user_data | ) |
Get the next transmit bit for a V.42 context.
References v42_state_s::lapm.