summaryrefslogtreecommitdiffstats
path: root/cpukit/libnetworking/net
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2005-05-07 13:21:51 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2005-05-07 13:21:51 +0000
commitf2fe8c9b84e138f53b4ff1a0a037bed561c93a83 (patch)
treec85fb3a49c259ca0cbde5776021ef3bcc8a16944 /cpukit/libnetworking/net
parent2005-05-07 Ralf Corsepius <ralf.corsepius@rtems.org> (diff)
downloadrtems-f2fe8c9b84e138f53b4ff1a0a037bed561c93a83.tar.bz2
More partial updates from FreeBSD.
Diffstat (limited to 'cpukit/libnetworking/net')
-rw-r--r--cpukit/libnetworking/net/if_var.h27
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 */