Network Component  Version 6.6
MDK-Professional Middleware for IP Networking
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
rl_net_lib.h File Reference

Data Structures

struct  LOCALM
 Local Machine info. More...
 
struct  NET_FRAME
 System frame buffer structure. More...
 
struct  ARP_INFO
 ARP Cache Entry info. More...
 
struct  IGMP_INFO
 IGMP Group info. More...
 
struct  UDP_INFO
 UDP Socket info. More...
 
struct  TCP_INFO
 TCP Socket info. More...
 
struct  BSD_INFO
 BSD Socket info. More...
 
struct  DNS_CACHE
 DNS Cache Entry info. More...
 
struct  TFTP_INFO
 TFTP Server Session info. More...
 
struct  TNET_INFO
 Telnet Session info. More...
 
struct  FTP_INFO
 FTP Session info. More...
 
struct  HTTP_INFO
 HTTP Session info. More...
 
struct  HTTP_ERROR
 HTTP Error page info. More...
 
struct  SYS_CFG
 SYS Configuration info. More...
 
struct  ARP_CFG
 ARP Configuration info. More...
 
struct  IGMP_CFG
 IGMP Configuration info. More...
 
struct  DHCP_CFG
 DHCP Client Configuration info. More...
 
struct  ETH_CFG
 Ethernet Interface Configuration info. More...
 
struct  COM_DEV
 Serial Device Configuration info. More...
 
struct  PPP_CFG
 PPP Interface Configuration info. More...
 
struct  SLIP_CFG
 SLIP Interface Configuration info. More...
 
struct  UDP_CFG
 UDP Socket Configuration info. More...
 
struct  TCP_CFG
 TCP Socket Configuration info. More...
 
struct  BSD_CFG
 BSD Socket Configuration info. More...
 
struct  DNS_CFG
 DNS Client Configuration info. More...
 
struct  SNMP_CFG
 SNMP Agent Configuration info. More...
 
struct  SNTP_CFG
 SNTP Client Configuration info. More...
 
struct  TFTP_CFG
 TFTP Server Configuration info. More...
 
struct  TFTPC_CFG
 TFTP Client Configuration info. More...
 
struct  TNET_CFG
 Telnet Server Configuration info. More...
 
struct  FTP_CFG
 FTP Server Configuration info. More...
 
struct  FTPC_CFG
 FTP Client Configuration info. More...
 
struct  HTTP_CFG
 HTTP Server Configuration info. More...
 

Macros

#define NET_HEADER_LEN   4
 General definitions.
 
#define PHY_HEADER_LEN   14
 Physical/ethernet header length.
 
#define ETH_FRAME_MTU   1514
 Ethernet frame max. transfer unit.
 
#define NET_PASSWORD_SIZE   20
 Authentication password buffer size.
 
#define TNET_LBUFSZ   96
 Debug process definitions.
 
#define TNET_HISTSZ   128
 Command History buffer size in bytes.
 
#define TNET_FIFOSZ   128
 Input character Fifo buffer in bytes.
 

Enumerations

enum  ERROR_CODE {
  ERR_MEM_ALLOC,
  ERR_MEM_FREE,
  ERR_MEM_CORRUPT,
  ERR_MEM_LOCK,
  ERR_UDP_ALLOC,
  ERR_TCP_ALLOC,
  ERR_TCP_STATE
}
 System Error codes. More...
 

Functions

void net_sys_init (void)
 Initialize Network Component, resources and interfaces.
 
void net_sys_run (void)
 Run Network Component main function.
 
void net_sys_error (ERROR_CODE error)
 Signal Network Component error.
 
NET_FRAMEmem_alloc (uint32_t byte_size)
 Allocate memory for the network frame.
 
void mem_free (NET_FRAME *mem_ptr)
 Release allocated memory.
 
void eth_init_link (void)
 Initialize Ethernet interface.
 
void eth_run_link (void)
 Run ethernet interface main function.
 
bool eth_send_frame (NET_FRAME *frame)
 Construct ethernet header for the frame and send it.
 
bool eth_chk_addr (NET_FRAME *frame)
 Check if ethernet destination MAC address is local MAC address.
 
const uint8_t * eth_get_addr (const uint8_t *ip_addr)
 Get MAC address for the given IP address.
 
void arp_notify (void)
 Send a notification of local IP address change (gratuitous ARP).
 
void igmp_host_init (void)
 Initialize IGMP group management.
 
void igmp_host_run (void)
 Run IGMP group management main function.
 
void igmp_process (NET_FRAME *frame)
 Process IGMP group management frame.
 
bool igmp_is_member (const uint8_t *ipadr)
 Check if local host is a member of provided group.
 
void nbns_client_init (void)
 Initialize NBNS client.
 
void dhcp_client_init (void)
 Initialize DHCP client.
 
void dhcp_client_run (void)
 Run DHCP client main function.
 
void ppp_init_link (void)
 Initialize PPP interface.
 
void ppp_run_link (void)
 Run PPP interface main function.
 
bool ppp_send_frame (NET_FRAME *frame, uint16_t prot)
 Construct PPP header for the frame and send it.
 
void pap_init (void)
 Initialize PAP authentication.
 
void pap_run (void)
 Run PAP authentication main function.
 
void pap_process (NET_FRAME *frame)
 Process PAP authentication frame.
 
void chap_init (void)
 Initialize CHAP authentication.
 
void chap_run (void)
 Run CHAP authentication main function.
 
void chap_process (NET_FRAME *frame)
 Process CHAP authentication frame.
 
void slip_init_link (void)
 Initialize SLIP interface.
 
void slip_run_link (void)
 Run SLIP interface main function.
 
bool slip_send_frame (NET_FRAME *frame)
 Send a SLIP frame.
 
void ip_localhost_init (void)
 Initialize IP localhost.
 
void ip_localhost_run (void)
 Run IP localhost main function.
 
void icmp_service_init (void)
 Initialize ICMP service.
 
void icmp_service_run (void)
 Run ICMP service main function.
 
void udp_socket_init (void)
 Initialize UDP sockets.
 
void udp_process (NET_FRAME *frame)
 Process UDP frame.
 
void tcp_socket_init (void)
 Initialize TCP sockets.
 
void tcp_socket_poll (void)
 Run TCP socket main function.
 
void tcp_process (NET_FRAME *frame)
 Process TCP frame.
 
void dns_client_init (void)
 Initialize DNS client.
 
void dns_client_run (void)
 Run DNS client main function.
 
void bsd_socket_init (void)
 Initialize BSD sockets.
 
void bsd_socket_poll (void)
 Run BSD socket main function.
 
void bsd_lock (void)
 Lock BSD socket functions (acquire mutex).
 
void bsd_unlock (void)
 Unlock BSD socket functions (release mutex).
 
void bsd_host_init (void)
 Initialize BSD host resolver.
 
void ftp_server_init (void)
 Initialize FTP server.
 
void ftp_server_run (void)
 Run FTP server main function.
 
void ftp_client_init (void)
 Initialize FTP client.
 
void ftp_client_run (void)
 Run FTP client main function.
 
void tftp_server_init (void)
 Initialize TFTP server.
 
void tftp_server_run (void)
 Run TFTP server main function.
 
void tftp_client_init (void)
 Initialize TFTP client.
 
void tftp_client_run (void)
 Run TFTP client main function.
 
void smtp_client_init (void)
 Initialize SMTP client.
 
void smtp_client_run (void)
 Run SMTP client main function.
 
void snmp_agent_init (void)
 Initialize SNMP agent.
 
void snmp_agent_run (void)
 Run SNMP agent main function.
 
void sntp_client_init (void)
 Initialize SNTP client.
 
void sntp_client_run (void)
 Run SNTP client main function.
 
void telnet_server_init (void)
 Initialize Telnet server.
 
void telnet_server_run (void)
 Run Telnet server main function.
 
void http_server_init (void)
 Initialize HTTP server.
 
void http_server_run (void)
 Run HTTP server main function.
 

Data Structure Documentation

struct ETH_CFG

Ethernet Interface Configuration info.

Data Fields
ARP_CFG ArpCfg ARP configuration.
DHCP_CFG DhcpCfg DHCP configuraton.
ARM_DRIVER_ETH_MAC * DrvMac Registered MAC driver.
ARM_DRIVER_ETH_PHY * DrvPhy Registered PHY driver.
IGMP_CFG IgmpCfg IGMP configuration.
uint8_t * MacAddr MAC address.
struct COM_DEV

Serial Device Configuration info.

Data Fields
DRIVER_MODEM * DrvModem Registered MODEM driver.
ARM_DRIVER_USART * DrvUsart Registered USART driver.
uint8_t FlowCtrl Flow control.
const char * InitString Modem initialization string.
uint32_t Speed Connection Speed.
struct SLIP_CFG

SLIP Interface Configuration info.

Data Fields
COM_DEV Dev Serial Device configuration.
uint16_t SerTout Serial Frame Receive Timeout.

Macro Definition Documentation

#define ETH_FRAME_MTU   1514

Ethernet frame max. transfer unit.

#define NET_HEADER_LEN   4

General definitions.

Network frame header length

#define NET_PASSWORD_SIZE   20

Authentication password buffer size.

#define PHY_HEADER_LEN   14

Physical/ethernet header length.

#define TNET_FIFOSZ   128

Input character Fifo buffer in bytes.

#define TNET_HISTSZ   128

Command History buffer size in bytes.

#define TNET_LBUFSZ   96

Debug process definitions.

Telnet definitions Command Line buffer size in bytes

Function Documentation

const uint8_t* eth_get_addr ( const uint8_t *  ip_addr)

Get MAC address for the given IP address.

Parameters
[in]ip_addrIP address of a host.
Returns
Pointer to the MAC address in ARP cache.
bool igmp_is_member ( const uint8_t *  ipadr)

Check if local host is a member of provided group.

Parameters
[in]ipadrmulticast IP address to be checked.
Returns
  • true = Local host is member of IGMP group ipadr.
  • false = Local host is not member.
void sntp_client_init ( void  )

Initialize SNTP client.

Returns
None
void sntp_client_run ( void  )

Run SNTP client main function.

Returns
None