Turnstone Operating System
Loading...
Searching...
No Matches
network_tcpv4.64.c File Reference

TCPv4 protocol implementation. More...

#include <network/network_tcpv4.h>
#include <network/network_ipv4.h>
#include <utils.h>
#include <memory.h>
#include <logging.h>
#include <time.h>
#include <hashmap.h>
#include <random.h>
#include <strings.h>

Functions

 MODULE ("turnstone.lib.network")
 
network_tcpv4_listener_tnetwork_tcpv4_listener_get (network_ipv4_address_t ip, uint16_t port)
 
void network_tcpv4_listener_add (network_ipv4_address_t ip, uint16_t port)
 
network_tcpv4_connection_tnetwork_tcpv4_connection_get (network_ipv4_address_t local_ip, uint16_t local_port, network_ipv4_address_t remote_ip, uint16_t remote_port)
 
void network_tcpv4_connection_add (network_tcpv4_connection_t *connection)
 
void network_tcpv4_connection_del (network_tcpv4_connection_t *connection)
 
static uint16_t network_tcpv4_generate_checksum (network_tcpv4_header_t *tcpv4_packet, uint16_t packet_len)
 
static network_tcpv4_header_tnetwork_tcpv4_create_reset_packet (uint16_t dest_port, uint16_t source_port, uint32_t sequence_number, uint32_t acknowledgement_number)
 
static network_tcpv4_header_tnetwork_tcpv4_create_syn_ack_packet_from_connection (network_tcpv4_connection_t *connection)
 
static network_tcpv4_header_tnetwork_tcpv4_create_ack_packet_from_connection (network_tcpv4_connection_t *connection)
 
static network_tcpv4_header_tnetwork_tcpv4_create_psh_ack_packet_from_connection (network_tcpv4_connection_t *connection, uint8_t *data, uint16_t data_len)
 
uint8_tnetwork_tcpv4_process_packet (network_ipv4_address_t dip, network_ipv4_address_t sip, network_tcpv4_header_t *recv_tcpv4_packet, void *network_info, uint16_t packet_len, uint16_t *return_packet_len)
 

Variables

hashmap_tnetwork_tcpv4_listener_ip_map = NULL
 

Detailed Description

TCPv4 protocol implementation.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.