31,6 → 31,10 |
*/ |
|
/** @file |
* Internet protocol interface. |
* The same interface is used for standalone remote modules as well as for bundle modules. |
* The standalone remote modules have to be compiled with the ip_remote.c source file. |
* The bundle modules with the ip.c source file. |
*/ |
|
#ifndef __NET_IP_INTERFACE_H__ |
44,9 → 48,35 |
|
#include "../structures/packet/packet.h" |
|
/** \todo |
*/ |
int ip_bind_service( services_t service, services_t me, async_client_conn_t receiver ); |
int ip_device_req( int ip_phone, device_id_t device_id, services_t service ); |
|
/** Registers the new device. |
* Registers itself as the ip packet receiver. |
* If the device uses ARP registers also the new ARP device. |
* @param ip_phone The IP module phone used for (semi)remote calls. Input parameter. |
* @param device_id The new device identifier. Input parameter. |
* @param netif The underlying device network interface layer service. Input parameter. |
* @returns EOK on success. |
* @returns ENOMEM if there is not enough memory left. |
* @returns EINVAL if the device configuration is invalid. |
* @returns ENOTSUP if the device uses IPv6. |
* @returns ENOTSUP if the device uses DHCP. |
* @returns Other error codes as defined for the net_get_device_conf_req() function. |
* @returns Other error codes as defined for the arp_device_req() function. |
*/ |
int ip_device_req( int ip_phone, device_id_t device_id, services_t netif ); |
|
/** \todo |
*/ |
int ip_send_msg( int ip_phone, device_id_t device_id, packet_t packet, services_t sender ); |
|
/** Connects to the IP module. |
* @param service The IP module service. Ignored parameter. |
* @returns The IP module phone on success. |
* @returns 0 if called by the bundle module. |
*/ |
int ip_connect_module( services_t service ); |
|
#endif |