mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
710c7e6cf6
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*.
47 lines
1.4 KiB
C
47 lines
1.4 KiB
C
/*
|
|
* Copyright (C) 2013 Freie Universität Berlin.
|
|
*
|
|
* This file is subject to the terms and conditions of the GNU Lesser
|
|
* General Public License v2.1. See the file LICENSE in the top level
|
|
* directory for more details.
|
|
*/
|
|
|
|
/**
|
|
* @{
|
|
* @file msg_help.h
|
|
* @author Oliver Gesch <oliver.gesch@googlemail.com>
|
|
*/
|
|
#ifndef MSG_HELP_H_
|
|
#define MSG_HELP_H_
|
|
|
|
#include <stdint.h>
|
|
|
|
// Function IDs
|
|
#define FID_SIXLOWIP_TCP 0
|
|
#define FID_SIXLOWIP_UDP 1
|
|
#define FID_TCP_PH 2
|
|
#define FID_UDP_PH 3
|
|
#define FID_H_PAYLOAD 4
|
|
#define FID_SOCKET_RECV 5
|
|
#define FID_SOCKET_RECV_FROM 6
|
|
#define FID_TCP_SYN_ACK 7
|
|
#define FID_SOCKET_CONNECT 8
|
|
#define FID_SOCKET_HANDLE_NEW_TCP_CON 9
|
|
#define FID_TCP_ACK 10
|
|
#define FID_SOCKET_CLOSE 11
|
|
#define FID_TCP_CHT 12
|
|
#define FID_TCP_SHELL 13
|
|
|
|
#define RETURNNOW 4000
|
|
|
|
void socket_base_block_continue_thread(void);
|
|
int socket_base_net_msg_receive(msg_t *m);
|
|
int socket_base_net_msg_reply(msg_t *m, msg_t *reply, uint16_t message);
|
|
int socket_base_net_msg_send(msg_t *m, kernel_pid_t pid, bool block, uint16_t message);
|
|
int socket_base_net_msg_send_recv(msg_t *m, msg_t *reply, kernel_pid_t pid, uint16_t message);
|
|
|
|
#endif /* MSG_HELP_H_ */
|
|
/**
|
|
* @}
|
|
*/
|