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

Committer:
andrewboyson
Date:
Mon Mar 11 16:42:45 2019 +0000
Revision:
128:79052cb4a41c
Parent:
83:08c983006a6e
Child:
170:96c637dc3f52
Tidied up the DNS label module and removed some declarations that had not left room for the terminating null.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
andrewboyson 61:aad055f1b0d1 1 #include <stdint.h>
andrewboyson 61:aad055f1b0d1 2 #include <stdbool.h>
andrewboyson 13:9cd54f7db57a 3
andrewboyson 83:08c983006a6e 4 extern bool DnsSendRequestsViaIp4;
andrewboyson 83:08c983006a6e 5
andrewboyson 47:73af5c0b0dc2 6 extern void DnsProtocolString (uint8_t protocol, int size, char* text);
andrewboyson 47:73af5c0b0dc2 7 extern void DnsRecordTypeString(uint8_t recordtype, int size, char* text);
andrewboyson 47:73af5c0b0dc2 8 extern void DnsProtocolLog (uint8_t protocol);
andrewboyson 47:73af5c0b0dc2 9 extern void DnsRecordTypeLog (uint8_t recordtype);
andrewboyson 47:73af5c0b0dc2 10
andrewboyson 41:db727df5f98b 11 extern int DnsGetNextProtocol4(int protocol);
andrewboyson 41:db727df5f98b 12 extern int DnsGetNextProtocol6(int protocol);
andrewboyson 32:679654f2d023 13
andrewboyson 61:aad055f1b0d1 14 extern void DnsMain(void);
andrewboyson 59:e0e556c8bd46 15 extern int DnsHandlePacketReceived(void (*traceback)(void), int dnsProtocol, int sizeRx, void* pPacketRx, int* pSizeTx, void* pPacketTx);
andrewboyson 13:9cd54f7db57a 16 extern int DnsPollForPacketToSend(void* pPacket, int* pSize);
andrewboyson 13:9cd54f7db57a 17
andrewboyson 13:9cd54f7db57a 18 #define DNS_UNICAST_SERVER_PORT 53
andrewboyson 14:e75a59c1123d 19 #define DNS_UNICAST_CLIENT_PORT 53053
andrewboyson 14:e75a59c1123d 20
andrewboyson 14:e75a59c1123d 21 #define DNS_MDNS_PORT 5353
andrewboyson 14:e75a59c1123d 22
andrewboyson 13:9cd54f7db57a 23 #define DNS_LLMNR_SERVER_PORT 5355
andrewboyson 14:e75a59c1123d 24 #define DNS_LLMNR_CLIENT_PORT 53055
andrewboyson 13:9cd54f7db57a 25
andrewboyson 13:9cd54f7db57a 26 #define DNS_PROTOCOL_NONE 0
andrewboyson 13:9cd54f7db57a 27 #define DNS_PROTOCOL_UDNS 1
andrewboyson 13:9cd54f7db57a 28 #define DNS_PROTOCOL_MDNS 2
andrewboyson 13:9cd54f7db57a 29 #define DNS_PROTOCOL_LLMNR 3
andrewboyson 13:9cd54f7db57a 30
andrewboyson 30:e34173b7585c 31 #define DNS_RECORD_NONE 0
andrewboyson 13:9cd54f7db57a 32 #define DNS_RECORD_A 1
andrewboyson 13:9cd54f7db57a 33 #define DNS_RECORD_PTR 12
andrewboyson 13:9cd54f7db57a 34 #define DNS_RECORD_AAAA 28
andrewboyson 15:6ca6778168b1 35 #define DNS_RECORD_TXT 16
andrewboyson 15:6ca6778168b1 36 #define DNS_RECORD_SRV 33
andrewboyson 35:93c39d260a83 37