summaryrefslogtreecommitdiff
path: root/sys/compat/linux/linux_socket.c
diff options
context:
space:
mode:
authormycroft <mycroft@NetBSD.org>1995-05-28 10:16:32 +0000
committermycroft <mycroft@NetBSD.org>1995-05-28 10:16:32 +0000
commit32659780f6d3fe65f8680bc138fa29144925b9a6 (patch)
treed57e1257a4a20b7855bf14cce7851a4f888949ec /sys/compat/linux/linux_socket.c
parent00569bf57452c50f323d6a79a388de51419d1c52 (diff)
Convert TCP socket options.
Diffstat (limited to 'sys/compat/linux/linux_socket.c')
-rw-r--r--sys/compat/linux/linux_socket.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c
index ba0682642f3..7e5c7c8603d 100644
--- a/sys/compat/linux/linux_socket.c
+++ b/sys/compat/linux/linux_socket.c
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_socket.c,v 1.5 1995/05/28 09:39:45 mycroft Exp $ */
+/* $NetBSD: linux_socket.c,v 1.6 1995/05/28 10:16:32 mycroft Exp $ */
/*
* Copyright (c) 1995 Frank van der Linden
@@ -511,8 +511,12 @@ linux_to_bsd_tcp_sockopt(lopt)
int lopt;
{
switch (lopt) {
+ case LINUX_TCP_NODELAY:
+ return TCP_NODELAY;
+ case LINUX_TCP_MAXSEG:
+ return TCP_MAXSEG;
default:
- return linux_to_bsd_ip_sockopt(lopt);
+ return -1;
}
}
@@ -525,7 +529,7 @@ linux_to_bsd_udp_sockopt(lopt)
{
switch (lopt) {
default:
- return linux_to_bsd_ip_sockopt(lopt);
+ return -1;
}
}
@@ -556,6 +560,8 @@ linux_setsockopt(p, args, retval)
SCARG(&bsa, s) = lsa.s;
SCARG(&bsa, level) = linux_to_bsd_sopt_level(lsa.level);
+ SCARG(&bsa, val) = lsa.optval;
+ SCARG(&bsa, valsize) = lsa.optlen;
switch (SCARG(&bsa, level)) {
case SOL_SOCKET:
@@ -577,8 +583,6 @@ linux_setsockopt(p, args, retval)
if (name == -1)
return EINVAL;
SCARG(&bsa, name) = name;
- SCARG(&bsa, val) = lsa.optval;
- SCARG(&bsa, valsize) = lsa.optlen;
return setsockopt(p, &bsa, retval);
}
@@ -607,6 +611,8 @@ linux_getsockopt(p, args, retval)
SCARG(&bga, s) = lga.s;
SCARG(&bga, level) = linux_to_bsd_sopt_level(lga.level);
+ SCARG(&bga, val) = lga.optval;
+ SCARG(&bga, avalsize) = lga.optlen;
switch (SCARG(&bga, level)) {
case SOL_SOCKET:
@@ -628,8 +634,6 @@ linux_getsockopt(p, args, retval)
if (name == -1)
return EINVAL;
SCARG(&bga, name) = name;
- SCARG(&bga, val) = lga.optval;
- SCARG(&bga, avalsize) = lga.optlen;
return getsockopt(p, &bga, retval);
}