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

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers ip6addr.h Source File

ip6addr.h

00001 #include <stdint.h>
00002 #include <stdbool.h>
00003 
00004 extern int  Ip6AddrToString(const char* ip, int size, char* text);
00005 extern void Ip6AddrParse   (const char *ip, char *address);
00006 extern int  Ip6AddrLog     (const char* ip);
00007 extern int  Ip6AddrHttp    (const char* ip);
00008 
00009 extern bool Ip6AddrIsSame (const char* ipA, const char* ipB);
00010 extern bool Ip6AddrIsEmpty(const char* ip);
00011 extern void Ip6AddrCopy   (char* ipTo, const char* ipFrom);
00012 extern void Ip6AddrClear  (char* ip);
00013 
00014 extern bool Ip6AddrIsLinkLocal  (const char* p);
00015 extern bool Ip6AddrIsUniqueLocal(const char* p);
00016 extern bool Ip6AddrIsGlobal     (const char* p);
00017 extern bool Ip6AddrIsExternal   (const char* p);
00018 extern bool Ip6AddrIsSolicited  (const char* p);
00019 extern bool Ip6AddrIsMulticast  (const char *p);
00020 extern bool Ip6AddrIsSameGroup  (const char* pA, const char* pB);
00021 
00022 extern const char Ip6AddrAllNodes  [];
00023 extern const char Ip6AddrAllRouters[];
00024 extern const char Ip6AddrMdns      [];
00025 extern const char Ip6AddrLlmnr     [];
00026 extern const char Ip6AddrNtp       [];
00027 
00028 extern void Ip6AddrFromDest (int dest , char* pDstIp);
00029 
00030 #define SCOPE_NONE         0
00031 #define SCOPE_LINK_LOCAL   1
00032 #define SCOPE_UNIQUE_LOCAL 2
00033 #define SCOPE_GLOBAL       3