From a619ae69bf7232647c72e13966bc4aca66a0de87 Mon Sep 17 00:00:00 2001
From: David Lawrence Ramsey <pooka109@gmail.com>
Date: Thu, 4 Mar 2004 06:33:52 +0000
Subject: [PATCH] Tom Bates' nsr-tandem-nsk port, plus a few tweaks of mine,
 take 2 (according to comments, including floss.h in nano.h does work)

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1681 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog    | 2 ++
 src/nano.c   | 4 ++--
 src/nano.h   | 8 ++++++++
 src/rcfile.c | 2 +-
 4 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3f653fd2..b1a6f5e3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -30,6 +30,8 @@ CVS code -
 	  Add function init_backup_dir() to handle relative paths
 	  correctly, use get_full_path() to get the canonical pathname,
 	  and use tail() to get the filename if get_full_path() fails.
+	- Port to the Tandem NonStop Kernel (nsr-tandem-nsk). (Tom
+	  Bates; minor tweaks by DLR)
 - files.c:
   add_open_files()
 	- Make the saving of marked status in open_files->file_flags
diff --git a/src/nano.c b/src/nano.c
index 15c1fe5e..975b25ec 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -3173,7 +3173,7 @@ int main(int argc, char *argv[])
 #if !defined(ENABLE_NANORC) && defined(DISABLE_ROOTWRAP) && !defined(DISABLE_WRAPPING)
     /* if we don't have rcfile support, we're root, and
        --disable-wrapping-as-root is used, turn wrapping off */
-    if (geteuid() == 0)
+    if (geteuid() == NANO_ROOT_UID)
 	SET(NO_WRAP);
 #endif
 
@@ -3415,7 +3415,7 @@ int main(int argc, char *argv[])
 	flags |= flags_cpy;
     }
 #if defined(DISABLE_ROOTWRAP) && !defined(DISABLE_WRAPPING)
-    else if (geteuid() == 0)
+    else if (geteuid() == NANO_ROOT_UID)
 	SET(NO_WRAP);
 #endif
 #endif /* ENABLE_NANORC */
diff --git a/src/nano.h b/src/nano.h
index 7dd25bef..5fb496b7 100644
--- a/src/nano.h
+++ b/src/nano.h
@@ -22,6 +22,14 @@
 #ifndef NANO_H
 #define NANO_H 1
 
+#ifdef __TANDEM
+/* Tandem NonStop Kernel */
+#include <floss.h>
+#define NANO_ROOT_UID 65535
+#else
+#define NANO_ROOT_UID 0
+#endif
+
 #ifdef HAVE_LIMITS_H
 #include <limits.h>
 #endif
diff --git a/src/rcfile.c b/src/rcfile.c
index dcfdb8c7..5749c288 100644
--- a/src/rcfile.c
+++ b/src/rcfile.c
@@ -678,7 +678,7 @@ void do_rcfile(void)
 #if defined(DISABLE_ROOTWRAP) && !defined(DISABLE_WRAPPING)
     /* If we've already read SYSCONFDIR/nanorc (if it's there), we're
        root, and --disable-wrapping-as-root is used, turn wrapping off */
-	if (euid == 0)
+	if (euid == NANO_ROOT_UID)
 	    SET(NO_WRAP);
 #endif
 	if ((rcstream = fopen(nanorc, "r")) == NULL) {
-- 
GitLab