Base class for IP Based Networking Libraries

Dependencies:   DnsQuery

Dependents:   TempTower BSDInterfaceTests HelloBSDInterface ESP8266InterfaceTests ... more

For a complete getting started guide see the wiki...

Network Socket API

The Network Socket API provides a common interface for using sockets on network devices. The API provides a simple class-based interface that should be familiar to users experienced with other socket APIs. Additionally, the API provides a simple interface for implementing network devices, making it easy to connect hardware agnostic programs to new devices.

Network Interfaces

The NetworkInterface provides an abstract class for network devices that support sockets. Devices should provide a DeviceInterface class that inherits this interface and adds implementation specific methods for using the device. A NetworkInterface must be provided to a Socket constructor to open a socket on the interface. Currently two subclasses are defined for common devices, EthernetInterface and WiFiInterface.

Sockets

The Socket class is used for managing network sockets. Once opened, the socket provides a pipe through which data can sent and recieved to a specific endpoint. The socket class can be instantiated as either a TCPSocket or a UDPSocket which defines the protocol used for the connection.

Revisions of UDPSocket.h

Revision Date Message Actions
109:5d8bd5752386 2016-04-19 Merged changes to NSAPI File  Diff  Annotate
105:2fd212f8da61 2016-04-19 Rename Interface -> Stack File  Diff  Annotate
104:d28d8b508e7c 2016-04-19 Revised documentation for Interface classes File  Diff  Annotate
103:37decbcb1108 2016-04-19 Revisited documentation for Socket API File  Diff  Annotate
98:0f614f1d0398 2016-04-19 Move bind to Socket File  Diff  Annotate
96:656011e49d9f 2016-04-19 Added better support for SocketAddress/string addresses/ports File  Diff  Annotate
92:dd5f19874adf 2016-04-19 Move to single state-change interrupt File  Diff  Annotate
90:0a988e4abb72 2016-04-19 Add open call as alternative to passing NetworkInterface at construction File  Diff  Annotate
89:b1d417383c0d 2016-04-19 Adopt mbed style doxygen comments File  Diff  Annotate
81:1600369a29dd 2016-04-05 Added proper forwarding for interrupt driven callbacks File  Diff  Annotate
80:9c6673c93082 2016-04-05 Added support for DNS resolution File  Diff  Annotate
79:43a7e8c0d6cc 2016-04-05 Added rough implementation of the API shim File  Diff  Annotate
78:0914f9b9b24b 2016-04-05 Dragged over license from nsapi File  Diff  Annotate
77:b66a6984ed2d 2016-04-05 Integrated interfaces as arguments to sockets File  Diff  Annotate
75:dea0cdb42241 2016-04-05 Introduced SocketAddress class for efficient handling of netork addresses File  Diff  Annotate
74:ef2470ca328b 2016-04-05 Minor improvements to API File  Diff  Annotate
73:968f7b32278f 2016-04-05 Added callbacks on potentially blocking operations File  Diff  Annotate
72:6a8b52ee83ed 2016-04-05 Added initial design for user-facing API File  Diff  Annotate
63:531f4c27f360 2016-03-09 update formatting and add comments for documentation File  Diff  Annotate
57:3c873fab4207 2016-02-25 Standardized prefix to NS for enums and constants File  Diff  Annotate
43:09ea32f2eb54 2016-02-24 Responded to feedback in API decisions File  Diff  Annotate
28:163fbe3263f4 2016-02-18 Removed memory allocations for internal buffers File  Diff  Annotate
27:d7ed39727306 2016-02-18 Added better behaviour for urls in constructors File  Diff  Annotate
25:ed7b2a52e8ac 2016-02-18 Added abstract base case for Sockets File  Diff  Annotate
24:a5e959bdd2dd 2016-02-18 Added setURL for DNS lookups File  Diff  Annotate
21:35ed15069189 2016-02-18 Added UDPSocket and TCPSocket API and changes to core API File  Diff  Annotate