Ethernet for Nucleo and Disco board STM32F746 works with gcc and arm. IAC is untested

Dependents:   STM32F746_iothub_client_sample_mqtt DISCO-F746NG_Ethernet Nucleo_F746ZG_Ethernet thethingsiO-DISCO_F746NG-mqtt ... more

Embed: (wiki syntax)

« Back to documentation index

Data Structures

Data Structures

Here are the data structures with brief descriptions:
api_msgThis struct contains a function to execute in another thread context and a struct api_msg_msg that serves as an argument for this function
api_msg_msgThis struct includes everything that is necessary to execute a function for a netconn in another thread context (mainly used to process netconns in the tcpip_thread context to be thread safe)
dhcp_msgMinimum set of fields of any DHCP message
dns_api_msgAs do_gethostbyname requires more arguments but doesn't require a netconn, it has its own struct (to avoid struct api_msg getting bigger than necessary)
EndpointIP Endpoint (address, port)
eth_hdrEthernet header
eth_vlan_hdrVLAN header inserted between ethernet header and payload if 'type' in ethernet header is ETHTYPE_VLAN
etharp_hdrARP message, see RFC 826 ("Packet format")
etharp_q_entryStruct for queueing outgoing packets for unknown address defined here to be accessed by memp.h
EthernetInterfaceInterface using Ethernet to connect to an IP-based network
icmp_echo_hdrThis is the standard ICMP header only that the u32_t data is splitted to two u16_t like ICMP echo needs it
igmp_groupIgmp group structure - there is a list of groups for each interface these should really be linked from the interface, but if we keep them separate we will not affect the lwip original code too much
in_addrFor compatibility with BSD code
local_hostlist_entryStruct used for local host-list
memp_malloc_helperThis structure is used to save the pool one element came from
mib_array_nodeDerived node, points to a fixed size const array of sub-identifiers plus a 'child' pointer
mib_external_nodeDerived node, has access functions for mib object in external memory or device using 'tree_level' and 'idx', with a range 0
mib_list_rootnodeDerived node, points to a doubly linked list of sub-identifiers plus a 'child' pointer
mib_nodeNode "base class" layout, the mandatory fields for a node
mib_ram_array_nodeDerived node, points to a fixed size mem_malloced array of sub-identifiers plus a 'child' pointer
netconnA netconn descriptor
netifGeneric data structure used for all lwIP network interfaces
obj_defObject definition returned by (get_object_def)()
pbuf_customA custom pbuf: like a pbuf, but following a function pointer to free it
pbuf_custom_refA custom pbuf that holds a reference to another pbuf, which is freed when this custom pbuf is freed
snmp_obj_idInternal object identifier representation
snmp_resp_header_lengthsOutput response message header length fields
snmp_trap_header_lengthsOutput response message header length fields
SocketSocket file descriptor and select wrapper
TCPSocketConnectionTCP socket connection
TCPSocketServerTCP Server
TimeIntervalTime interval class used to specify timeouts
UDPSocketUDP Socket