Go to the source code of this file.
|
void | tcp_remove_all (void) |
|
struct pbuf * | tcp_create_segment (ip_addr_t *src_ip, ip_addr_t *dst_ip, u16_t src_port, u16_t dst_port, void *data, size_t data_len, u32_t seqno, u32_t ackno, u8_t headerflags) |
|
struct pbuf * | tcp_create_rx_segment (struct tcp_pcb *pcb, void *data, size_t data_len, u32_t seqno_offset, u32_t ackno_offset, u8_t headerflags) |
|
struct pbuf * | tcp_create_rx_segment_wnd (struct tcp_pcb *pcb, void *data, size_t data_len, u32_t seqno_offset, u32_t ackno_offset, u8_t headerflags, u16_t wnd) |
|
void | tcp_set_state (struct tcp_pcb *pcb, enum tcp_state state, ip_addr_t *local_ip, ip_addr_t *remote_ip, u16_t local_port, u16_t remote_port) |
|
void | test_tcp_counters_err (void *arg, err_t err) |
|
err_t | test_tcp_counters_recv (void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err) |
|
struct tcp_pcb * | test_tcp_new_counters_pcb (struct test_tcp_counters *counters) |
|
void | test_tcp_input (struct pbuf *p, struct netif *inp) |
|
void | test_tcp_init_netif (struct netif *netif, struct test_tcp_txcounters *txcounters, ip_addr_t *ip_addr, ip_addr_t *netmask) |
|
◆ tcp_create_rx_segment()
Create a TCP segment usable for passing to tcp_input
- IP-addresses, ports, seqno and ackno are taken from pcb
- seqno and ackno can be altered with an offset
Definition at line 118 of file tcp_helper.c.
121 return tcp_create_segment(&pcb->remote_ip, &pcb->local_ip, pcb->remote_port, pcb->local_port,
122 data, data_len, pcb->rcv_nxt + seqno_offset, pcb->lastack + ackno_offset, headerflags);
struct pbuf * tcp_create_segment(ip_addr_t *src_ip, ip_addr_t *dst_ip, u16_t src_port, u16_t dst_port, void *data, size_t data_len, u32_t seqno, u32_t ackno, u8_t headerflags)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Referenced by START_TEST(), test_tcp_recv_ooseq_double_FINs(), and test_tcp_tx_full_window_lost().
◆ tcp_create_rx_segment_wnd()
Create a TCP segment usable for passing to tcp_input
- IP-addresses, ports, seqno and ackno are taken from pcb
- seqno and ackno can be altered with an offset
- TCP window can be adjusted
Definition at line 130 of file tcp_helper.c.
134 data, data_len, pcb->rcv_nxt + seqno_offset, pcb->lastack + ackno_offset, headerflags, wnd);
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static struct pbuf * tcp_create_segment_wnd(ip_addr_t *src_ip, ip_addr_t *dst_ip, u16_t src_port, u16_t dst_port, void *data, size_t data_len, u32_t seqno, u32_t ackno, u8_t headerflags, u16_t wnd)
Referenced by test_tcp_tx_full_window_lost().
◆ tcp_create_segment()
Create a TCP segment usable for passing to tcp_input
Definition at line 105 of file tcp_helper.c.
110 data_len, seqno, ackno, headerflags,
TCP_WND);
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static struct pbuf * tcp_create_segment_wnd(ip_addr_t *src_ip, ip_addr_t *dst_ip, u16_t src_port, u16_t dst_port, void *data, size_t data_len, u32_t seqno, u32_t ackno, u8_t headerflags, u16_t wnd)
Referenced by tcp_create_rx_segment().
◆ tcp_remove_all()
Remove all pcbs on listen-, active- and time-wait-list (bound- isn't exported).
Definition at line 28 of file tcp_helper.c.
33 fail_unless(lwip_stats.memp[MEMP_TCP_PCB].used == 0);
34 fail_unless(lwip_stats.memp[MEMP_TCP_PCB_LISTEN].used == 0);
35 fail_unless(lwip_stats.memp[MEMP_TCP_SEG].used == 0);
36 fail_unless(lwip_stats.memp[MEMP_PBUF_POOL].used == 0);
static void tcp_remove(struct tcp_pcb *pcb_list)
Referenced by tcp_oos_setup(), tcp_oos_teardown(), tcp_setup(), and tcp_teardown().
◆ tcp_set_state()
Safely bring a tcp_pcb into the requested state
Definition at line 139 of file tcp_helper.c.
145 if (
state == ESTABLISHED) {
146 TCP_REG(&tcp_active_pcbs, pcb);
147 pcb->local_ip.addr = local_ip->addr;
148 pcb->local_port = local_port;
149 pcb->remote_ip.addr = remote_ip->addr;
150 pcb->remote_port = remote_port;
151 }
else if(
state == LISTEN) {
152 TCP_REG(&tcp_listen_pcbs.pcbs, pcb);
153 pcb->local_ip.addr = local_ip->addr;
154 pcb->local_port = local_port;
155 }
else if(
state == TIME_WAIT) {
156 TCP_REG(&tcp_tw_pcbs, pcb);
157 pcb->local_ip.addr = local_ip->addr;
158 pcb->local_port = local_port;
159 pcb->remote_ip.addr = remote_ip->addr;
160 pcb->remote_port = remote_port;
◆ test_tcp_counters_err()
◆ test_tcp_counters_recv()
Definition at line 197 of file tcp_helper.c.
211 counters->recved_bytes_after_close +=
p->tot_len;
GLint GLint GLsizei GLuint * counters
u8_t pbuf_free(struct pbuf *p)
static void test_tcp_counters_check_rxdata(struct test_tcp_counters *counters, struct pbuf *p)
#define EXPECT(a, b, c, d, e, f)
#define EXPECT_RETX(x, y)
Referenced by test_tcp_new_counters_pcb().
◆ test_tcp_init_netif()
◆ test_tcp_input()
◆ test_tcp_new_counters_pcb()
Allocate a pcb and set up the test_tcp_counters_* callbacks
Definition at line 223 of file tcp_helper.c.
225 struct tcp_pcb* pcb = tcp_new();
STREAM tcp_recv(STREAM s, uint32 length)
void test_tcp_counters_err(void *arg, err_t err)
GLint GLint GLsizei GLuint * counters
err_t test_tcp_counters_recv(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t err)
Referenced by START_TEST(), test_tcp_recv_ooseq_double_FINs(), and test_tcp_tx_full_window_lost().