From 82d0fe6b7a7384ed442b6a481ab33d442a06f5f1 Mon Sep 17 00:00:00 2001 From: Paul Burton Date: Sun, 22 Jun 2014 11:25:36 +0100 Subject: linux-user: support SO_PASSSEC setsockopt option Translate the SO_PASSSEC option to setsockopt to the host value & perform the syscall as expected, allowing use of the option by target programs. Signed-off-by: Paul Burton Signed-off-by: Riku Voipio --- linux-user/socket.h | 5 +++++ linux-user/syscall.c | 3 +++ 2 files changed, 8 insertions(+) (limited to 'linux-user') diff --git a/linux-user/socket.h b/linux-user/socket.h index ae17959..4dacae6 100644 --- a/linux-user/socket.h +++ b/linux-user/socket.h @@ -63,6 +63,7 @@ #define TARGET_SO_PEERSEC 30 #define TARGET_SO_SNDBUFFORCE 31 #define TARGET_SO_RCVBUFFORCE 33 + #define TARGET_SO_PASSSEC 34 /** sock_type - Socket types * @@ -242,6 +243,10 @@ #define TARGET_SOCK_MAX (TARGET_SOCK_PACKET + 1) #define TARGET_SOCK_TYPE_MASK 0xf /* Covers up to TARGET_SOCK_MAX-1. */ + + #define TARGET_SO_PASSSEC 31 +#else + #define TARGET_SO_PASSSEC 34 #endif /* For setsockopt(2) */ diff --git a/linux-user/syscall.c b/linux-user/syscall.c index bdc60fe..3971cb5 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -1531,6 +1531,9 @@ set_timeout: case TARGET_SO_PASSCRED: optname = SO_PASSCRED; break; + case TARGET_SO_PASSSEC: + optname = SO_PASSSEC; + break; case TARGET_SO_TIMESTAMP: optname = SO_TIMESTAMP; break; -- cgit v1.1