| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2016-05-03 | extmod/modlwip: Implement sendall() method for TCP sockets. | Paul Sokolovsky | |
| 2016-05-02 | extmod/modwebrepl: Get rid of using strncpy(). | Paul Sokolovsky | |
| 2016-04-30 | extmod/modwebrepl: Add support for password. | Paul Sokolovsky | |
| Request for password then becomes mandatory part of the protocol. | |||
| 2016-04-29 | extmod/modwebrepl: Set debugging by default to off. | Paul Sokolovsky | |
| That's production setting. Also, extra UART output may affect behavior of (subpar) network drivers. | |||
| 2016-04-29 | extmod/modwebrepl: Add rate-limiting workaround for broken network drivers. | Paul Sokolovsky | |
| Like ESP8266 has. | |||
| 2016-04-29 | extmod/modwebrepl: Use bigger socket receive buffer. | Paul Sokolovsky | |
| The smaller chunks we send (and receive), the more packets there to receive, and higher chance to git internal packet buffer overflow in WiFi driver. | |||
| 2016-04-29 | extmod/modwebrepl: More detailed debug output. | Paul Sokolovsky | |
| So detailed that even commented by default. | |||
| 2016-04-29 | extmod/modwebrepl: GET_FILE: Send length-prefix chunk with one write(). | Paul Sokolovsky | |
| A bit of optimization. | |||
| 2016-04-29 | extmod/modwebrepl: Keep reading data when there's something to read. | Paul Sokolovsky | |
| EAGAIN should be returned only if underlying socket returned it. Wrap existing read function into external loop to process all data available. | |||
| 2016-04-29 | extmod/modwebrepl: Initial implementation of "get file" operation. | Paul Sokolovsky | |
| 2016-04-29 | extmod/modwebrepl: Module to handle WebREPL protocol. | Paul Sokolovsky | |
| While just a websocket is enough for handling terminal part of WebREPL, handling file transfer operations requires demultiplexing and acting upon, which is encapsulated in _webrepl class provided by this module, which wraps a websocket object. | |||
| 2016-04-28 | extmod/modussl: SSL_OK from ssl_read() means "no user data so far". | Paul Sokolovsky | |
| SSL_OK is numeric 0, and it's *not* an EOF. So, should keep reading. | |||
| 2016-04-28 | extmod/modussl: Support server-side SSL sockets. | Paul Sokolovsky | |
| wrap_socket(sock, server_side=True) | |||
| 2016-04-28 | extmod/modussl: Throw Python exceptions in case of errors. | Paul Sokolovsky | |
| 2016-04-27 | extmod/modwebsocket: Handle CLOSE control frame. | Paul Sokolovsky | |
| This fixes situation when clients hangs waiting for disconnect and does so only on timeout. | |||
| 2016-04-26 | extmod/modlwip: Add print_pcbs() debug function. | Paul Sokolovsky | |
| This requires lwIP built with LWIP_DEBUG (or it will be no-op). | |||
| 2016-04-26 | extmod/modlwip: Workaround esp8266 sendto issue where 1 is returned. | Damien George | |
| 2016-04-26 | extmod, stmhal: Fix typo of macro that detects if float is enabled. | Damien George | |
| 2016-04-25 | extmod/modlwip: Protect recv/accept Python callback against exceptions. | Paul Sokolovsky | |
| Using usual call_function_*_protected() helper, to avoid NLR jump crashes. | |||
| 2016-04-22 | extmod/machine_i2c: Allow mp_hal_pin_obj_t to be any type, not a ptr. | Damien George | |
| 2016-04-17 | extmod/modlwip: Add ability to run callback on "recv" and "accept" events. | Paul Sokolovsky | |
| To use: .setsockopt(SOL_SOCKET, 20, lambda sock: print(sock)). There's a single underlying callback slot. For normal sockets, it serves as data received callback, for listening sockets - connection arrived callback. | |||
| 2016-04-17 | extmod/modlwip: lwip_tcp_receive(): Full error handling. | Paul Sokolovsky | |
| 2016-04-17 | extmod/modlwip: lwip_tcp_send(): Full error handling. | Paul Sokolovsky | |
| 2016-04-14 | extmod/fsusermount: In mount/mkfs, deregister VFS object on error. | Damien George | |
| Should fix issue #1947. | |||
| 2016-04-15 | extmod/modlwip: More debug messages for various edge conditions. | Paul Sokolovsky | |
| 2016-04-14 | extmod/modlwip: Start adding debug output. | Paul Sokolovsky | |
| 2016-04-14 | extmod/modlwip: lwip_tcp_receive(): Properly handle EOF for non-blocking sock. | Paul Sokolovsky | |
| 2016-04-13 | extmod/modwebsocket: Another case to propagate EOF. | Paul Sokolovsky | |
| 2016-04-13 | extmod/moduos_dupterm: Don't swallow exceptions in dupterm's read()/write(). | Paul Sokolovsky | |
| The idea is that if dupterm object can handle exceptions, it will handle them itself. Otherwise, object state can be compromised and it's better to terminate dupterm session. For example, disconnected socket will keep throwing exceptions and dump messages about that. | |||
| 2016-04-12 | extmod/machine_i2c: Implement I2C memory reading/writing. | Damien George | |
| 2016-04-12 | extmod/machine_i2c: Fix I2C reading by sending ack/nack at end of byte. | Damien George | |
| 2016-04-12 | extmod: Add generic machine.I2C class, with bit-bang I2C. | Damien George | |
| Should work on any machine that provides the correct pin functions. | |||
| 2016-04-12 | extmod: Add initial framebuf module. | Damien George | |
| 2016-04-11 | extmod/modwebsocket: write(): Support write size beyond 125 bytes. | Paul Sokolovsky | |
| 2016-04-11 | extmod/modlwip: Fix for loss of data in unaccepted incoming sockets. | Paul Sokolovsky | |
| When lwIP creates a incoming connection socket of a listen socket, it sets its recv callback to one which discards incoming data. We set proper callback only in accept() call, when we allocate Python-level socket where we can queue incoming data. So, in lwIP accept callback be sure to set recv callback to one which tells lwIP to not discard incoming data. | |||
| 2016-04-10 | extmod/modwebsocket.h: Split websocket-related defines for reuse. | Paul Sokolovsky | |
| 2016-04-10 | extmod/modwebsocket: Implement MP_STREAM_SET_DATA_OPTS ioctl. | Paul Sokolovsky | |
| Allows to set fragment type (txt/bin/etc.) for output records. | |||
| 2016-04-10 | extmod/modwebsocket: Allow to get type of last read data using ioctl(). | Paul Sokolovsky | |
| 2016-04-09 | extmod/modwebsocket: Record current fragment type (binary/text/etc.) | Paul Sokolovsky | |
| Also, handle continuation frames (untested). | |||
| 2016-04-09 | extmod/modwebsocket: Add option for blocking writes to non-blk sockets. | Paul Sokolovsky | |
| This is strange asymmetry which is sometimes needed, e.g. for WebREPL: we want to process only available input and no more; but for output, we want to get rid of all of it, because there's no other place to buffer/store it. This asymmetry is akin to CPython's asyncio asymmetry, where reads are asynchronous, but writes are synchronous (asyncio doesn't expect them to block, instead expects there to be (unlimited) buffering for any sync write to completely immediately). | |||
| 2016-04-09 | extmod/modwebsocket: Reset mask between packets. | Paul Sokolovsky | |
| 2016-04-08 | extmod/modwebsocket: Make sure to propagate EOF. | Paul Sokolovsky | |
| 2016-04-08 | extmod/modure: re_exec() renamed to ure_exec() due to collison in 4.3BSD. | Tom Sparks | |
| Addresses issue #1972. | |||
| 2016-04-08 | extmod/modwebsocket: Properly check number of args to constructor. | Paul Sokolovsky | |
| 2016-03-27 | extmod/vfs_fat_diskio: Actually support sectors != 512 with Python blockdevs. | Paul Sokolovsky | |
| 2016-03-25 | extmod/modlwip: lwip_socket_setsockopt: Handle option value properly. | Paul Sokolovsky | |
| 2016-03-25 | extmod/modlwip: Add lwip->POSIX error map for lwIP 1.4.0. | Paul Sokolovsky | |
| Between 1.4.0 and 1.4.1, lwIP errors were renumbered. | |||
| 2016-03-25 | extmod/modlwip: lwip_tcp_send: Handle properly send buffer full condition. | Paul Sokolovsky | |
| Per POSIX http://pubs.opengroup.org/onlinepubs/9699919799/functions/send.html : "If space is not available at the sending socket to hold the message to be transmitted, and the socket file descriptor does not have O_NONBLOCK set, send() shall block until space is available. If space is not available at the sending socket to hold the message to be transmitted, and the socket file descriptor does have O_NONBLOCK set, send() shall fail [with EAGAIN]." | |||
| 2016-03-25 | extmod/modlwip: Implement setsocketopt(SO_REUSEADDR). | Paul Sokolovsky | |
| 2016-03-25 | extmod/modlwip: Add SOL_SOCKET and SO_REUSEADDR constants for setsockopt(). | Paul Sokolovsky | |
