Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Jun 2004 14:40:41 +0200
From:      Poul-Henning Kamp <phk@phk.freebsd.dk>
To:        current@freebsd.org
Subject:   TEST/REVIEW: minor improvement to linux-o-lator
Message-ID:  <2323.1088599241@critter.freebsd.dk>

next in thread | raw e-mail | index | archive | help

While digging through the COMPAT_* tangle, I found a couple of
cases where we could wean the linux-o-lators from COMPAT_43:


Index: compat/linux/linux_socket.c
===================================================================
RCS file: /home/ncvs/src/sys/compat/linux/linux_socket.c,v
retrieving revision 1.45
diff -u -r1.45 linux_socket.c
--- compat/linux/linux_socket.c	25 Dec 2003 09:59:02 -0000	1.45
+++ compat/linux/linux_socket.c	30 Jun 2004 12:21:10 -0000
@@ -855,11 +855,13 @@
 linux_send(struct thread *td, struct linux_send_args *args)
 {
 	struct linux_send_args linux_args;
-	struct osend_args /* {
+	struct sendto_args /* {
 		int s;
 		caddr_t buf;
 		int len;
 		int flags;
+		caddr_t to;
+		int tolen;
 	} */ bsd_args;
 	int error;
 
@@ -870,7 +872,9 @@
 	bsd_args.buf = linux_args.msg;
 	bsd_args.len = linux_args.len;
 	bsd_args.flags = linux_args.flags;
-	return (osend(td, &bsd_args));
+	bsd_args.to = NULL;
+	bsd_args.tolen = 0
+	return (sendto(td, &bsd_args));
 }
 
 struct linux_recv_args {
@@ -889,6 +893,8 @@
 		caddr_t buf;
 		int len;
 		int flags;
+		struct sockaddr *from;
+		socklen_t fromlenaddr;
 	} */ bsd_args;
 	int error;
 
@@ -899,7 +905,9 @@
 	bsd_args.buf = linux_args.msg;
 	bsd_args.len = linux_args.len;
 	bsd_args.flags = linux_args.flags;
-	return (orecv(td, &bsd_args));
+	bsd_args.from = NULL;
+	bsd_args.fromlenaddr = 0;
+	return (recvfrom(td, &bsd_args));
 }
 
 static int
-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2323.1088599241>