Library for ethernet

Dependents:   VC0706_FTP_Client_Ethernet_MQTT

Fork of WIZnetInterface by Akshay Tom

Revision:
18:27b3e3a39df4
Parent:
17:7d7553e0578e
Child:
19:d8773cd4edc5
--- a/Socket/SNTPClient.h	Thu Jun 25 23:19:51 2015 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
-/**
-* @author Raphael Kwon
-*
-* @section LICENSE
-*
-* Copyright (c) 2014 WIZnet Co., Ltd.
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*
-* @section DESCRIPTION
-*    Simple Network Time Protocol Client
-*
-*/
-
-#ifndef SNTPCLIENT_H
-#define SNTPCLIENT_H
-
-#include "mbed.h"
-#include "UDPSocket.h"
-
-/*
- * @brief Define it for Debug & Monitor DNS processing.
- * @note 
- */
-//#define _SNTP_DEBUG_
-
-#define MAX_SNTP_BUF_SIZE   sizeof(ntpformat)       ///< maximum size of DNS buffer. */
-#define ntp_port        123                     //ntp server port number
-#define SECS_PERDAY     86400UL                 // seconds in a day = 60*60*24
-#define UTC_ADJ_HRS     9                       // SEOUL : GMT+9
-#define EPOCH           1900                    // NTP start year
-
-/* for ntpclient */
-typedef signed char s_char;
-typedef unsigned long long tstamp;
-typedef unsigned int tdist;
-
-typedef struct _ntpformat
-{
-    uint8_t  dstaddr[4];        /* destination (local) address */
-    char    version;        /* version number */
-    char    leap;           /* leap indicator */
-    char    mode;           /* mode */
-    char    stratum;        /* stratum */
-    char    poll;           /* poll interval */
-    s_char  precision;      /* precision */
-    tdist   rootdelay;      /* root delay */
-    tdist   rootdisp;       /* root dispersion */
-    char    refid;          /* reference ID */
-    tstamp  reftime;        /* reference time */
-    tstamp  org;            /* origin timestamp */
-    tstamp  rec;            /* receive timestamp */
-    tstamp  xmt;            /* transmit timestamp */
-} ntpformat;
-typedef struct _datetime
-{
-    int yy;
-    int mo;
-    int dd;
-    int hh;
-    int mm;
-    int ss;
-} datetime;
-/*
-typedef struct _datetime
-{
-    uint16_t yy;
-    uint8_t mo;
-    uint8_t dd;
-    uint8_t hh;
-    uint8_t mm;
-    uint8_t ss;
-} datetime;
-*/
-/** SNTPClient client Class.
- *
- * Example (ethernet network):
- * @code
- * #include "mbed.h"
- * #include "EthernetInterface.h"
- * #include "SNTPClient.h"
- *
- * int main() {
- *    EthernetInterface eth;
- *    eth.init(); //Use DHCP
- *    eth.connect();
- *    printf("IP Address is %s\n\r", eth.getIPAddress());
- *   
- *    SNTPClient ws("ws://sockets.mbed.org:443/ws/demo/rw");
- *    ws.connect();
- *   
- *    while (1) {
- *        int res = ws.send("SNTPClient Hello World!");
- *
- *        if (ws.read(recv)) {
- *            printf("rcv: %s\r\n", recv);
- *        }
- *
- *        wait(0.1);
- *    }
- * }
- * @endcode
- */
-
-
-class SNTPClient
-{
-    public:
-        /**
-        * Constructor
-        *
-        * @param url The SNTPClient host
-        */
-        SNTPClient(char * url, uint8_t time_zone);
-
-        /**
-        * Connect to the SNTPClient url
-        *
-        *@return true if the connection is established, false otherwise
-        */
-        bool connect();
-
-        /**
-        * Read a SNTPClient message
-        *
-        * @param message pointer to the string to be read (null if drop frame)
-        *
-        * @return true if a SNTPClient frame has been read
-        */
-        bool getTime(datetime *time);
-
-        /**
-        * Close the SNTPClient connection
-        *
-        * @return true if the connection has been closed, false otherwise
-        */
-        bool close();
-
-        /*
-        * Accessor: get host from the SNTPClient url
-        *
-        * @return host
-        */
-        char* getHost();
-
-    private:
-
-        uint16_t port;
-        char host[32];
-
-        UDPSocket socket;
-        Endpoint sntp_server;
-
-        ntpformat NTPformat;
-        datetime Nowdatetime;
-        uint8_t ntpmessage[48];
-        uint8_t tz; // Time Zone
-
-        void get_seconds_from_ntp_server(uint8_t *buf, uint16_t idx);
-        tstamp changedatetime_to_seconds(void);
-        void calcdatetime(tstamp seconds);
-};
-
-#endif