A stack which works with or without an Mbed os library. Provides IPv4 or IPv6 with a full 1500 byte buffer.

Dependents:   oldheating gps motorhome heating

net.h

Committer:
andrewboyson
Date:
2017-04-18
Revision:
11:c051adb70c5a
Parent:
10:f0854784e960
Child:
13:9cd54f7db57a

File content as of revision 11:c051adb70c5a:

extern      int NetIp4AddressToString(uint32_t ip, int size, char* text);
extern      int NetIp6AddressToString(char*    ip, int size, char* text);
extern      int NetMacToString(char* mac, int size, char* text);
extern     void NetProtocolToString(uint8_t protocol, int size, char* text);

extern  int16_t NetToHost16(int16_t n);
extern  int32_t NetToHost32(int32_t n);
extern  int64_t NetToHost64(int64_t n);
extern uint16_t NetCheckSum(int count, void* pData);
extern uint16_t NetCheckSumTwo(int count1, void* pData1, int count2, void* pData2);

extern int NetInit(char* name);
extern int NetMain();

extern char* NetName;


#define ETHERNET  1

#define IPV4 0x0800
#define ARP  0x0806
#define IPV6 0x86DD

#define  ICMP  1
#define  IGMP  2
#define   TCP  6
#define   UDP 17
#define ICMP6 58


#define DO_NOTHING       0
#define   UNICAST        1
#define   UNICAST_DNS    2
#define   UNICAST_DHCP   3
#define MULTICAST_NODE   4
#define MULTICAST_ROUTER 5
#define MULTICAST_MDNS   6
#define MULTICAST_LLMNR  7
#define BROADCAST        8