changeset 1428:5693bddad736 HEAD

Compile even if SCM_RIGHTS isn't supported.
author Timo Sirainen <tss@iki.fi>
date Wed, 07 May 2003 15:05:01 +0300
parents 892b52f53e27
children 5166b1e09f84
files src/lib/fdpass.c
diffstat 1 files changed, 22 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/fdpass.c	Wed May 07 11:17:31 2003 +0300
+++ b/src/lib/fdpass.c	Wed May 07 15:05:01 2003 +0300
@@ -57,6 +57,8 @@
 	(CMSG_ALIGN(sizeof(struct cmsghdr)) + (len))
 #endif
 
+#ifdef SCM_RIGHTS
+
 ssize_t fd_send(int handle, int send_fd, const void *data, size_t size)
 {
         struct msghdr msg;
@@ -131,7 +133,7 @@
 	   Tru64 - msg_controllen isn't set */
 	cmsg = CMSG_FIRSTHDR(&msg);
 	if (
-#ifndef __osf__
+#ifndef __osf__ /* Tru64 */
 	    msg.msg_controllen < CMSG_SPACE(sizeof(int)) ||
 #endif
 	    cmsg == NULL || cmsg->cmsg_len < CMSG_LEN(sizeof(int)) ||
@@ -141,3 +143,22 @@
 		*fd = *((int *) CMSG_DATA(cmsg));
 	return ret;
 }
+
+#else
+#  ifdef __GNUC__
+#    warning SCM_RIGHTS not supported, privilege separation not possible
+#  endif
+ssize_t fd_send(int handle __attr_unused__, int send_fd __attr_unused__,
+		const void *data __attr_unused__, size_t size __attr_unused__)
+{
+	errno = EINVAL;
+	return -1;
+}
+
+ssize_t fd_read(int handle __attr_unused__, void *data __attr_unused__,
+		size_t size __attr_unused__, int *fd __attr_unused__)
+{
+	errno = EINVAL;
+	return -1;
+}
+#endif