34 #include <utils_nbqueue.h> 35 #include <utils_timeout.h> 37 #include <tas_memif.h> 48 extern uint32_t cur_ts;
49 extern int kernel_notifyfd;
109 uint32_t rxq_len, uint64_t *txq_base, uint32_t txq_len,
int evfd);
142 uint16_t port_local, uint32_t ip_remote, uint16_t port_remote,
143 uint64_t rx_base, uint32_t rx_len, uint64_t tx_base, uint32_t tx_len,
144 uint32_t remote_seq, uint32_t local_seq, uint64_t app_opaque,
145 uint32_t flags, uint32_t rate, uint32_t fn_core, uint16_t flow_group,
160 int *tx_closed,
int *rx_closed);
333 uint16_t remote_port);
632 uint32_t backlog,
int reuseport,
struct listener **listen);
699 unsigned cc_poll(uint32_t cur_ts);
701 uint32_t cc_next_ts(uint32_t cur_ts);
751 void arp_packet(
const void *pkt, uint16_t len);
803 void kni_packet(
const void *pkt, uint16_t len);
810 #endif // ndef INTERNAL_H_
void tcp_destroy(struct connection *conn)
struct packetmem_handle * rx_handle
void appif_conn_closed(struct connection *c, int status)
int nicif_connection_setrate(uint32_t f_id, uint32_t rate)
void kni_packet(const void *pkt, uint16_t len)
unsigned cc_poll(uint32_t cur_ts)
struct nicif_completion comp
uint32_t timeout_type
Time and type. Type is stored in the 4 most significant bits, and the time in the 28 least significan...
int arp_request(struct nicif_completion *comp, uint32_t ip, uint64_t *mac)
struct app_context * new_ctx
int nicif_connection_add(uint32_t db, uint64_t mac_remote, uint32_t ip_local, uint16_t port_local, uint32_t ip_remote, uint16_t port_remote, uint64_t rx_base, uint32_t rx_len, uint64_t tx_base, uint32_t tx_len, uint32_t remote_seq, uint32_t local_seq, uint64_t app_opaque, uint32_t flags, uint32_t rate, uint32_t fn_core, uint16_t flow_group, uint32_t *pf_id)
void nicif_connection_free(uint32_t f_id)
int tcp_packet(const void *pkt, uint16_t len, uint32_t fn_core, uint16_t flow_group)
void arp_packet(const void *pkt, uint16_t len)
void tcp_timeout(struct timeout *to, enum timeout_type type)
int tcp_listen(struct app_context *ctx, uint64_t opaque, uint16_t local_port, uint32_t backlog, int reuseport, struct listener **listen)
struct listener * app_next
int nicif_connection_move(uint32_t dst_db, uint32_t f_id)
void appif_listen_newconn(struct listener *l, uint32_t remote_ip, uint16_t remote_port)
struct connection * tcp_conns
void arp_timeout(struct timeout *to, enum timeout_type type)
int tcp_accept(struct app_context *ctx, uint64_t opaque, struct listener *listen, uint32_t db_id)
int packetmem_alloc(size_t length, uintptr_t *off, struct packetmem_handle **handle)
struct connection * ht_next
int tcp_open(struct app_context *ctx, uint64_t opaque, uint32_t remote_ip, uint16_t remote_port, uint32_t db_id, struct connection **conn)
int nicif_connection_retransmit(uint32_t f_id, uint16_t core)
unsigned nicif_poll(void)
int nicif_connection_stats(uint32_t f_id, struct nicif_connection_stats *p_stats)
void packetmem_free(struct packetmem_handle *handle)
int tcp_close(struct connection *conn)
void cc_conn_init(struct connection *conn)
int nicif_tx_alloc(uint16_t len, void **buf, uint32_t *opaque)
void appif_conn_opened(struct connection *c, int status)
int nicif_connection_disable(uint32_t f_id, uint32_t *tx_seq, uint32_t *rx_seq, int *tx_closed, int *rx_closed)
struct connection * cc_next
struct packetmem_handle * tx_handle
void appif_accept_conn(struct connection *c, int status)
void cc_conn_remove(struct connection *conn)
int nicif_appctx_add(uint16_t appid, uint32_t db, uint64_t *rxq_base, uint32_t rxq_len, uint64_t *txq_base, uint32_t txq_len, int evfd)
struct connection * wait_conns
void nicif_tx_send(uint32_t opaque, int no_ts)
struct connection * app_next
unsigned appif_poll(void)
int routing_resolve(struct nicif_completion *comp, uint32_t ip, uint64_t *mac)