summaryrefslogtreecommitdiff
path: root/examples/network
AgeCommit message (Collapse)Author
2024-08-28examples/network: Support full URLs in HTTP(S) client examples.Damien George
Not just the domain name. This gives better HTTP 1.0 examples if someone wants to copy them. Signed-off-by: Damien George <damien@micropython.org>
2024-08-28examples/network: Use SSLContext instead of old ssl.wrap_socket.Damien George
`ssl.wrap_socket()` is deprecated in CPython, so use `SSLContext` instead, so the example is a good example to copy. Signed-off-by: Damien George <damien@micropython.org>
2024-08-28examples/network: Support IPv4 and IPv6 in HTTP client examples.Damien George
The main changes here are to pass the address family and socket type to `getaddrinfo()`, and then use the result of the address lookup when creating the socket, so it has the correct address family. This allows both IPv4 and IPv6 to work, because the socket is created with the correct AF_INETx type for the address. Also add some more comments to the examples to explain what's going on. Fixes issue #15580. Signed-off-by: Damien George <damien@micropython.org>
2024-05-13examples/network: Add example of HTTPS client using non-blocking socket.Damien George
Non-blocking SSL streams can be difficult to get right, so provide a working example, of a HTTPS client. Signed-off-by: Damien George <damien@micropython.org>
2024-05-13examples/network: Rename SSL examples to start with https.Damien George
It's better for discoverability to have these examples named `https_xxx.py` rather than `http_xxx_ssl.py`. Signed-off-by: Damien George <damien@micropython.org>
2023-06-08all: Replace all uses of umodule in Python code.Jim Mussared
Applies to drivers/examples/extmod/port-modules/tools. This work was funded through GitHub Sponsors. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2023-05-02all: Fix cases of Python variable assigned but never used.Christian Clauss
This fixes ruff rule F841.
2020-02-28all: Reformat C and Python source code with tools/codeformat.py.Damien George
This is run with uncrustify 0.70.1, and black 19.10b0.
2019-12-18examples/network: Add testing key/cert to SSL HTTP server example.Damien George
This example will now work on all ports with networking and ssl support, with both axtls and mbedtls.
2016-11-14examples/http_client: Use read() instead of readall().Paul Sokolovsky
2016-10-26examples/http_server_simplistic: Add "not suitable for real use" note.Paul Sokolovsky
2016-10-09examples/network/http_client*: Use \r\n line-endings in request.Paul Sokolovsky
2016-08-06examples/network: Split recv- and read-based HTTP servers.Paul Sokolovsky
Name recv() based a "simplistic", as it can't work robustly in every environment. All this is to let people concentreate on proper, read()- based one (and to turn recv() based into a "negative showcase", explaining what are the pitfalls of such approach).
2016-07-23examples/http_client*: Be sure to close socket.Paul Sokolovsky
Otherwise, on bare-metal/RTOS systems can lead to resource leaks.
2016-07-10examples/http_server*: Update for buffered-like streams (read line by line).Paul Sokolovsky
Since "read-exactly" stream refactor, where stream.read(N) will read exactly N bytes (unless EOF), http_server* examples can't any longer do client_socket.read(4096) and expect to get full request (it will block on HTTP/1.1 client). Instead, read request line by line, as the HTTP protocol requires.
2016-05-03examples/network/: Use getaddrinfo() result in easy way.Paul Sokolovsky
Instead of extracting 4th element, extact last. Much easier to remember!
2016-04-28examples/http_server_ssl.py: HTTPS server example.Paul Sokolovsky
2016-04-02examples/http_client_ssl.py: HTTPS client example.Paul Sokolovsky
2016-04-02examples/http_server.py: Bind to 0.0.0.0, to be accessible from other hosts.Paul Sokolovsky
This is helpful when running on deeply embedded targets, but may be "security risk". Caveat emptor.
2016-04-02examples/http_server.py: Introduce main() function.Paul Sokolovsky
Allows to re-run code if it was imported as a module (e.g., on bare-metal ports).
2016-04-02examples/http_server.py: Refactor/simplify for Python 3.5.Paul Sokolovsky
2016-04-02examples/http_client.py: Introduce main() function.Paul Sokolovsky
Allows to re-run code if it was imported as a module (e.g., on bare-metal ports).
2016-04-02examples/http_client.py: Improve CPython compatibility in stream mode.Paul Sokolovsky
2016-04-01example/http_client.py: Remove unused code.Paul Sokolovsky
2016-04-01examples: http_client.py, http_server.py aren't just unix, move to network/.Paul Sokolovsky