aboutsummaryrefslogtreecommitdiff
path: root/pfinet/pfinet.h
diff options
context:
space:
mode:
authorMarcus Brinkmann <marcus@gnu.org>2000-10-04 01:59:03 +0000
committerMarcus Brinkmann <marcus@gnu.org>2000-10-04 01:59:03 +0000
commit898424326fc1188384f67963ab6789f18dd57fd3 (patch)
treea4085609a66d34f0f0a59647ed236e64d3aa9bfc /pfinet/pfinet.h
parentb81d9ec23532ba8b2519ba3b8bf68fcfeb0260c5 (diff)
downloadhurd-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.h5
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 *);