]> andersk Git - openssh.git/commitdiff
- (dtucker) Bug #544: ignore invalid cmsg_type on Linux 2.0 kernels,
authordtucker <dtucker>
Fri, 2 May 2003 10:48:21 +0000 (10:48 +0000)
committerdtucker <dtucker>
Fri, 2 May 2003 10:48:21 +0000 (10:48 +0000)
   privsep should now work.

ChangeLog
acconfig.h
configure.ac
monitor_fdpass.c

index c6ad9d4b451869411979382ce760a7dfb9da4253..6221d0ef0d84fa1267510c0014f0f7522e75d780 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+20030502
+ - (dtucker) Bug #544: ignore invalid cmsg_type on Linux 2.0 kernels,
+   privsep should now work.
+
 20030429
  - (djm) Add back radix.o (used by AFS support), after it went missing from
    Makefile many moons ago
index 3b919d553ea67e1292492fea708d0b809cf953e4..b4a7955d30e40c43c9e62f9cb348f8816df4ec5d 100644 (file)
 /* Pushing STREAMS modules incorrectly acquires a controlling TTY */
 #undef STREAMS_PUSH_ACQUIRES_CTTY
 
+/* Define if cmsg_type is not passed correctly */
+#undef BROKEN_CMSG_TYPE
+
 @BOTTOM@
 
 /* ******************* Shouldn't need to edit below this line ************** */
index dfd87c9d07745eea01af92d63d6e716920851e56..c269b7fde8a5760c59ae47d0f260aed1be2ee024 100644 (file)
@@ -188,6 +188,16 @@ main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16))
        AC_DEFINE(SETPROCTITLE_STRATEGY,PS_USE_CLOBBER_ARGV)
        AC_DEFINE(SETPROCTITLE_PS_PADDING, '\0')
        inet6_default_4in6=yes
+       AC_MSG_CHECKING(for broken cmsg_type)
+       case `uname -r` in
+       2.0.*)
+               AC_MSG_RESULT(yes)
+               AC_DEFINE(BROKEN_CMSG_TYPE)
+               ;;
+       *)
+               AC_MSG_RESULT(no)
+               ;;
+       esac
        ;;
 mips-sony-bsd|mips-sony-newsos4)
        AC_DEFINE(HAVE_NEWS4)
index 641ce721ef514b0fe85b900df5944258977a2d67..22b7882bd729f963f0df3c84dcdc2f93f4876c93 100644 (file)
@@ -113,9 +113,11 @@ mm_receive_fd(int socket)
                fatal("%s: no fd", __func__);
 #else
        cmsg = CMSG_FIRSTHDR(&msg);
+#ifndef BROKEN_CMSG_TYPE
        if (cmsg->cmsg_type != SCM_RIGHTS)
                fatal("%s: expected type %d got %d", __func__,
                    SCM_RIGHTS, cmsg->cmsg_type);
+#endif
        fd = (*(int *)CMSG_DATA(cmsg));
 #endif
        return fd;
This page took 0.297486 seconds and 5 git commands to generate.