diff options
author | Marcus Brinkmann <marcus@gnu.org> | 2000-10-04 01:59:03 +0000 |
---|---|---|
committer | Marcus Brinkmann <marcus@gnu.org> | 2000-10-04 01:59:03 +0000 |
commit | 898424326fc1188384f67963ab6789f18dd57fd3 (patch) | |
tree | a4085609a66d34f0f0a59647ed236e64d3aa9bfc /pfinet/pfinet.h | |
parent | b81d9ec23532ba8b2519ba3b8bf68fcfeb0260c5 (diff) | |
download | hurd-898424326fc1188384f67963ab6789f18dd57fd3.tar.gz hurd-898424326fc1188384f67963ab6789f18dd57fd3.tar.bz2 hurd-898424326fc1188384f67963ab6789f18dd57fd3.zip |
2000-10-04 Marcus Brinkmann <marcus@gnu.org>
* Makefile (SRCS): Add dummy.c
* dummy.c: New file.
* ethernet.c: Moved ETHER_PORT, READPT, READPTNAME to ...
(struct ether_device): ... here. New struct. ETHER_DEV is now a
pointer to a struct ether_device.
(ethernet_demuxer): New variables edev, dev. Iterate over linked
list ETHER_DEV to find correct readptname. Use dev instead
ETHER_DEV for socket buffer manipulation.
(ethernet_open): New variable edev. Use dev->priv to find correct
edev. Use members of edev instead global variables.
(ethernet_xmit): New variable edev. Use dev->priv to find correct
edev.Use member of edev instead global variable ETHER_PORT.
(setup_ethernet_device): New output argument DEVICE. New
variables edev and dev. Allocate memory for edev, add it to the
head of ETHER_DEV. Use dev instead ETHER_DEV. Use members of edev
instead global variables.
* main.c: ALREADY_OPEN removed.
(find_device): Fix comment. Redone to work with multiple devices
by iterating over DEV_BASE.
(enumerate_device): Likewise.
* pfinet.h: Add new argument to prototype of
setup_ethernet_device. Add prototype for setup_dummy_device.
Remove prototype for ETHER_DEV. Add prototype for DEV_BASE.
Diffstat (limited to 'pfinet/pfinet.h')
-rw-r--r-- | pfinet/pfinet.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/pfinet/pfinet.h b/pfinet/pfinet.h index 35c76570..2352be70 100644 --- a/pfinet/pfinet.h +++ b/pfinet/pfinet.h @@ -36,7 +36,7 @@ struct port_class *socketport_class; mach_port_t fsys_identity; -extern struct device ether_dev; +extern struct device *dev_base; extern struct device loopback_dev; /* A port on SOCK. Multiple sock_user's can point to the same socket. */ @@ -56,7 +56,8 @@ struct sock_addr void ethernet_initialize (void); int ethernet_demuxer (mach_msg_header_t *, mach_msg_header_t *); -void setup_ethernet_device (char *); +void setup_ethernet_device (char *, struct device **); +void setup_dummy_device (char *, struct device **); struct sock_user *make_sock_user (struct socket *, int, int, int); error_t make_sockaddr_port (struct socket *, int, mach_port_t *, mach_msg_type_name_t *); |