The uIP TCP/IPv6 stack code.
#include "uip.h"
#include "uipopt.h"
#include "uip-icmp6.h"
#include "uip-nd6.h"
#include "uip-ds6.h"
#include "uip-mcast6.h"
#include "uip_arch.h"
#include <string.h>
#include "uip-debug.h"
#include "rpl/rpl.h"
Functions | |
static uint16_t | chksum (uint16_t sum, const uint8_t *data, uint16_t len) |
static uint8_t | ext_hdr_options_process (void) |
Process the options in Destination and Hop By Hop extension headers. More... | |
void | remove_ext_hdr (void) |
void | uip_add32 (uint8_t *op32, uint16_t op16) |
Carry out a 32-bit addition. More... | |
static void | uip_add_rcv_nxt (uint16_t n) |
uint16_t | uip_chksum (uint16_t *data, uint16_t len) |
Calculate the Internet checksum over a buffer. More... | |
struct uip_conn * | uip_connect (uip_ipaddr_t *ripaddr, uint16_t rport) |
Connect to a remote host using TCP. More... | |
uint32_t | uip_htonl (uint32_t val) |
uint16_t | uip_htons (uint16_t val) |
Convert 16-bit quantity from host byte order to network byte order. More... | |
uint16_t | uip_icmp6chksum (void) |
Calculate the ICMP checksum of the packet in uip_buf. More... | |
void | uip_init (void) |
uIP initialization function. More... | |
uint16_t | uip_ipchksum (void) |
Calculate the IP header checksum of the packet header in uip_buf. More... | |
void | uip_listen (uint16_t port) |
Start listening to the specified port. More... | |
void | uip_process (uint8_t flag) |
process the options within a hop by hop or destination option header More... | |
void | uip_send (const void *data, int len) |
Send data on the current connection. More... | |
uint16_t | uip_tcpchksum (void) |
Calculate the TCP checksum of the packet in uip_buf and uip_appdata. More... | |
struct uip_udp_conn * | uip_udp_new (const uip_ipaddr_t *ripaddr, uint16_t rport) |
Set up a new UDP connection. More... | |
uint16_t | uip_udpchksum (void) |
Calculate the UDP checksum of the packet in uip_buf and uip_appdata. More... | |
void | uip_unlisten (uint16_t port) |
Stop listening to the specified port. More... | |
static uint16_t | upper_layer_chksum (uint8_t proto) |
Variables | |
Layer 2 variables | |
uip_lladdr_t | uip_lladdr |
Host L2 address. More... | |
Layer 3 variables | |
uint8_t * | uip_next_hdr |
Type of the next header in IPv6 header or extension headers. More... | |
uint8_t | uip_ext_bitmap = 0 |
bitmap we use to record which IPv6 headers we have already seen More... | |
uint8_t | uip_ext_len = 0 |
length of the extension headers read. More... | |
uint8_t | uip_ext_opt_offset = 0 |
length of the header options read More... | |
Buffer variables | |
uip_buf_t | uip_aligned_buf |
Packet buffer for incoming and outgoing packets. More... | |
void * | uip_appdata |
Pointer to the application data in the packet buffer. More... | |
void * | uip_sappdata |
uint16_t | uip_len |
The length of the packet in the uip_buf buffer. More... | |
uint16_t | uip_slen |
General variables | |
uint8_t | uip_flags |
struct uip_conn * | uip_conn |
Pointer to the current TCP connection. More... | |
static uint8_t | c |
static uint16_t | lastport |
TCP variables | |
struct uip_conn | uip_conns [UIP_CONNS] |
uint16_t | uip_listenports [UIP_LISTENPORTS] |
static uint8_t | iss [4] |
uint8_t | uip_acc32 [4] |
4-byte array used for the 32-bit sequence number calculations. More... | |
static uint8_t | opt |
static uint16_t | tmp16 |
UDP variables | |
struct uip_udp_conn * | uip_udp_conn |
The current UDP connection. More... | |
struct uip_udp_conn | uip_udp_conns [UIP_UDP_CONNS] |
ICMPv6 variables | |
struct uip_icmp6_conn | uip_icmp6_conns |
single possible icmpv6 "connection" More... | |
#define MIN | ( | a, | |
b | |||
) | ((a) < (b)? (a): (b)) |
Referenced by uip_send().