M2X Ethernet demo using Seeed Ethernet W5200 Shield

Dependencies:   LM75B M2XStreamClient jsonlite mbed-rtos mbed Nucleo_Sensor_Shield

Fork of m2x-seeed_ethernet_demo by Sean Newton

WIZnet_Library/WIZnetInterface/DNSClient/DNSClient.h

Committer:
dangriffin
Date:
2014-12-17
Revision:
11:40d8cfc941ed
Parent:
7:a94ba2e0cd04

File content as of revision 11:40d8cfc941ed:

// DNSClient.h 2013/4/5
#pragma once

#include "UDPSocket.h"
 
class DNSClient {
public:
    DNSClient(const char* hostname = NULL);
    DNSClient(Endpoint* pHost);
    virtual ~DNSClient();
    bool lookup(const char* hostname = NULL);
    uint32_t ip;
protected:
    void poll();
    void callback();
    int response(uint8_t buf[], int size);
    int query(uint8_t buf[], int size, const char* hostname);
    void resolve(const char* hostname);
    uint8_t m_id[2];
    Timer m_interval;
    int m_retry;
    const char* m_hostname;
private:
    enum MyNetDnsState
    {
        MYNETDNS_START,
        MYNETDNS_PROCESSING, //Req has not completed
        MYNETDNS_NOTFOUND,
        MYNETDNS_ERROR,
        MYNETDNS_OK
    };
    MyNetDnsState m_state;
    UDPSocket *m_udp;
};