For mbed OS-5 version for WIZnet Ethernet Interface, this is Library using Hardware TCP/IP chip, W5500 and TCP/IP Offload Engine, W7500.
Warning
- If you want to use existing codes, you need to change the class used as EthernetInterface to WIZnetInterface.
This is WIZnet Ethernet Interface using Hardware TCP/IP chip, W5500 and TCP/IP Offload Engine, W7500.
- WIZwiki_W7500 : /platforms/WIZwiki-W7500/
- WIZwiki_W7500P : /platforms/WIZwiki-W7500P/
- WIZwiki_W7500ECO : /platforms/WIZwiki-W7500ECO/
- W5500 Ethernet Shield : /components/W5500-Ethernet-Kit-for-IoT/
This library is an Ethernet Interface library port-based on [EthernetInterface](https://developer.mbed.org/users/mbed_official/code/EthernetInterface/docs/tip/).
For more detail, visit http://embeddist.blogspot.kr/2015/06/wiznetinterface-for-armmbed.html
Socket/DNSClient.h@0:d4c8fe4d9b29, 2017-09-04 (annotated)
- Committer:
- justinkim
- Date:
- Mon Sep 04 00:23:04 2017 +0000
- Revision:
- 0:d4c8fe4d9b29
mbed OS 5 version migration...
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
justinkim | 0:d4c8fe4d9b29 | 1 | // DNSClient.h 2013/4/5 |
justinkim | 0:d4c8fe4d9b29 | 2 | #pragma once |
justinkim | 0:d4c8fe4d9b29 | 3 | |
justinkim | 0:d4c8fe4d9b29 | 4 | #include "WIZnet_UDPSocket.h" |
justinkim | 0:d4c8fe4d9b29 | 5 | |
justinkim | 0:d4c8fe4d9b29 | 6 | class DNSClient { |
justinkim | 0:d4c8fe4d9b29 | 7 | public: |
justinkim | 0:d4c8fe4d9b29 | 8 | DNSClient(const char* hostname = NULL); |
justinkim | 0:d4c8fe4d9b29 | 9 | DNSClient(Endpoint* pHost); |
justinkim | 0:d4c8fe4d9b29 | 10 | virtual ~DNSClient(); |
justinkim | 0:d4c8fe4d9b29 | 11 | bool lookup(const char* hostname = NULL); |
justinkim | 0:d4c8fe4d9b29 | 12 | uint32_t ip; |
justinkim | 0:d4c8fe4d9b29 | 13 | protected: |
justinkim | 0:d4c8fe4d9b29 | 14 | void poll(); |
justinkim | 0:d4c8fe4d9b29 | 15 | void callback(); |
justinkim | 0:d4c8fe4d9b29 | 16 | int response(uint8_t buf[], int size); |
justinkim | 0:d4c8fe4d9b29 | 17 | int query(uint8_t buf[], int size, const char* hostname); |
justinkim | 0:d4c8fe4d9b29 | 18 | void resolve(const char* hostname); |
justinkim | 0:d4c8fe4d9b29 | 19 | uint8_t m_id[2]; |
justinkim | 0:d4c8fe4d9b29 | 20 | Timer m_interval; |
justinkim | 0:d4c8fe4d9b29 | 21 | int m_retry; |
justinkim | 0:d4c8fe4d9b29 | 22 | const char* m_hostname; |
justinkim | 0:d4c8fe4d9b29 | 23 | private: |
justinkim | 0:d4c8fe4d9b29 | 24 | enum MyNetDnsState |
justinkim | 0:d4c8fe4d9b29 | 25 | { |
justinkim | 0:d4c8fe4d9b29 | 26 | MYNETDNS_START, |
justinkim | 0:d4c8fe4d9b29 | 27 | MYNETDNS_PROCESSING, //Req has not completed |
justinkim | 0:d4c8fe4d9b29 | 28 | MYNETDNS_NOTFOUND, |
justinkim | 0:d4c8fe4d9b29 | 29 | MYNETDNS_ERROR, |
justinkim | 0:d4c8fe4d9b29 | 30 | MYNETDNS_OK |
justinkim | 0:d4c8fe4d9b29 | 31 | }; |
justinkim | 0:d4c8fe4d9b29 | 32 | MyNetDnsState m_state; |
justinkim | 0:d4c8fe4d9b29 | 33 | WIZnet_UDPSocket *m_udp; |
justinkim | 0:d4c8fe4d9b29 | 34 | }; |