Sam Grove
02a23c22ad
Merge pull request #103 from geky/esp8266-non-blocking
...
Add non-blocking support to ESP8266Interface
2016-05-20 16:03:40 -05:00
Russ Butler
e920f247bf
Update mbed-client repos
...
Update the mbed-client repos to bring in the latest changes. With
this PR the mbed-client repos now point to commits mirrored from
the real repo rather than a morpheus fork.
2016-05-18 09:42:59 -05:00
Sam Grove
7d541a9cbd
Merge pull request #104 from theotherjimmy/buffered-serial-printf
...
removed warning about unsigned to signed cast
2016-05-18 02:02:59 -05:00
Jimmy Brisson
59ed1bef61
removed warning about unsigned to signed cast
2016-05-17 13:35:24 -05:00
Russ Butler
64cd1f3dfb
Fix SocketAddress constructor to support ipv6
...
Fix typo causing ipv6 addresses in the constructor to fail.
2016-05-17 08:24:10 -05:00
Christopher Haster
4f8e8f5d75
Add non-blocking support to ESP8266Interface
...
requires changes in the following
- BufferedSerial
- ESP8266
- ESP8266Interface
2016-05-16 20:40:57 -05:00
Christopher Haster
dd6a24b76d
Adopt Callback class in NetworkSocketAPI
2016-05-16 11:48:09 -05:00
Russ Butler
b15e2c293e
Add synchronization to the network socket API
...
Add mutexes to protect the network socket API. Also use semaphores to
wait for read/write events. Also fix a typo in the comments for
timeout.
2016-05-15 18:03:48 -05:00
Russ Butler
c8fc4dff6d
Update Nanostack related libs
...
Update library files related to Nanostack to bring in Network Socket
API support.
2016-05-15 18:03:40 -05:00
Christopher Haster
83f65c0d3a
Add rudimentary support for server side
...
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/LWIPInterface/
2016-05-13 11:41:20 -05:00
Christopher Haster
9e415df196
Match changes to NSAPI in LWIPInterface
...
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/LWIPInterface/
2016-05-13 11:41:19 -05:00
Christopher Haster
4684173778
Match changes to NSAPI in ESP8266Interface
...
mirrored from:
https://developer.mbed.org/teams/components/code/ESP8266Interface/
2016-05-13 11:41:18 -05:00
Christopher Haster
7d9b5e6f76
Small bug fixes
...
mirrored from:
https://developer.mbed.org/teams/NetworkSocketAPI/code/NetworkSocketAPI/
- Fix bug with SocketAddress init per @c1728p9
- Fix issue with not passing interface through accept call
- Fix port issue in SocketAddress constructor
2016-05-13 11:41:17 -05:00
Christopher Haster
8304124a63
Add NSAPI_ERROR_PARAMETER
...
per @c1728p9
2016-05-13 11:41:16 -05:00
Christopher Haster
bcab0fcef5
Added WFI to save power in temporary polling implementation
2016-05-13 11:41:15 -05:00
Christopher Haster
5475dd0404
Consolidate set_timeout/set_blocking behaviour
...
- Avoids ambiguity when both are used
- Matches Python behaviour
2016-05-13 11:41:14 -05:00
Christopher Haster
d17fa4faad
Separate Stack/Interface concept into two distinct classes
2016-05-13 11:41:13 -05:00
Christopher Haster
49ba2be3a7
Add standardized stack options
2016-05-13 11:41:11 -05:00
Christopher Haster
893dfec7e6
Added workaround for bug in newlib sscanf
...
https://bugs.launchpad.net/gcc-arm-embedded/+bug/1399224
2016-05-13 11:41:10 -05:00
Russ Butler
57de57efc5
Update libraries to match the latest NSAPI
...
Update the library references for mbed-client-classic and
sal-iface-6lowpan-morpheus-private.
2016-05-13 11:41:09 -05:00
Christopher Haster
f4526e5b73
Fix race condition in socket close
2016-05-13 11:41:08 -05:00
Christopher Haster
16929af278
Rename Interface -> Stack
...
NetworkInterface -> NetworkStack
EthernetInterface -> EthernetStack
WiFiInterface -> WiFiStack
CellularInterface -> CellularStack
MeshInterface -> MeshStack
2016-05-13 11:41:07 -05:00
Christopher Haster
55f7d29fc3
Revised documentation for Interface classes
2016-05-13 11:41:06 -05:00
Christopher Haster
d43f8706d3
Revisited documentation for Socket API
2016-05-13 11:41:05 -05:00
Christopher Haster
eab6d775ac
Removed is_connected function
...
- Not supported by TCP/UDP protocols
- Uncommon and less useful with proper error handling
2016-05-13 11:41:04 -05:00
Christopher Haster
50a9143478
Revisited documentation for NetworkInterface specific methods
2016-05-13 11:41:03 -05:00
Christopher Haster
59549cb4df
Standardized comment style
2016-05-13 11:41:02 -05:00
Christopher Haster
e762b04f64
Added support for shortened form ipv6 addresses
...
supported:
1.2.3.4
1:2:3:4:5:6:7:8
1:2::7:8
::
currently not supported:
1:2:3:4:5:6:1.2.3.4
2016-05-13 11:41:01 -05:00
Christopher Haster
525c7b361c
Revised stack specific configurations
...
Adds the following functions for direct configuration of interface
- (set|get)stackopt
- (set|get)sockopt
2016-05-13 11:41:00 -05:00
Christopher Haster
c4506dc1c0
Move bind to Socket
...
Bind can operate on any IP socket and is not specific to a protocol
2016-05-13 11:40:59 -05:00
Russ Butler
fa45131245
Fix ipv6 addr in SocketAddress
...
Correctly set and return the ipv6 address.
2016-05-13 11:40:58 -05:00
Christopher Haster
141b245dfc
Added better support for SocketAddress/string addresses/ports
2016-05-13 11:40:57 -05:00
Christopher Haster
d488f02f5e
Move to SocketAddress in gethostbyname
2016-05-13 11:40:55 -05:00
Christopher Haster
62bb777c1f
Added support for storing bytes directly in SocketAddress
...
Bytes are stored by default, however enough space is allocated in
a SocketAddress to generate the string representation if necessary.
Currently there is no support for shortened addresses
2016-05-13 11:40:54 -05:00
Christopher Haster
455f023949
Renamed NetworkInterface create/destroy methods to match Socket methods
...
- socket_create -> socket_open
- socket_destroy -> socket_close
2016-05-13 11:40:53 -05:00
Christopher Haster
c33d246fa6
Move to single state-change interrupt
...
Pros
- Easier to implement
- More similar to SIGIO in BDS sockets
Cons
- Less information, but this information had a high risk of being
faulty/spurious
2016-05-13 11:40:52 -05:00
Christopher Haster
c3eec0322b
Remove shutdown parameter from close call
...
Pros
- Simplifies interface
- Easier base implementation
Cons
- May need shutdown functionality, in this case shutdown
can be added as another function in the future
2016-05-13 11:40:51 -05:00
Christopher Haster
71efccb1e8
Add open call as alternative to passing NetworkInterface at construction
...
Pros
- Allows memory to be statically allocated
- Avoids issues with Thread creation before entering main
- Matches existing APIs such as FunctionPointer and Ticker
Cons
- Does not enforce passing a NetworkInterface
2016-05-13 11:40:50 -05:00
Christopher Haster
106e459a64
Adopt mbed style doxygen comments
...
per @0xc0170
2016-05-13 11:40:49 -05:00
Christopher Haster
f0f7972a64
Move to asynch lwip sockets based on armmbed/sal-stack-lwip
...
Move the backend of LWIPInterface from the LWIP socket API to the
asynch UDP/TCP APIs used in https://github.com/armmbed/sal-stack-lwip .
Provides asynchronous functionality for the LWIPInterface.
2016-05-13 11:40:48 -05:00
Martin Kojtal
1524c5fca9
lwip - fix size of sys mutex for RTX 4.79
...
The size was increased to 4 bytes. Thanks @c1728p9 for spotting this.
2016-04-14 21:47:17 +01:00
Russ Butler
98a8c49f00
Add mesh interface header file
...
Add the mesh interface header file.
2016-04-10 23:37:23 -05:00
Russ Butler
f23d6ce673
Add mirrored repos
...
Check in the mirrored repos
2016-04-10 23:37:22 -05:00
Christopher Haster
88ebec607e
Added ESP8266Interface
...
- Blocking TCP/UDP
2016-04-06 13:01:08 -05:00
Christopher Haster
5b8b98a14b
Updated mbed-client libs
...
Fixes #19
2016-04-06 12:30:49 -05:00
Christopher Haster
8a5121aaff
Reverted merge of FuncPtr ( #10 )
...
Replaced FuncPtr with FunctionPointer in NSAPI
2016-04-06 11:23:42 -05:00
Christopher Haster
03475f35bb
Matched changes NetworkSocketAPI
...
Responded to feedback from mbed-client implementation
to introduce a full feature set that should support most
of the use cases for the API.
2016-04-06 08:50:56 -05:00
Bogdan Marinescu
0c2d2b8c22
Preparing new layout - added networking deps
2016-04-05 16:40:58 +01:00
Bogdan Marinescu
1fd427fc59
Preparing new layout - moving lwip (2)
2016-04-05 16:40:57 +01:00
Bogdan Marinescu
fa71088cdc
Preparing new layout - moving lwip (1)
2016-04-05 16:40:57 +01:00