Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/include/ipc/ip.h

    r64d2b10 r779a47d  
    3939#define LIBC_IP_MESSAGES_H_
    4040
     41#include <ipc/ipc.h>
    4142#include <ipc/net.h>
     43
    4244#include <net/in.h>
    4345#include <net/ip_codes.h>
     
    4547/** IP module messages. */
    4648typedef enum {
    47         /** New device message.
    48          * @see ip_device_req()
    49          */
    50         NET_IP_DEVICE = NET_IP_FIRST,
    51        
    5249        /** Adds the routing entry.
    5350         * @see ip_add_route()
    5451         */
    55         NET_IP_ADD_ROUTE,
    56        
     52        NET_IP_ADD_ROUTE = NET_IP_FIRST,
    5753        /** Gets the actual route information.
    5854         * @see ip_get_route()
    5955         */
    6056        NET_IP_GET_ROUTE,
    61        
    6257        /** Processes the received error notification.
    6358         * @see ip_received_error_msg()
    6459         */
    6560        NET_IP_RECEIVED_ERROR,
    66        
    6761        /** Sets the default gateway.
    6862         * @see ip_set_default_gateway()
    6963         */
    70         NET_IP_SET_GATEWAY,
    71        
    72         /** Packet size message.
    73          * @see ip_packet_size_req()
    74          */
    75         NET_IP_PACKET_SPACE,
    76        
    77         /** Packet send message.
    78          * @see ip_send_msg()
    79          */
    80         NET_IP_SEND
     64        NET_IP_SET_GATEWAY
    8165} ip_messages;
    8266
     
    8468/*@{*/
    8569
    86 /** Return the address message parameter.
    87  *
    88  * @param[in] call Message call structure.
    89  *
     70/** Returns the address message parameter.
     71 * @param[in] call The message call structure.
    9072 */
    9173#define IP_GET_ADDRESS(call) \
    9274        ({ \
    9375                in_addr_t addr; \
    94                 addr.s_addr = IPC_GET_ARG3(call); \
     76                addr.s_addr = IPC_GET_ARG3(*call); \
    9577                addr; \
    9678        })
    9779
    98 /** Return the gateway message parameter.
    99  *
    100  * @param[in] call Message call structure.
    101  *
     80/** Returns the gateway message parameter.
     81 * @param[in] call The message call structure.
    10282 */
    10383#define IP_GET_GATEWAY(call) \
    10484        ({ \
    10585                in_addr_t addr; \
    106                 addr.s_addr = IPC_GET_ARG2(call); \
     86                addr.s_addr = IPC_GET_ARG2(*call); \
    10787                addr; \
    10888        })
    10989
    110 /** Set the header length in the message answer.
    111  *
    112  * @param[out] answer Message answer structure.
    113  *
     90/** Sets the header length in the message answer.
     91 * @param[out] answer The message answer structure.
    11492 */
    115 #define IP_SET_HEADERLEN(answer, value)  IPC_SET_ARG2(answer, (sysarg_t) (value))
     93#define IP_SET_HEADERLEN(answer, value) \
     94        do { \
     95                ipcarg_t argument = (ipcarg_t) (value); \
     96                IPC_SET_ARG2(*answer, argument); \
     97        } while (0)
    11698
    117 /** Return the network mask message parameter.
    118  *
    119  * @param[in] call Message call structure.
    120  *
     99/** Returns the network mask message parameter.
     100 * @param[in] call The message call structure.
    121101 */
    122102#define IP_GET_NETMASK(call) \
    123103        ({ \
    124104                in_addr_t addr; \
    125                 addr.s_addr = IPC_GET_ARG4(call); \
     105                addr.s_addr = IPC_GET_ARG4(*call); \
    126106                addr; \
    127107        })
    128108
    129 /** Return the protocol message parameter.
    130  *
    131  * @param[in] call Message call structure.
    132  *
     109/** Returns the protocol message parameter.
     110 * @param[in] call The message call structure.
    133111 */
    134 #define IP_GET_PROTOCOL(call)  ((ip_protocol_t) IPC_GET_ARG1(call))
     112#define IP_GET_PROTOCOL(call) \
     113        ({ \
     114                ip_protocol_t protocol = (ip_protocol_t) IPC_GET_ARG1(*call); \
     115                protocol; \
     116        })
    135117
    136118/*@}*/
Note: See TracChangeset for help on using the changeset viewer.