Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/include/inet/iplink.h

    r962f03b r417a2ba1  
    3737
    3838#include <async.h>
    39 #include <sys/types.h>
     39#include <inet/addr.h>
    4040
    4141struct iplink_ev_ops;
     
    4646} iplink_t;
    4747
    48 typedef struct {
    49         uint32_t ipv4;
    50 } iplink_addr_t;
    51 
    52 /** IP link Service Data Unit */
     48/** IPv4 link Service Data Unit */
    5349typedef struct {
    5450        /** Local source address */
    55         iplink_addr_t lsrc;
     51        addr32_t src;
    5652        /** Local destination address */
    57         iplink_addr_t ldest;
     53        addr32_t dest;
    5854        /** Serialized IP packet */
    5955        void *data;
     
    6258} iplink_sdu_t;
    6359
     60/** IPv6 link Service Data Unit */
     61typedef struct {
     62        /** Local MAC destination address */
     63        addr48_t dest;
     64        /** Serialized IP packet */
     65        void *data;
     66        /** Size of @c data in bytes */
     67        size_t size;
     68} iplink_sdu6_t;
     69
     70/** Internet link receive Service Data Unit */
     71typedef struct {
     72        /** Serialized datagram */
     73        void *data;
     74        /** Size of @c data in bytes */
     75        size_t size;
     76} iplink_recv_sdu_t;
     77
    6478typedef struct iplink_ev_ops {
    65         int (*recv)(iplink_t *, iplink_sdu_t *);
     79        int (*recv)(iplink_t *, iplink_recv_sdu_t *, ip_ver_t);
    6680} iplink_ev_ops_t;
    6781
     
    6983extern void iplink_close(iplink_t *);
    7084extern int iplink_send(iplink_t *, iplink_sdu_t *);
    71 extern int iplink_addr_add(iplink_t *, iplink_addr_t *);
    72 extern int iplink_addr_remove(iplink_t *, iplink_addr_t *);
     85extern int iplink_send6(iplink_t *, iplink_sdu6_t *);
     86extern int iplink_addr_add(iplink_t *, inet_addr_t *);
     87extern int iplink_addr_remove(iplink_t *, inet_addr_t *);
    7388extern int iplink_get_mtu(iplink_t *, size_t *);
     89extern int iplink_get_mac48(iplink_t *, addr48_t *);
    7490
    7591#endif
Note: See TracChangeset for help on using the changeset viewer.