|
Contiki 3.x
|
Header file for the uIP TCP/IP stack. More...
Go to the source code of this file.
Data Structures | |
| union | uip_ip4addr_t |
| Representation of an IP address. More... | |
| struct | uip_802154_shortaddr |
| 16 bit 802.15.4 address More... | |
| struct | uip_802154_longaddr |
| 64 bit 802.15.4 address More... | |
| struct | uip_80211_addr |
| 802.11 address More... | |
| struct | uip_eth_addr |
| 802.3 address More... | |
| union | uip_buf_t |
| The uIP packet buffer. More... | |
| struct | uip_conn |
| Representation of a uIP TCP connection. More... | |
| struct | uip_udp_conn |
| Representation of a uIP UDP connection. More... | |
| struct | uip_stats |
| The structure holding the TCP/IP statistics that are gathered if UIP_STATISTICS is set to 1. More... | |
Macros | |
| #define | uip_l2_l3_hdr_len (UIP_LLH_LEN + UIP_IPH_LEN + uip_ext_len) |
| The sums below are quite used in ND. More... | |
| #define | uip_sethostaddr(addr) |
| Set the IP address of this host. More... | |
| #define | uip_gethostaddr(addr) |
| Get the IP address of this host. More... | |
| #define | uip_setdraddr(addr) |
| Set the default router's IP address. More... | |
| #define | uip_setnetmask(addr) |
| Set the netmask. More... | |
| #define | uip_getdraddr(addr) |
| Get the default router's IP address. More... | |
| #define | uip_getnetmask(addr) |
| Get the netmask. More... | |
| #define | uip_input() |
| Process an incoming packet. More... | |
| #define | uip_datalen() |
| The length of any incoming data that is currently available (if available) in the uip_appdata buffer. More... | |
| #define | uip_urgdatalen() |
| The length of any out-of-band data (urgent data) that has arrived on the connection. More... | |
| #define | uip_close() |
| Close the current connection. More... | |
| #define | uip_abort() |
| Abort the current connection. More... | |
| #define | uip_stop() |
| Tell the sending host to stop sending data. More... | |
| #define | uip_stopped(conn) |
| Find out if the current connection has been previously stopped with uip_stop(). | |
| #define | uip_restart() |
| Restart the current connection, if is has previously been stopped with uip_stop(). More... | |
| #define | uip_udpconnection() |
| Is the current connection a UDP connection? More... | |
| #define | uip_newdata() |
| Is new incoming data available? More... | |
| #define | uip_acked() |
| Has previously sent data been acknowledged? More... | |
| #define | uip_connected() |
| Has the connection just been connected? More... | |
| #define | uip_closed() |
| Has the connection been closed by the other end? More... | |
| #define | uip_aborted() |
| Has the connection been aborted by the other end? More... | |
| #define | uip_timedout() |
| Has the connection timed out? More... | |
| #define | uip_rexmit() |
| Do we need to retransmit previously data? More... | |
| #define | uip_poll() |
| Is the connection being polled by uIP? More... | |
| #define | uip_initialmss() |
| Get the initial maximum segment size (MSS) of the current connection. | |
| #define | uip_mss() |
| Get the current maximum segment size that can be sent on the current connection. More... | |
| #define | uip_udp_remove(conn) |
| Remove a UDP connection. More... | |
| #define | uip_udp_bind(conn, port) |
| Bind a UDP connection to a local port. More... | |
| #define | uip_udp_send(len) |
| Send a UDP datagram of length len on the current connection. More... | |
| #define | uip_ipaddr_to_quad(a) |
| Convert an IP address to four bytes separated by commas. More... | |
| #define | uip_ipaddr(addr, addr0, addr1, addr2, addr3) |
| Construct an IP address from four bytes. More... | |
| #define | uip_ip6addr(addr, addr0, addr1, addr2, addr3, addr4, addr5, addr6, addr7) |
| Construct an IPv6 address from eight 16-bit words. More... | |
| #define | uip_ip6addr_u8(addr, addr0, addr1, addr2, addr3, addr4, addr5, addr6, addr7, addr8, addr9, addr10, addr11, addr12, addr13, addr14, addr15) |
| Construct an IPv6 address from sixteen 8-bit words. More... | |
| #define | uip_ipaddr_copy(dest, src) (*(dest) = *(src)) |
| Copy an IP address from one place to another. More... | |
| #define | uip_ip4addr_cmp(addr1, addr2) |
| Compare two IP addresses. More... | |
| #define | uip_ipaddr_maskcmp(addr1, addr2, mask) |
| Compare two IP addresses with netmasks. More... | |
| #define | uip_ipaddr_mask(dest, src, mask) |
| Check if an address is a broadcast address for a network. More... | |
| #define | uip_ipaddr1(addr) |
| Pick the first octet of an IP address. More... | |
| #define | uip_ipaddr2(addr) |
| Pick the second octet of an IP address. More... | |
| #define | uip_ipaddr3(addr) |
| Pick the third octet of an IP address. More... | |
| #define | uip_ipaddr4(addr) |
| Pick the fourth octet of an IP address. More... | |
| #define | UIP_HTONS(n) |
| Convert 16-bit quantity from host byte order to network byte order. More... | |
| #define | UIP_STAT(s) |
| The uIP TCP/IP statistics. More... | |
| #define | UIP_APPDATA_SIZE |
| The buffer size available for user data in the uip_buf buffer. More... | |
| #define | UIP_LLPREF_LEN 10 |
| Length of the link local prefix. | |
| #define | uip_is_addr_loopback(a) |
| Is IPv6 address a the unspecified address a is of type uip_ipaddr_t. | |
| #define | uip_is_addr_unspecified(a) |
| Is IPv6 address a the unspecified address a is of type uip_ipaddr_t. | |
| #define | uip_is_addr_linklocal_allnodes_mcast(a) |
| Is IPv6 address a the link local all-nodes multicast address. | |
| #define | uip_is_addr_linklocal_allrouters_mcast(a) |
| Is IPv6 address a the link local all-routers multicast address. | |
| #define | uip_is_addr_linklocal(a) |
| Checks whether the address a is link local. More... | |
| #define | uip_create_unspecified(a) uip_ip6addr(a, 0, 0, 0, 0, 0, 0, 0, 0) |
| set IP address a to unspecified | |
| #define | uip_create_linklocal_allnodes_mcast(a) uip_ip6addr(a, 0xff02, 0, 0, 0, 0, 0, 0, 0x0001) |
| set IP address a to the link local all-nodes multicast address | |
| #define | uip_create_linklocal_allrouters_mcast(a) uip_ip6addr(a, 0xff02, 0, 0, 0, 0, 0, 0, 0x0002) |
| set IP address a to the link local all-routers multicast address | |
| #define | uip_is_addr_solicited_node(a) |
| is addr (a) a solicited node multicast address, see RFC3513 a is of type uip_ipaddr_t* | |
| #define | uip_create_solicited_node(a, b) |
| put in b the solicited node address corresponding to address a both a and b are of type uip_ipaddr_t* | |
| #define | uip_is_addr_link_local(a) |
| is addr (a) a link local unicast address, see RFC3513 i.e. More... | |
| #define | uip_is_addr_mac_addr_based(a, m) |
| was addr (a) forged based on the mac address m a type is uip_ipaddr_t m type is uiplladdr_t | |
| #define | uip_is_addr_mcast(a) (((a)->u8[0]) == 0xFF) |
| is address a multicast address, see RFC 3513 a is of type uip_ipaddr_t* | |
| #define | uip_is_addr_mcast_global(a) |
| is address a global multicast address (FFxE::/16), a is of type uip_ip6addr_t* | |
| #define | uip_is_addr_mcast_non_routable(a) |
| is address a non-routable multicast address. More... | |
| #define | uip_is_addr_mcast_routable(a) |
| is address a routable multicast address. More... | |
| #define | uip_is_mcast_group_id_all_nodes(a) |
| is group-id of multicast address a the all nodes group-id | |
| #define | uip_is_mcast_group_id_all_routers(a) |
| is group-id of multicast address a the all routers group-id | |
| #define | uip_are_solicited_bytes_equal(a, b) |
| are last three bytes of both addresses equal? This is used to compare solicited node multicast addresses | |
| #define | UIP_PROTO_HBHO 0 |
| extension headers types | |
| #define | UIP_EXT_HDR_OPT_PAD1 0 |
| Destination and Hop By Hop extension headers option types. | |
| #define | UIP_EXT_HDR_BITMAP_HBHO 0x01 |
| Bitmaps for extension header processing. More... | |
Typedefs | |
| typedef union uip_ip4addr_t | uip_ip4addr_t |
| Representation of an IP address. | |
| typedef struct uip_802154_shortaddr | uip_802154_shortaddr |
| 16 bit 802.15.4 address | |
| typedef struct uip_802154_longaddr | uip_802154_longaddr |
| 64 bit 802.15.4 address | |
| typedef struct uip_80211_addr | uip_80211_addr |
| 802.11 address | |
| typedef struct uip_eth_addr | uip_eth_addr |
| 802.3 address | |
| typedef uip_eth_addr | uip_lladdr_t |
| Ethernet address. | |
Functions | |
| void | uip_init (void) |
| uIP initialization function. More... | |
| void | uip_setipid (uint16_t id) |
| uIP initialization function. More... | |
| void | uip_reass_over (void) |
| Periodic processing for a connection identified by its number. More... | |
| void | uip_listen (uint16_t port) |
| Start listening to the specified port. More... | |
| void | uip_unlisten (uint16_t port) |
| Stop listening to the specified port. More... | |
| struct uip_conn * | uip_connect (uip_ipaddr_t *ripaddr, uint16_t port) |
| Connect to a remote host using TCP. More... | |
| CCIF void | uip_send (const void *data, int len) |
| Send data on the current connection. More... | |
| struct uip_udp_conn * | uip_udp_new (const uip_ipaddr_t *ripaddr, uint16_t rport) |
| Set up a new UDP connection. More... | |
| CCIF uint16_t | uip_htons (uint16_t val) |
| Convert a 16-bit quantity from host byte order to network byte order. More... | |
| void | uip_process (uint8_t flag) |
| process the options within a hop by hop or destination option header More... | |
| uint16_t | uip_chksum (uint16_t *buf, uint16_t len) |
| Calculate the Internet checksum over a buffer. More... | |
| uint16_t | uip_ipchksum (void) |
| Calculate the IP header checksum of the packet header in uip_buf. More... | |
| uint16_t | uip_tcpchksum (void) |
| Calculate the TCP checksum of the packet in uip_buf and uip_appdata. More... | |
| uint16_t | uip_udpchksum (void) |
| Calculate the UDP checksum of the packet in uip_buf and uip_appdata. More... | |
| uint16_t | uip_icmp6chksum (void) |
| Calculate the ICMP checksum of the packet in uip_buf. More... | |
Variables | |
| CCIF uip_buf_t | uip_aligned_buf |
| Packet buffer for incoming and outgoing packets. | |
| CCIF void * | uip_appdata |
| Pointer to the application data in the packet buffer. More... | |
| CCIF uint16_t | uip_len |
| The length of the packet in the uip_buf buffer. More... | |
| uint8_t | uip_ext_len |
| The length of the extension headers. More... | |
| CCIF struct uip_conn * | uip_conn |
| Pointer to the current TCP connection. More... | |
| uint8_t | uip_acc32 [4] |
| 4-byte array used for the 32-bit sequence number calculations. | |
| struct uip_udp_conn * | uip_udp_conn |
| The current UDP connection. | |
| CCIF uip_lladdr_t | uip_lladdr |
| Host L2 address. | |
Header file for the uIP TCP/IP stack.
The uIP TCP/IP stack header file contains definitions for a number of C macros that are used by uIP programs as well as internal uIP structures, TCP/IP header structures and function declarations.
Definition in file uip.h.
1.8.5