1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
RIOT/sys
Cenk Gündoğan 710c7e6cf6 transport_layer: Splitting UDP and TCP
Currently, the tcp and udp implementations are bound to each other in a
module called *destiny*. Thus, when using only one of them then the
other one gets also compiled into the binary and initialized,
which results in unnecessary RAM usage and workload for the CPU.

The approach in this PR defines a common module named *socket_base*,
which contains functions used by the posix layer. Compiled by it's own,
those functions return negative error codes, to symbolize upper layers
that they are not supported. When also including the modules *udp* or
*tcp* respectively, functions from *socket_base* get overwritten with the
correct functionality.

Defining *udp* or *tcp* in a Makefile also includes *socket_base*.
Defining *pnet* in a Makefile also includes *socket_base*.
2014-09-11 20:07:46 +02:00
..
auto_init transport_layer: Splitting UDP and TCP 2014-09-11 20:07:46 +02:00
bloom doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
cbor Merge pull request #1616 from krf/fix-warnings 2014-08-27 19:38:27 +02:00
color sys: added color module 2014-06-22 13:53:01 +02:00
config doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
crypto fix license headers in non-.c files 2014-08-23 16:16:26 +02:00
hashes doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
include sys: vtimer: add license header 2014-09-03 14:18:11 +02:00
lib sys: remove lib/hashtable.c 2014-08-13 21:21:39 +02:00
net transport_layer: Splitting UDP and TCP 2014-09-11 20:07:46 +02:00
oneway-malloc fix license headers in non-.c files 2014-08-23 16:16:26 +02:00
ping doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
pipe tests: blacklist failing test on arduino-mega2560 2014-08-27 17:47:24 +02:00
posix transport_layer: Splitting UDP and TCP 2014-09-11 20:07:46 +02:00
ps core: introduce KERNEL_PID_FIRST and KERNEL_PID_LAST 2014-08-17 19:50:34 +02:00
quad_math make: detect their module name automatically 2014-06-17 15:49:32 +02:00
random make: detect their module name automatically 2014-06-17 15:49:32 +02:00
shell make kernel_pid_t comparisons consistent 2014-08-07 16:31:27 +02:00
timex doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
transceiver transceiver: fix check for existence 2014-08-22 18:34:42 +02:00
uart0 initialize kernel_pid_t correctly 2014-08-07 16:31:27 +02:00
vtimer vtimer: no needless type casting 2014-09-07 22:06:05 +02:00
chardev_thread.c core: renamed KERNEL_PID_NULL to KERNEL_PID_UNDEF 2014-08-07 16:31:27 +02:00
doc.txt fix license headers in non-.c files 2014-08-23 16:16:26 +02:00
Makefile transport_layer: Splitting UDP and TCP 2014-09-11 20:07:46 +02:00
Makefile.include transport_layer: Splitting UDP and TCP 2014-09-11 20:07:46 +02:00