www.beck-ipc.com

@CHIP-RTOS C Library - TCP/IP API


Header File:         #include <TCPIP.H>
                    which includes <TCPIPAPI.H>

    TCP/IP         PKI/SSL     PPP Client     PPP Server     Other    

This API provides access to the IPC@CHIP® TCP/IP stack's socket interface for programming TCP/IP applications.

Please note, that we cannot explain the entire functionality of the TCP/IP protocol and the working of the socket interface in this document.   Good books for understanding TCP/IP and the socket interface are:

    1. Internetworking with TCP/IP, Volume 1-3 from Douglas E.Comer
    2. TCP/IP Illustrated, Volume 1 from W. Richard Stevens

Related :

TCP/IP Functions

Get_IPConfigGet IP, subnet mask and/or gateway
Set_IPConfigSet IP, subnet mask and/or gateway
PPP_Server_GetIPGet IP Address of the PPP Server
PPP_Client_GetIPGet IP Address of the PPP Client
InetToAsciiConvert an IPv4 address to an IP string
inet_addrConverts a string containing an IPv4 address in dot notation
inet_ptonConvert an IP address (IPv4 or IPv6) from standard text representation to binary
inet_ntopConvert an IP address (IPv4 or IPv6) from binary to standard text representation
        --- Socket Functions ---
opensocket

Open TCP or UDP IPv4 socket
opensocket_extOpen an IPv4 or IPv6 socket
closesocketClose socket
bindAssociates a local address with a socket
connectEstablish a connection to a specifed socket
GetWaitingBytesReport the number of bytes on a socket
Set_IP_Type_Of_ServiceSet socket's Type-Of-Service
setsockoptSet options on a socket
getsockoptGet options on a socket
Set_Blocking_ModeSet a socket in blocking or non-blocking mode
get_socketerrorGet last socket error
selectAwait events on a selected set of sockets
select_msAlternative socket event wait method
        --- TCP/IP Sockets ---
tcp_connect

Open TCP/IP socket and connect
acceptAccept the next incoming connection
listenListen for incoming connections
htonsConverts a 16 bit word from host to TCP/IP network byte order
htonlConverts a 32 bit long word from host to TCP/IP network byte order
sendTransmit a message (TCP)
recvReceive message (TCP)
ResetConnectionAbort a connection on a socket
setlingerSet linger time on close (TCP)
setreuseSet reuse option on a listening socket
Get_TCP_Socket_StateFind TCP socket and return state
Get_TCP_Socket_State_IP_AllFind TCP socket and return state (IPv4 and IPv6)
FindAllOpenSocketsGet information about all open sockets
FindAllOpenSockets_IP_AllGet information about all open sockets (IPv4 and IPv6)
shutdownShutdown socket in read,write or both directions
        --- UDP Sockets ---
recvfrom

Receive a datagram and store the source address
recvfromto
Receive a datagram and store source and dest. address
recvfromto_iface
Receive a datagram and store source, dest. address and interface
sendtoTransmit a datagram
sendto_ifaceTransmit a datagram via specified device
        --- DNS Resolver ---
getHostByName

Get a host's address(es) by domain name (IPv4)
getHostByName2Get a host's address(es) by domain name (IPv6)
getHostByAddrGet a host's domain name by address (IPv4)
getHostByAddr2Get a host's domain name by address (IPv6)
getMailHostsGet mail hosts
setNameServerAdd prioritised name server

PKI/SSL Functions

        --- PKI Functions ---
PKI_CertificateAdd

Add a certificate to the PKI
PKI_CertificateDelDelete a certificate from the PKI
PKI_OwnKeyPairAddAdd own private/public key pair
        --- SSL Functions ---
SSL_SessionNew

Open a new SSL session
SSL_SessionCloseClose a SSL session
SSL_SessionPropSet SSL session proposals
SSL_SessionOptSet SSL session options
SSL_AddClientCAAdd a client CA certificate
SSL_ClientStartStart the SSL client
SSL_ServerCreateCreate SSL server state
SSL_SendFlushFlush SSL user data
SSL_ConnCloseClose a SSL connection
SSL_Get_ConnStateGet SSL connection state information
SSL_HandshakeCompleteCheck handshake status
SSL_CheckProblemExtended failure information

PPP Client Functions

PPP_Client_InstalledCheck if PPP client is installed
PPP_Client_OpenOpen a PPP connection (IPv4)
PPP_Client_Open_IPv6Open a PPP connection with IPv6 address config
PPP_Client_CloseClose a PPP client connection
PPP_Client_GetStatusGet PPP client status
PPP_Client_Get_DNSIPGet DNS IP
PPP_Client_SetOptionsSet PPP options for the PPP client
PPP_Client_GetIPGet IP Address of the PPP Client
PPP_Client_PausePause/resume the PPP client task

PPP Server Functions

PPP_Server_InstalledCheck if PPP server is installed
PPP_Server_SuspendSuspend the PPP server task
PPP_Server_ActivateActivate the PPP server
PPP_Server_GetStatusGet the current state of the PPP server
PPP_Server_Get_CfgGet configuration data of the IPv4 PPP server
PPP_Server_Get_Cfg_IPv6Get configuration data of the IPv6 PPP server
PPP_Server_SetOptionsSet PPP options for the PPP server
PPP_Server_GetIPGet IP Address of the PPP Server
PPP_Server_PausePause/resume the PPP server task

Other Functions

        --- Monitoring ---
Get_FTP_Login_Counters

Access the FTP server login counters
Get_Telnet_Login_CountersAccess the Telnet server login counters
Get_Telnet_StateCheck if have an active telnet session
Get_Installed_ServersGet information about running servers
Get_TCPIP_Memory_StatusGet information about TCP/IP stack memory usage
Get_TCPIP_StatisticsAccess the internal network packet counter
Get_SNMP_DataGet internal TCP/IP SNMP variables
Get_SNMP_DataExGet internal TCP/IP SNMP variables (Extended)
        --- DHCP ---
DHCP_use

Set/Reset DHCP usage of the Ethernet interface
Get_DHCP_StatusGet DHCP status of the Ethernet interface
Get_DHCP_Status_ExtGet DHCP status of the Ethernet interface
        --- ping ---
Ping_Open

Open and start ICMP echo requests
Ping_CloseFinish ICMP echo requests
Ping_StatisticsRetrieve ping information
        --- Server Time-outs ---
Set_FTPServer_Idle_Timeout

Set FTP server time-out
Set_TelnetServer_Idle_TimeoutSet Telnet server time-out
Get_FTPServer_Idle_TimeoutGet FTP server time-out value
Get_TelnetServer_Idle_TimeoutGet Telnet server time-out value
        --- Gateway ---
AddDefaultGateway

Deprecated! Add the default gateway
AddDefaultGatewayExAdd the default gateway (Extended)
DelDefaultGatewayDelete the default gateway
GetDefaultGatewayGet the current default gateway
AddStaticRouteAdd a route for an interface
AddStaticRouteExAdd a route for an interface (extended)
DelStaticRouteDelete a route from an interface
TCPIP_SetOptionSet TCPIP options
        --- ARP cache access ---
DelArpEntryByPhys

Delete ARP entry by physical address
AddArpEntryAdd an entry in the ARP table
GetARPRouteCacheEntriesRead ARP cache table
        --- IP Multicast ---
Add_IGMP_Membership

Install an IP multicast address entry
Drop_IGMP_MembershipDelete an IP multicast address entry
IPMulticast_to_MacAddrMap IP multicast address to Ethernet address
        --- Callback Installers ---
RegisterCallbackFunction

Register a user TCP callback function
RegisterIPCallbackHandlerRegister an User callback handler for incoming IP packets
RegisterIPCallbackHandler_SndRegister an User callback handler for outgoing IP packets
Register_ARP_User_CBRegister an ARP User callback handler
RegisterIPConfigCallbackRegister an callback handler for IP configuration changes
        --- Miscellaneous ---
api_sleep

Deprecated! Sleep for specified number of milliseconds
Reconfigure_ethernetReconfigure Ethernet interface
Get_Iface_EntriesDeprecated! Read table of TCP/IP device interfaces
Get_Iface_Entries_ExtRead table of TCP/IP device interfaces with all IPv4 configurations/per interface
SetIfaceMTUSet MTU of an device interface
Get_IPv6_Iface_EntriesTCP/IP IPv6 device interface information

List of C Libraries
@CHIP-RTOS Main Index


End of document