aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/admin.scm7
-rw-r--r--gnu/packages/patches/inetutils-hurd.patch583
3 files changed, 4 insertions, 589 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 8a31bfef64..21250c2d7b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
@@ -1180,7 +1180,6 @@ dist_patch_DATA = \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/idris-disable-test.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
- %D%/packages/patches/inetutils-hurd.patch \
%D%/packages/patches/inkscape-poppler-0.76.patch \
%D%/packages/patches/intel-xed-fix-nondeterminism.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index a6cf633baa..4bc08f83f0 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2015, 2016, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2020 Eric Bavier <bavier@posteo.net>
@@ -612,15 +612,14 @@ re-executing them as necessary.")
(define-public inetutils
(package
(name "inetutils")
- (version "1.9.4")
+ (version "2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/inetutils/inetutils-"
version ".tar.gz"))
- (patches (search-patches "inetutils-hurd.patch"))
(sha256
(base32
- "05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy"))))
+ "0j1nb69bhg29cm4xkqqjh2ln1zqcj2lnpm92v638lpwrs11dypxl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--localstatedir=/var"
diff --git a/gnu/packages/patches/inetutils-hurd.patch b/gnu/packages/patches/inetutils-hurd.patch
deleted file mode 100644
index bd65c4feb1..0000000000
--- a/gnu/packages/patches/inetutils-hurd.patch
+++ /dev/null
@@ -1,583 +0,0 @@
-Support compiling on the Hurd.
-
-Taken from https://git.hadrons.org/cgit/debian/pkgs/inetutils.git/tree/debian/patches/0002-ifconfig-Improve-the-support-for-GNU-Hurd.patch
-
-From 9a90d9b9119906df23cb2db1503cb0f099942dd9 Mon Sep 17 00:00:00 2001
-From: Mats Erik Andersson <gnu@gisladisker.se>
-Date: Sat, 18 Jul 2015 01:12:41 +0200
-Subject: [PATCH 02/35] ifconfig: Improve the support for GNU/Hurd.
-
-Use system specific code instead of generic code.
-This provides abilities similar to other systems.
----
- ChangeLog | 17 +++
- ifconfig/system.c | 10 +-
- ifconfig/system.h | 2 +
- ifconfig/system/Makefile.am | 4 +-
- ifconfig/system/generic.c | 14 +-
- ifconfig/system/hurd.c | 292 ++++++++++++++++++++++++++++++++++++
- ifconfig/system/hurd.h | 50 ++++++
- 7 files changed, 381 insertions(+), 8 deletions(-)
- create mode 100644 ifconfig/system/hurd.c
- create mode 100644 ifconfig/system/hurd.h
-
-diff --git a/ifconfig/system.c b/ifconfig/system.c
-index 30677e41..e108dc2e 100644
---- a/ifconfig/system.c
-+++ b/ifconfig/system.c
-@@ -25,10 +25,12 @@
- # include "system/solaris.c"
- #elif defined __QNX__
- # include "system/qnx.c"
--# elif defined __DragonFly__ || defined __FreeBSD__ || \
-- defined __FreeBSD_kernel__ || \
-- defined __NetBSD__ || defined __OpenBSD__
--# include "system/bsd.c"
-+#elif defined __DragonFly__ || defined __FreeBSD__ || \
-+ defined __FreeBSD_kernel__ || \
-+ defined __NetBSD__ || defined __OpenBSD__
-+# include "system/bsd.c"
-+#elif defined __GNU__
-+# include "system/hurd.c"
- #else
- # include "system/generic.c"
- #endif
-diff --git a/ifconfig/system.h b/ifconfig/system.h
-index 8521ad95..66878d3a 100644
---- a/ifconfig/system.h
-+++ b/ifconfig/system.h
-@@ -97,6 +97,8 @@ extern struct if_nameindex* (*system_if_nameindex) (void);
- defined __FreeBSD_kernel__ || \
- defined __NetBSD__ || defined __OpenBSD__
- # include "system/bsd.h"
-+# elif defined __GNU__
-+# include "system/hurd.h"
- # else
- # include "system/generic.h"
- # endif
-diff --git a/ifconfig/system/Makefile.am b/ifconfig/system/Makefile.am
-index 954c6774..62a9f1c4 100644
---- a/ifconfig/system/Makefile.am
-+++ b/ifconfig/system/Makefile.am
-@@ -26,8 +26,10 @@ noinst_HEADERS = \
- linux.h \
- solaris.h \
- qnx.h \
-+ hurd.h \
- bsd.c \
- generic.c \
- linux.c \
- solaris.c \
-- qnx.c
-+ qnx.c \
-+ hurd.c
-diff --git a/ifconfig/system/generic.c b/ifconfig/system/generic.c
-index 9a2bda55..20a78bde 100644
---- a/ifconfig/system/generic.c
-+++ b/ifconfig/system/generic.c
-@@ -22,6 +22,8 @@
- #include <config.h>
-
- #include "../ifconfig.h"
-+
-+#include <unused-parameter.h>
-
-
- /* Output format stuff. */
-@@ -36,19 +38,25 @@ const char *system_help;
- struct argp_child system_argp_child;
-
- int
--system_parse_opt (struct ifconfig **ifp, char option, char *optarg)
-+system_parse_opt (struct ifconfig **ifp _GL_UNUSED_PARAMETER,
-+ char option _GL_UNUSED_PARAMETER,
-+ char *optarg _GL_UNUSED_PARAMETER)
- {
- return 0;
- }
-
- int
--system_parse_opt_rest (struct ifconfig **ifp, int argc, char *argv[])
-+system_parse_opt_rest (struct ifconfig **ifp _GL_UNUSED_PARAMETER,
-+ int argc _GL_UNUSED_PARAMETER,
-+ char *argv[] _GL_UNUSED_PARAMETER)
- {
- return 0;
- }
-
- int
--system_configure (int sfd, struct ifreq *ifr, struct system_ifconfig *ifs)
-+system_configure (int sfd _GL_UNUSED_PARAMETER,
-+ struct ifreq *ifr _GL_UNUSED_PARAMETER,
-+ struct system_ifconfig *ifs _GL_UNUSED_PARAMETER)
- {
- return 0;
- }
-diff --git a/ifconfig/system/hurd.c b/ifconfig/system/hurd.c
-new file mode 100644
-index 00000000..3bd19775
---- /dev/null
-+++ b/ifconfig/system/hurd.c
-@@ -0,0 +1,292 @@
-+/* hurd.c -- Code for ifconfig specific to GNU/Hurd.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+
-+ This file is part of GNU Inetutils.
-+
-+ GNU Inetutils is free software: you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation, either version 3 of the License, or (at
-+ your option) any later version.
-+
-+ GNU Inetutils is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see `http://www.gnu.org/licenses/'. */
-+
-+/* Mostly written by Marcus Brinkmann.
-+ Adaptions to GNU/Hurd by Mats Erik Andersson. */
-+
-+#include <config.h>
-+
-+#include <stdlib.h>
-+#include <sys/ioctl.h>
-+#include <net/if_arp.h>
-+#include "../ifconfig.h"
-+
-+#include <unused-parameter.h>
-+
-+
-+/* Output format stuff. */
-+
-+const char *system_default_format = "gnu";
-+
-+
-+/* Argument parsing stuff. */
-+
-+const char *system_help = "NAME [ADDR]\
-+ [broadcast BRDADDR] [netmask MASK]\
-+ [mtu N] [up|down] [FLAGS]";
-+
-+struct argp_child system_argp_child;
-+
-+int
-+system_parse_opt (struct ifconfig **ifp _GL_UNUSED_PARAMETER,
-+ char option _GL_UNUSED_PARAMETER,
-+ char *optarg _GL_UNUSED_PARAMETER)
-+{
-+ return 0;
-+}
-+
-+int
-+system_parse_opt_rest (struct ifconfig **ifp, int argc, char *argv[])
-+{
-+ int i = 0, mask, rev;
-+ enum {
-+ EXPECT_NOTHING,
-+ EXPECT_AF,
-+ EXPECT_BROADCAST,
-+ EXPECT_NETMASK,
-+ EXPECT_METRIC,
-+ EXPECT_MTU
-+ } expect = EXPECT_AF;
-+
-+ *ifp = parse_opt_new_ifs (argv[0]);
-+
-+ while (++i < argc)
-+ {
-+ switch (expect)
-+ {
-+ case EXPECT_BROADCAST:
-+ parse_opt_set_brdaddr (*ifp, argv[i]);
-+ break;
-+
-+ case EXPECT_NETMASK:
-+ parse_opt_set_netmask (*ifp, argv[i]);
-+ break;
-+
-+ case EXPECT_MTU:
-+ parse_opt_set_mtu (*ifp, argv[i]);
-+ break;
-+
-+ /* XXX: 2015-07-18, GNU/Hurd does not yet support
-+ ioctl(SIOCSIFMETRIC), but we let the code
-+ handle this standard ability anyway!
-+ */
-+ case EXPECT_METRIC:
-+ parse_opt_set_metric (*ifp, argv[i]);
-+ break;
-+
-+ case EXPECT_AF:
-+ expect = EXPECT_NOTHING;
-+ if (!strcmp (argv[i], "inet"))
-+ continue;
-+ else if (!strcmp (argv[i], "inet6"))
-+ {
-+ error (0, 0, "%s is not a supported address family", argv[i]);
-+ return 0;
-+ }
-+ break;
-+
-+ case EXPECT_NOTHING:
-+ break;
-+ }
-+
-+ if (expect != EXPECT_NOTHING)
-+ expect = EXPECT_NOTHING;
-+ else if (!strcmp (argv[i], "broadcast"))
-+ expect = EXPECT_BROADCAST;
-+ else if (!strcmp (argv[i], "netmask"))
-+ expect = EXPECT_NETMASK;
-+ else if (!strcmp (argv[i], "metric"))
-+ expect = EXPECT_METRIC;
-+ else if (!strcmp (argv[i], "mtu"))
-+ expect = EXPECT_MTU;
-+ else if (!strcmp (argv[i], "up"))
-+ parse_opt_set_flag (*ifp, IFF_UP | IFF_RUNNING, 0);
-+ else if (!strcmp (argv[i], "down"))
-+ parse_opt_set_flag (*ifp, IFF_UP, 1);
-+ else if (((mask = if_nameztoflag (argv[i], &rev))
-+ & ~IU_IFF_CANTCHANGE) != 0)
-+ parse_opt_set_flag (*ifp, mask, rev);
-+ else
-+ {
-+ if (!((*ifp)->valid & IF_VALID_ADDR))
-+ parse_opt_set_address (*ifp, argv[i]);
-+ else if (!((*ifp)->valid & IF_VALID_DSTADDR))
-+ parse_opt_set_dstaddr (*ifp, argv[i]);
-+ }
-+ }
-+
-+ switch (expect)
-+ {
-+ case EXPECT_BROADCAST:
-+ error (0, 0, "option `broadcast' requires an argument");
-+ break;
-+
-+ case EXPECT_NETMASK:
-+ error (0, 0, "option `netmask' requires an argument");
-+ break;
-+
-+ case EXPECT_METRIC:
-+ error (0, 0, "option `metric' requires an argument");
-+ break;
-+
-+ case EXPECT_MTU:
-+ error (0, 0, "option `mtu' requires an argument");
-+ break;
-+
-+ case EXPECT_AF:
-+ case EXPECT_NOTHING:
-+ return 1;
-+ }
-+
-+ return 0;
-+}
-+
-+int
-+system_configure (int sfd _GL_UNUSED_PARAMETER,
-+ struct ifreq *ifr _GL_UNUSED_PARAMETER,
-+ struct system_ifconfig *ifs _GL_UNUSED_PARAMETER)
-+{
-+ return 0;
-+}
-+
-+struct if_nameindex* (*system_if_nameindex) (void) = if_nameindex;
-+
-+static void
-+print_hwaddr_ether (format_data_t form _GL_UNUSED_PARAMETER,
-+ unsigned char *data)
-+{
-+ *column += printf ("%02X:%02X:%02X:%02X:%02X:%02X",
-+ data[0], data[1], data[2], data[3], data[4], data[5]);
-+ had_output = 1;
-+}
-+
-+struct arphrd_symbol
-+{
-+ const char *name;
-+ const char *title;
-+ int value;
-+ void (*print_hwaddr) (format_data_t form, unsigned char *data);
-+} arphrd_symbols[] =
-+ {
-+#ifdef ARPHRD_ETHER /* Ethernet 10/100Mbps. */
-+ { "ETHER", "Ethernet", ARPHRD_ETHER, print_hwaddr_ether},
-+#endif
-+#ifdef ARPHRD_LOOPBACK /* Loopback device. */
-+ { "LOOPBACK", "Local Loopback", ARPHRD_LOOPBACK, NULL},
-+#endif
-+ /* XXX: The image debian-hurd-20150424 returns the value 4
-+ instead of expected ARPHRD_LOOPBACK. This has been
-+ discussed in the list debian-hurd, where I was asked
-+ to resist the temptation of a work around!
-+ */
-+ { NULL, NULL, 0, NULL}
-+ };
-+
-+struct arphrd_symbol *
-+arphrd_findvalue (int value)
-+{
-+ struct arphrd_symbol *arp = arphrd_symbols;
-+ while (arp->name != NULL)
-+ {
-+ if (arp->value == value)
-+ break;
-+ arp++;
-+ }
-+ if (arp->name)
-+ return arp;
-+ else
-+ return NULL;
-+}
-+
-+void
-+system_fh_hwaddr_query (format_data_t form, int argc, char *argv[])
-+{
-+#ifdef SIOCGIFHWADDR
-+ struct arphrd_symbol *arp;
-+
-+ if (ioctl (form->sfd, SIOCGIFHWADDR, form->ifr) < 0)
-+ select_arg (form, argc, argv, 1);
-+
-+ arp = arphrd_findvalue (form->ifr->ifr_hwaddr.sa_family);
-+ select_arg (form, argc, argv, (arp && arp->print_hwaddr) ? 0 : 1);
-+#else
-+ select_arg (form, argc, argv, 1);
-+#endif
-+}
-+
-+void
-+system_fh_hwaddr (format_data_t form, int argc _GL_UNUSED_PARAMETER,
-+ char *argv[] _GL_UNUSED_PARAMETER)
-+{
-+#ifdef SIOCGIFHWADDR
-+ if (ioctl (form->sfd, SIOCGIFHWADDR, form->ifr) < 0)
-+ error (EXIT_FAILURE, errno,
-+ "SIOCGIFHWADDR failed for interface `%s'",
-+ form->ifr->ifr_name);
-+ else
-+ {
-+ struct arphrd_symbol *arp;
-+
-+ arp = arphrd_findvalue (form->ifr->ifr_hwaddr.sa_family);
-+ if (arp && arp->print_hwaddr)
-+ arp->print_hwaddr (form,
-+ (unsigned char *) form->ifr->ifr_hwaddr.sa_data);
-+ else
-+ put_string (form, "(hwaddr unknown)");
-+ }
-+#else
-+ *column += printf ("(not available)");
-+ had_output = 1;
-+#endif
-+}
-+
-+void
-+system_fh_hwtype_query (format_data_t form, int argc, char *argv[])
-+{
-+#ifdef SIOCGIFHWADDR
-+ if (ioctl (form->sfd, SIOCGIFHWADDR, form->ifr) >= 0)
-+ select_arg (form, argc, argv, 0);
-+ else
-+#endif
-+ select_arg (form, argc, argv, 1);
-+}
-+
-+void
-+system_fh_hwtype (format_data_t form, int argc _GL_UNUSED_PARAMETER,
-+ char *argv[] _GL_UNUSED_PARAMETER)
-+{
-+#ifdef SIOCGIFHWADDR
-+ if (ioctl (form->sfd, SIOCGIFHWADDR, form->ifr) < 0)
-+ error (EXIT_FAILURE, errno,
-+ "SIOCGIFHWADDR failed for interface `%s'",
-+ form->ifr->ifr_name);
-+ else
-+ {
-+ struct arphrd_symbol *arp;
-+
-+ arp = arphrd_findvalue (form->ifr->ifr_hwaddr.sa_family);
-+ if (arp)
-+ put_string (form, arp->title);
-+ else
-+ put_string (form, "(hwtype unknown)");
-+ }
-+#else
-+ *column += printf ("(not available)");
-+ had_output = 1;
-+#endif
-+}
-diff --git a/ifconfig/system/hurd.h b/ifconfig/system/hurd.h
-new file mode 100644
-index 00000000..bab14565
---- /dev/null
-+++ b/ifconfig/system/hurd.h
-@@ -0,0 +1,50 @@
-+/*
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+
-+ This file is part of GNU Inetutils.
-+
-+ GNU Inetutils is free software: you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation, either version 3 of the License, or (at
-+ your option) any later version.
-+
-+ GNU Inetutils is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see `http://www.gnu.org/licenses/'. */
-+
-+/* Written by Mats Erik Andersson. */
-+
-+#ifndef IFCONFIG_SYSTEM_HURD_H
-+# define IFCONFIG_SYSTEM_HURD_H
-+
-+# include "../printif.h"
-+# include "../options.h"
-+
-+
-+/* Option support. */
-+
-+struct system_ifconfig
-+{
-+ int valid;
-+};
-+
-+
-+/* Output format support. */
-+
-+# define SYSTEM_FORMAT_HANDLER \
-+ { "hurd", fh_nothing}, \
-+ { "hwaddr?", system_fh_hwaddr_query}, \
-+ { "hwaddr", system_fh_hwaddr}, \
-+ { "hwtype?", system_fh_hwtype_query}, \
-+ { "hwtype", system_fh_hwtype},
-+
-+void system_fh_hwaddr_query (format_data_t form, int argc, char *argv[]);
-+void system_fh_hwaddr (format_data_t form, int argc, char *argv[]);
-+void system_fh_hwtype_query (format_data_t form, int argc, char *argv[]);
-+void system_fh_hwtype (format_data_t form, int argc, char *argv[]);
-+
-+#endif /* !IFCONFIG_SYSTEM_HURD_H */
---
-2.23.0.rc1.170.gbd704faa3e
-
-From 589dab9c7d3119da82837dabae34c8a3d16cbe49 Mon Sep 17 00:00:00 2001
-From: Mats Erik Andersson <gnu@gisladisker.se>
-Date: Thu, 30 Jul 2015 01:06:42 +0200
-Subject: [PATCH 07/35] ifconfig: Hardware detection in GNU/Hurd.
-
-A work-around needed to distinguish hardware type.
----
- ChangeLog | 10 ++++++++++
- ifconfig/system/hurd.c | 19 ++++++++++++-------
- 2 files changed, 22 insertions(+), 7 deletions(-)
-
-diff --git a/ifconfig/system/hurd.c b/ifconfig/system/hurd.c
-index 3bd19775..b6261a00 100644
---- a/ifconfig/system/hurd.c
-+++ b/ifconfig/system/hurd.c
-@@ -175,6 +175,16 @@ print_hwaddr_ether (format_data_t form _GL_UNUSED_PARAMETER,
- had_output = 1;
- }
-
-+/* GNU/Hurd and Mach are using a mixture of BSD definitions
-+ * and GNU/Linux interface headers, which in this situation
-+ * means that sa_family_t is an unsigned char, from BSD, while
-+ * all ARPHRD_* come from GNU/Linux and are thus 16 bits wide.
-+ * We must account for this. The following bitmask will
-+ * adapt to any future change!
-+ */
-+
-+#define _ARP_MASK ((sizeof (sa_family_t) == 1) ? 0xff : 0xffff)
-+
- struct arphrd_symbol
- {
- const char *name;
-@@ -184,16 +194,11 @@ struct arphrd_symbol
- } arphrd_symbols[] =
- {
- #ifdef ARPHRD_ETHER /* Ethernet 10/100Mbps. */
-- { "ETHER", "Ethernet", ARPHRD_ETHER, print_hwaddr_ether},
-+ { "ETHER", "Ethernet", ARPHRD_ETHER & _ARP_MASK, print_hwaddr_ether},
- #endif
- #ifdef ARPHRD_LOOPBACK /* Loopback device. */
-- { "LOOPBACK", "Local Loopback", ARPHRD_LOOPBACK, NULL},
-+ { "LOOPBACK", "Local Loopback", ARPHRD_LOOPBACK & _ARP_MASK, NULL},
- #endif
-- /* XXX: The image debian-hurd-20150424 returns the value 4
-- instead of expected ARPHRD_LOOPBACK. This has been
-- discussed in the list debian-hurd, where I was asked
-- to resist the temptation of a work around!
-- */
- { NULL, NULL, 0, NULL}
- };
-
---
-2.23.0.rc1.170.gbd704faa3e
-
-From d379784b4461d17b2536effd1b52bae21cd28a32 Mon Sep 17 00:00:00 2001
-From: Guillem Jover <guillem@hadrons.org>
-Date: Fri, 16 Aug 2019 00:34:03 +0200
-Subject: [PATCH 35/35] telnet: Several ioctls have been disabled in the Hurd's
- glibc
-
-But not the related option macros. inetutils uses those macros to decide
-whether the ioctls are available, so it is FTBFS now. The Hurd's glibc
-is being fixed, but we'll use this for now to get the builds going.
----
- telnet/sys_bsd.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/telnet/sys_bsd.c b/telnet/sys_bsd.c
-index 662536ab..5eb35cb5 100644
---- a/telnet/sys_bsd.c
-+++ b/telnet/sys_bsd.c
-@@ -63,6 +63,7 @@
- #include <errno.h>
- #include <arpa/telnet.h>
- #include <sys/select.h>
-+#include <sys/ioctl.h>
- #include <unused-parameter.h>
-
- #include "ring.h"
-@@ -157,7 +158,7 @@ TerminalRead (char *buf, int n)
- int
- TerminalAutoFlush (void)
- {
--#if defined LNOFLSH
-+#if defined TIOCLGET && defined LNOFLSH
- int flush;
-
- ioctl (0, TIOCLGET, (char *) &flush);
-@@ -260,7 +261,9 @@ TerminalSaveState (void)
- ioctl (0, TIOCGETP, (char *) &ottyb);
- ioctl (0, TIOCGETC, (char *) &otc);
- ioctl (0, TIOCGLTC, (char *) &oltc);
-+#ifdef TIOCLGET
- ioctl (0, TIOCLGET, (char *) &olmode);
-+#endif
-
- ntc = otc;
- nltc = oltc;
-@@ -755,7 +758,9 @@ TerminalNewMode (register int f)
- #endif
- }
- #ifndef USE_TERMIO
-+#ifdef TIOCLSET
- ioctl (tin, TIOCLSET, (char *) &lmode);
-+#endif
- ioctl (tin, TIOCSLTC, (char *) &ltc);
- ioctl (tin, TIOCSETC, (char *) &tc);
- ioctl (tin, TIOCSETN, (char *) &sb);
---
-2.23.0.rc1.170.gbd704faa3e
-