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-05-01
Revision:
13:9cd54f7db57a
Parent:
11:c051adb70c5a
Child:
14:e75a59c1123d

File content as of revision 13:9cd54f7db57a:

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 HOPOPT 0
#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