ap

Dependencies:   DnsQuery

Dependents:   WizFi310_TCP_Echo_Server_Example

Fork of NetworkSocketAPI by NetworkSocketAPI

Revision:
74:ef2470ca328b
Parent:
72:6a8b52ee83ed
Child:
75:dea0cdb42241
--- a/Socket.h	Tue Apr 05 05:47:57 2016 -0500
+++ b/Socket.h	Tue Apr 05 06:22:10 2016 -0500
@@ -18,8 +18,37 @@
 #ifndef SOCKET_H
 #define SOCKET_H
 
+/** Maximum storage needed for IP addresses
+ */
+#define NS_API_SIZE 16
+
+/**
+ *  @enum ns_error_t
+ *  @brief enum of standardized error codes
+ */
+enum ns_error_t {
+    NS_ERROR_WOULD_BLOCK   = -3001,     /*!< no data is not available but call is non-blocking */
+    NS_ERROR_UNSUPPORTED   = -3002,     /*!< unsupported configuration */
+    NS_ERROR_NO_CONNECTION = -3003,     /*!< not connected to a network */
+    NS_ERROR_NO_SOCKET     = -3004,     /*!< socket not available for use */
+    NS_ERROR_NO_ADDRESS    = -3005,     /*!< IP address is not known */
+    NS_ERROR_NO_MEMORY     = -3006,     /*!< memory resource not available */
+    NS_ERROR_DNS_FAILURE   = -3007,     /*!< DNS failed to complete successfully */
+    NS_ERROR_DHCP_FAILURE  = -3008,     /*!< DHCP failed to complete successfully */
+    NS_ERROR_AUTH_FAILURE  = -3009,     /*!< connection to access point faield */
+    NS_ERROR_DEVICE_ERROR  = -3010,     /*!< failure interfacing with the network procesor */
+};
+
+/**
+ *  @enum ns_opt_t
+ *  @brief enum of available options
+ */
+enum ns_opt_t {
+};
+
+
 /** Abstract socket class
-  */
+ */
 class Socket {
 public:
     /** Socket lifetime
@@ -32,28 +61,26 @@
     */
     void set_blocking(bool blocking);
     
-    /** Set timeout on a socket operation
+    /** Set timeout on a socket operation if blocking behaviour is enabled
     \param timeout   timeout in ms
     */
     void set_timeout(unsigned int timeout);
 
     /** Set socket options
-    \param level     stack level
     \param optname   option ID
     \param optval    option value
     \param optlen    length of the option value
     \return 0 on success, negative on failure
     */
-    int set_option(int level, int optname, const void *optval, unsigned int optlen);
+    int set_option(int optname, const void *optval, unsigned int optlen);
     
     /** Get socket options
-    \param level     stack level
     \param optname   option ID
     \param optval    buffer pointer where to write the option value
     \param socklen_t length of the option value
     \return 0 on success, negative on failure
     */
-    int get_option(int level, int optname, void *optval, unsigned int *optlen);
+    int get_option(int optname, void *optval, unsigned int *optlen);
     
     /** Close the socket
     \param shutdown  free the left-over data in message queues