26 #if !defined(_SPANDSP_PRIVATE_V42_H_)
27 #define _SPANDSP_PRIVATE_V42_H_
30 #define V42_DEFAULT_N_400 5
32 #define V42_DEFAULT_N_401 128
34 #define V42_MAX_N_401 128
36 #define V42_DEFAULT_WINDOW_SIZE_K 15
38 #define V42_MAX_WINDOW_SIZE_K 15
41 #define V42_INFO_FRAMES (V42_MAX_WINDOW_SIZE_K + 1)
43 #define V42_CTRL_FRAMES 8
48 uint8_t v42_tx_window_size_k;
49 uint8_t v42_rx_window_size_k;
62 uint8_t buf[4 + V42_MAX_N_401];
71 void *iframe_get_user_data;
74 void *iframe_put_user_data;
77 void *status_user_data;
84 uint8_t rx_window_size_k;
modem_status_func_t status_handler
The callback function used to report modem status changes.
Definition: private/v29tx.h:46
logging_state_t logging
Error and flow logging control.
Definition: private/v42.h:151
Definition: private/v42.h:69
hdlc_tx_state_t * hdlc_tx_init(hdlc_tx_state_t *s, int crc32, int inter_frame_flags, int progressive, hdlc_underflow_handler_t handler, void *user_data)
Initialise an HDLC transmitter context.
Definition: hdlc.c:626
void(* modem_status_func_t)(void *user_data, int status)
Definition: async.h:114
int tx_bit_rate
Definition: private/v42.h:141
int detect
Definition: private/v42.h:138
int calling_party
Definition: private/v42.h:135
int(* get_msg_func_t)(void *user_data, uint8_t *msg, int max_len)
Definition: async.h:96
const char * signal_status_to_str(int status)
Convert a signal status to a short text description.
Definition: async.c:42
v42_state_t * v42_init(v42_state_t *ss, int calling_party, int detect, get_msg_func_t iframe_get, put_msg_func_t iframe_put, void *user_data)
Definition: v42.c:1495
SPAN_DECLARE_NONSTD(int) async_tx_get_bit(void *user_data)
Get the next bit of a transmitted serial bit stream.
int rx_negotiation_step
Definition: private/v42.h:118
Definition: private/v42.h:116
int v42_set_local_busy_status(v42_state_t *s, int busy)
Definition: v42.c:1443
int v42_get_far_busy_status(v42_state_t *s)
Definition: v42.c:1453
uint8_t tx_window_size_k
Definition: private/v42.h:83
int v42_release(v42_state_t *s)
Definition: v42.c:1551
@ SIG_STATUS_LINK_CONNECTED
The link protocol (e.g. V.42) has connected.
Definition: async.h:85
Definition: private/hdlc.h:33
int v42_free(v42_state_t *s)
Definition: v42.c:1558
int span_log(logging_state_t *s, int level, const char *format,...)
Generate a log entry.
Definition: logging.c:84
hdlc_rx_state_t * hdlc_rx_init(hdlc_rx_state_t *s, int crc32, int report_bad_frames, int framing_ok_threshold, hdlc_frame_handler_t handler, void *user_data)
Initialise an HDLC receiver context.
Definition: hdlc.c:327
Definition: private/v42.h:60
@ SIG_STATUS_LINK_DISCONNECTED
The link protocol (e.g. V.42) has disconnected.
Definition: async.h:87
void(* put_msg_func_t)(void *user_data, const uint8_t *msg, int len)
Definition: async.h:93
Definition: private/v42.h:46
void v42_restart(v42_state_t *s)
Definition: v42.c:1466
Definition: private/hdlc.h:92
@ SIG_STATUS_LINK_ERROR
An error has occurred in the link protocol (e.g. V.42).
Definition: async.h:89
Definition: private/v42.h:133
Definition: private/logging.h:34
int hdlc_tx_frame(hdlc_tx_state_t *s, const uint8_t *frame, size_t len)
Transmit a frame.
Definition: hdlc.c:389
int hdlc_tx_flags(hdlc_tx_state_t *s, int len)
Transmit a specified quantity of flag octets, typically as a preamble.
Definition: hdlc.c:424