/branches/network/uspace/srv/net/il/arp/arp_messages.h |
---|
31,6 → 31,8 |
*/ |
/** @file |
* ARP module messages. |
* @see arp_interface.h |
*/ |
#ifndef __NET_ARP_MESSAGES__ |
40,18 → 42,29 |
#include "../../messages.h" |
/** ARP module messages. |
*/ |
typedef enum{ |
/* ( device_id, nil_service, proto ), measured_strings_send( proto_addr ) */ |
/** New device message. |
* @see arp_device_req() |
*/ |
NET_ARP_DEVICE = NET_ARP_FIRST, |
/* ( device_id, protocol ), measured_strings_send( target ), measured_strings_return( translation ) */ |
/** Address translation message. |
* @see arp_translate_req() |
*/ |
NET_ARP_TRANSLATE, |
/* ( device_id ) */ |
/** Clear device cache message. |
* @see arp_clear_device_req() |
*/ |
NET_ARP_CLEAR_DEVICE, |
/* () */ |
/** Clean cache message. |
* @see arp_clean_cache() |
*/ |
NET_ARP_CLEAN_CACHE, |
} arp_messages; |
/** Returns the protocol service message parameter. |
* @param call The message call structure. Input parameter. |
*/ |
#define ARP_GET_NETIF( call ) ( services_t ) IPC_GET_ARG2( * call ) |
/branches/network/uspace/srv/net/il/arp/arp.c |
---|
72,9 → 72,6 |
*/ |
arp_globals_t arp_globals; |
int arp_device_req( int arp_phone, device_id_t device_id, services_t protocol, services_t netif, measured_string_ref address ); |
int arp_translate_req( int arp_phone, device_id_t device_id, services_t protocol, measured_string_ref address, measured_string_ref * translation, char ** data ); |
/** Clears the whole cache. |
* @returns EOK on success. |
*/ |
81,6 → 78,7 |
int arp_clean_cache_req( int arp_phone ); |
/** Clears the device specific data from the cache. |
* @param arp_phone The ARP module phone used for (semi)remote calls. Input parameter. |
* @param device_id The device identifier. Input parameter. |
* @returns EOK on success. |
* @returns ENOENT if the device is not found in the cache. |
/branches/network/uspace/srv/net/il/arp/arp_module.c |
---|
70,6 → 70,15 |
* @returns Other error codes as defined for the REGISTER_ME() macro function. |
*/ |
int module_start( async_client_conn_t client_connection ); |
/** Processes the ARP message. |
* @param callid The message identifier. Input parameter. |
* @param call The message parameters. Input parameter. |
* @param answer The message answer parameters. Output parameter. |
* @param answer_count The last parameter for the actual answer in the answer parameter. Output parameter. |
* @returns EOK on success. |
* @returns Other error codes as defined for the arp_message() function. |
*/ |
int module_message( ipc_callid_t callid, ipc_call_t * call, ipc_call_t * answer, int * answer_count ); |
/** ARP module global data. |
/branches/network/uspace/srv/net/il/arp/arp_module.h |
---|
51,9 → 51,9 |
* @param call The message parameters. Input parameter. |
* @param answer The message answer parameters. Output parameter. |
* @param answer_count The last parameter for the actual answer in the answer parameter. Output parameter. |
* \todo all possible message returns? |
* @returns EOK on success. |
* @returns ENOTSUP if the message is not known. |
* @see arp_interface.h |
* @see IS_NET_ARP_MESSAGE() |
*/ |
int arp_message( ipc_callid_t callid, ipc_call_t * call, ipc_call_t * answer, int * answer_count ); |
/branches/network/uspace/srv/net/il/arp/arp_remote.c |
---|
31,6 → 31,8 |
*/ |
/** @file |
* ARP interface implementation for standalone remote modules. |
* @see arp_interface.h |
*/ |
#include <async.h> |