diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2005-05-07 13:21:51 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2005-05-07 13:21:51 +0000 |
commit | f2fe8c9b84e138f53b4ff1a0a037bed561c93a83 (patch) | |
tree | c85fb3a49c259ca0cbde5776021ef3bcc8a16944 /cpukit | |
parent | 2005-05-07 Ralf Corsepius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-f2fe8c9b84e138f53b4ff1a0a037bed561c93a83.tar.bz2 |
More partial updates from FreeBSD.
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/libnetworking/net/if_var.h | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/cpukit/libnetworking/net/if_var.h b/cpukit/libnetworking/net/if_var.h index afa0492382..f4da01d2ba 100644 --- a/cpukit/libnetworking/net/if_var.h +++ b/cpukit/libnetworking/net/if_var.h @@ -38,6 +38,31 @@ #define _NET_IF_VAR_H_ /* + * Structures defining a network interface, providing a packet + * transport mechanism (ala level 0 of the PUP protocols). + * + * Each interface accepts output datagrams of a specified maximum + * length, and provides higher level routines with input datagrams + * received from its medium. + * + * Output occurs when the routine if_output is called, with three parameters: + * (*ifp->if_output)(ifp, m, dst, rt) + * Here m is the mbuf chain to be sent and dst is the destination address. + * The output routine encapsulates the supplied datagram if necessary, + * and then transmits it on its medium. + * + * On input, each interface unwraps the data received by it, and either + * places it on the input queue of an internetwork datagram routine + * and posts the associated software interrupt, or passes the datagram to a raw + * packet input routine. + * + * Routines exist for locating interfaces by their addresses + * or for locating an interface on a certain network, as well as more general + * routing and gateway routines maintaining information used to locate + * interfaces. These routines live in the files if.c and route.c + */ + +/* * Forward structure declarations for function prototypes [sic]. */ struct mbuf; @@ -89,8 +114,6 @@ struct ifnet { struct rtentry *); void (*if_start) /* initiate output routine */ (struct ifnet *); - int (*if_done) /* output complete routine */ - (struct ifnet *); /* (XXX not used; fake prototype) */ int (*if_ioctl) /* ioctl routine */ (struct ifnet *, u_long, caddr_t); void (*if_watchdog) /* timer routine */ |