- 04 May, 2015 1 commit
-
-
Josef Gajdusek authored
-
- 28 Jan, 2015 1 commit
-
-
Damien George authored
This cleans up vstr so that it's a pure "variable buffer", and the user can decide whether they need to add a terminating null byte. In most places where vstr is used, the vstr did not need to be null terminated and so this patch saves code size, a tiny bit of RAM, and makes vstr usage more efficient. When null termination is needed it must be done explicitly using vstr_null_terminate.
-
- 24 Jan, 2015 1 commit
-
-
Damien George authored
accept might raise an exception, in which case the new socket is not fully created. It has a finaliser so will run close() method when GC'd. Before this patch close would try to close an invalid socket. Now fixed. setsockopt took address of stack value which became out of scope. Now fixed.
-
- 22 Jan, 2015 1 commit
-
-
Damien George authored
It needs to be scanned by GC. Thanks to Daniel Campora.
-
- 21 Jan, 2015 1 commit
-
-
Damien George authored
With this patch str/bytes construction is streamlined. Always use a vstr to build a str/bytes object. If the size is known beforehand then use vstr_init_len to allocate only required memory. Otherwise use vstr_init and the vstr will grow as needed. Then use mp_obj_new_str_from_vstr to create a str/bytes object using the vstr memory. Saves code ROM: 68 bytes on stmhal, 108 bytes on bare-arm, and 336 bytes on unix x64.
-
- 01 Jan, 2015 1 commit
-
-
Damien George authored
-
- 07 Dec, 2014 1 commit
-
-
Damien George authored
Remove include of stm32f4xx_hal.h, replace by include of MICROPY_HAL_H where needed, and make it compile without float support. This makes these 3 modules much more generic and usable by other ports.
-
- 05 Dec, 2014 1 commit
-
-
Damien George authored
mp_obj_int_get_truncated is used as a "fast path" int accessor that doesn't check for overflow and returns the int truncated to the machine word size, ie mp_int_t. Use mp_obj_int_get_truncated to fix struct.pack when packing maximum word sized values. Addresses issues #779 and #998.
-
- 04 Dec, 2014 1 commit
-
-
Damien George authored
This patch overhauls the network driver interface. A generic NIC must provide a set of C-level functions to implement low-level socket control (eg socket, bind, connect, send, recv). Doing this, the network and usocket modules can then use such a NIC to implement proper socket control at the Python level. This patch also updates the CC3K and WIZNET5K drivers to conform to the new interface, and fixes some bugs in the drivers. They now work reasonably well.
-
- 29 Nov, 2014 1 commit
-
-
Damien George authored
This is just a clean-up of the code. Generated code is exactly the same.
-
- 31 Oct, 2014 1 commit
-
-
Damien George authored
-
- 30 Sep, 2014 1 commit
-
-
Damien George authored
As per issue #876, the network module is used to configure NICs (hardware modules) and configure routing. The usocket module is supposed to implement the normal Python socket module and selects the underlying NIC using routing logic. Right now the routing logic is brain dead: first-initialised, first-used. And the routing table is just a list of registered NICs. cc3k and wiznet5k work, but not at the same time due to C name clashes (to be fixed). Note that the usocket module has alias socket, so that one can import socket and it works as normal. But you can also override socket with your own module, using usocket at the backend.
-