Ignore:
Timestamp:
2010-03-30T18:39:04Z (15 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7553689
Parents:
7d6fe4db
Message:

Networking work:
Split the networking stack into end-user library (libsocket) and two helper libraries (libnet and libnetif).
Don't use over-the-hand compiling and linking, but rather separation of conserns.
There might be still some issues and the non-modular networking architecture is currently broken, but this will be fixed soon.

File:
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/include/ip_interface.h

    r7d6fe4db r849ed54  
    4242
    4343#include <async.h>
    44 
    4544#include <ipc/services.h>
    4645
    47 #include "../include/device.h"
     46#include <net_device.h>
     47#include <packet/packet.h>
    4848
    49 #include "../structures/packet/packet.h"
    50 
    51 #include "in.h"
    52 #include "ip_codes.h"
    53 #include "socket_codes.h"
     49#include <in.h>
     50#include <ip_codes.h>
     51#include <socket_codes.h>
    5452
    5553/** @name IP module interface
     
    8280 *  @returns Other error codes as defined for the bind_service() function.
    8381 */
    84 int ip_bind_service(services_t service, int protocol, services_t me, async_client_conn_t receiver, tl_received_msg_t tl_received_msg);
     82extern int ip_bind_service(services_t service, int protocol, services_t me, async_client_conn_t receiver, tl_received_msg_t tl_received_msg);
    8583
    8684/** Registers the new device.
     
    9896 *  @returns Other error codes as defined for the arp_device_req() function.
    9997 */
    100 int ip_device_req(int ip_phone, device_id_t device_id, services_t netif);
     98extern int ip_device_req(int ip_phone, device_id_t device_id, services_t netif);
    10199
    102100/** Sends the packet queue.
     
    110108 *  @returns Other error codes as defined for the generic_send_msg() function.
    111109 */
    112 int ip_send_msg(int ip_phone, device_id_t device_id, packet_t packet, services_t sender, services_t error);
     110extern int ip_send_msg(int ip_phone, device_id_t device_id, packet_t packet, services_t sender, services_t error);
    113111
    114112/** Connects to the IP module.
     
    117115 *  @returns 0 if called by the bundle module.
    118116 */
    119 int ip_connect_module(services_t service);
     117extern int ip_connect_module(services_t service);
    120118
    121119/** Adds a route to the device routing table.
     
    127125 *  @param[in] gateway The target network gateway. Not used if zero.
    128126 */
    129 int ip_add_route_req(int ip_phone, device_id_t device_id, in_addr_t address, in_addr_t netmask, in_addr_t gateway);
     127extern int ip_add_route_req(int ip_phone, device_id_t device_id, in_addr_t address, in_addr_t netmask, in_addr_t gateway);
    130128
    131129/** Sets the default gateway.
     
    135133 *  @param[in] gateway The default gateway.
    136134 */
    137 int ip_set_gateway_req(int ip_phone, device_id_t device_id, in_addr_t gateway);
     135extern int ip_set_gateway_req(int ip_phone, device_id_t device_id, in_addr_t gateway);
    138136
    139137/** Returns the device packet dimension for sending.
     
    145143 *  @returns Other error codes as defined for the generic_packet_size_req() function.
    146144 */
    147 int ip_packet_size_req(int ip_phone, device_id_t device_id, packet_dimension_ref packet_dimension);
     145extern int ip_packet_size_req(int ip_phone, device_id_t device_id, packet_dimension_ref packet_dimension);
    148146
    149147/** Notifies the IP module about the received error notification packet.
     
    155153 *  @returns EOK on success.
    156154 */
    157 int ip_received_error_msg(int ip_phone, device_id_t device_id, packet_t packet, services_t target, services_t error);
     155extern int ip_received_error_msg(int ip_phone, device_id_t device_id, packet_t packet, services_t target, services_t error);
    158156
    159157/** Returns the device identifier and the IP pseudo header based on the destination address.
     
    166164 *  @param[out] headerlen The IP pseudo header length.
    167165 */
    168 int ip_get_route_req(int ip_phone, ip_protocol_t protocol, const struct sockaddr * destination, socklen_t addrlen, device_id_t * device_id, ip_pseudo_header_ref * header, size_t * headerlen);
     166extern int ip_get_route_req(int ip_phone, ip_protocol_t protocol, const struct sockaddr * destination, socklen_t addrlen, device_id_t * device_id, ip_pseudo_header_ref * header, size_t * headerlen);
    169167
    170168/*@}*/
Note: See TracChangeset for help on using the changeset viewer.