john hood <cg...@glup.org> writes:

> Hi all,
>
> I'm pleased to announce a release candidate for Mosh 1.3.0.  We have
> brought you mostly bugfixes and release engineering improvements-- the
> version number jump is because we have switched to semantic versioning
> (<http://semver.org/>).  The changes mostly address regressions in the
> previous release, CPU usage in certain scenarios, and platform/port issues.

As already reported by Dan Chen in this thread, mosh-1.3.0-rc2 works
fine on OpenBSD-current, both amd64 and armv7.

A few days ago, a change happened in OpenBSD.  The "ioctl" promise was
removed from pledge(2) on 2017/03/18.  This means that this code:

#ifdef HAVE_PLEDGE
  /* OpenBSD pledge() syscall */
  if ( pledge( "stdio inet ioctl tty", NULL )) {
    perror( "pledge() failed" );
    exit( 1 );
  }
#endif

now errors out.

pledge("ioctl") is deprecated since some time already; this removal will
end up in the upcoming OpenBSD 6.1 release.

mosh-client and mosh-server seem to work fine here with just
"stdio inet tty".  Patch attached.


From 748baa199737826aec291392ec019f6c7cf3b750 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Courr=C3=A8ges-Anglas?= <j...@wxcvbn.org>
Date: Mon, 20 Mar 2017 11:22:55 +0100
Subject: [PATCH] Remove deprecated pledge("ioctl")

Unbreaks mosh on recent (> 2017/03/18) OpenBSD systems.
---
 src/frontend/mosh-server.cc | 2 +-
 src/frontend/stmclient.cc   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/frontend/mosh-server.cc b/src/frontend/mosh-server.cc
index d040a18..e95ace8 100644
--- a/src/frontend/mosh-server.cc
+++ b/src/frontend/mosh-server.cc
@@ -577,7 +577,7 @@ static int run_server( const char *desired_ip, const char *desired_port,
     /* Drop unnecessary privileges */
 #ifdef HAVE_PLEDGE
     /* OpenBSD pledge() syscall */
-    if ( pledge( "stdio inet ioctl tty", NULL )) {
+    if ( pledge( "stdio inet tty", NULL )) {
       perror( "pledge() failed" );
       exit( 1 );
     }
diff --git a/src/frontend/stmclient.cc b/src/frontend/stmclient.cc
index 10d2fdd..8523f9c 100644
--- a/src/frontend/stmclient.cc
+++ b/src/frontend/stmclient.cc
@@ -415,7 +415,7 @@ bool STMClient::main( void )
   /* Drop unnecessary privileges */
 #ifdef HAVE_PLEDGE
   /* OpenBSD pledge() syscall */
-  if ( pledge( "stdio inet ioctl tty", NULL )) {
+  if ( pledge( "stdio inet tty", NULL )) {
     perror( "pledge() failed" );
     exit( 1 );
   }
-- 
2.12.0

-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Attachment: signature.asc
Description: PGP signature

_______________________________________________
mosh-devel mailing list
mosh-devel@mit.edu
http://mailman.mit.edu/mailman/listinfo/mosh-devel

Reply via email to