~vcs-imports/ipfire/ipfire-2.x

« back to all changes in this revision

Viewing changes to src/patches/syslinux-6.04-libinstaller-Fix-build-with-glibc-2.36.patch

  • Committer: Peter Müller
  • Date: 2022-04-23 14:27:56 UTC
  • mto: This revision was merged to the branch mainline in revision 9750.
  • Revision ID: git-v1:7a981d94cb2c3e48ecaf07c506c8353a2c839d79
SSH: do not send spoofable TCP keep alive messages

By default, both SSH server and client rely on TCP-based keep alive
messages to detect broken sessions, which can be spoofed rather easily
in order to keep a broken session opened (and vice versa).

Since we rely on SSH-based keep alive messages, which are not vulnerable
to this kind of tampering, there is no need to double-check connections
via TCP keep alive as well.

This patch thereof disables using TCP keep alive for both SSH client and
server scenario. For usability reasons, a timeout of 5 minutes (10
seconds * 30 keep alive messages = 300 seconds) will be used for both
client and server configuration, as 60 seconds were found to be too
short for unstable connectivity scenarios.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
From 0c4f97b2dd22365d32b865dd002282e454a7edf0 Mon Sep 17 00:00:00 2001
2
 
From: Martin Jansa <Martin.Jansa@gmail.com>
3
 
Date: Sat, 6 Aug 2022 11:53:55 +0000
4
 
Subject: [PATCH] libinstaller: Fix build with glibc-2.36
5
 
 
6
 
* add only necessary definitions from linux/fs.h, because including whole
7
 
  causes conflicts with sys/mount.h:
8
 
  http://errors.yoctoproject.org/Errors/Details/664535/
9
 
 
10
 
In file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/fs.h:19,
11
 
                 from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/linuxioctl.h:19,
12
 
                 from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/syslxcom.c:34:
13
 
TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/mount.h:95:6: error: redeclaration of 'enum fsconfig_command'
14
 
   95 | enum fsconfig_command {
15
 
      |      ^~~~~~~~~~~~~~~~
16
 
In file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/syslxcom.c:31:
17
 
TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/sys/mount.h:189:6: note: originally defined here
18
 
  189 | enum fsconfig_command
19
 
      |      ^~~~~~~~~~~~~~~~
20
 
TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/mount.h:96:9: error: redeclaration of enumerator 'FSCONFIG_SET_FLAG'
21
 
   96 |         FSCONFIG_SET_FLAG       = 0,    /* Set parameter, supplying no value */
22
 
      |         ^~~~~~~~~~~~~~~~~
23
 
...
24
 
 
25
 
Upstream-Status: Pending
26
 
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
27
 
---
28
 
 libinstaller/linuxioctl.h | 15 ++++++++++++++-
29
 
 1 file changed, 14 insertions(+), 1 deletion(-)
30
 
 
31
 
diff --git a/libinstaller/linuxioctl.h b/libinstaller/linuxioctl.h
32
 
index e2731c7..f4a6703 100644
33
 
--- a/libinstaller/linuxioctl.h
34
 
+++ b/libinstaller/linuxioctl.h
35
 
@@ -16,7 +16,20 @@
36
 
 #include <linux/fd.h>          /* Floppy geometry */
37
 
 #include <linux/hdreg.h>       /* Hard disk geometry */
38
 
 
39
 
-#include <linux/fs.h>          /* FIGETBSZ, FIBMAP, FS_IOC_* */
40
 
+// #include <linux/fs.h>               /* FIGETBSZ, FIBMAP, FS_IOC_* */
41
 
+// linux/fs.h unfortunately causes conflict with sys/mount.h since glibc-2.36
42
 
+// https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E
43
 
+// add the necessary definitions
44
 
+
45
 
+#define FS_IOC_GETFLAGS                 _IOR('f', 1, long)
46
 
+#define FS_IOC_SETFLAGS                 _IOW('f', 2, long)
47
 
+#define FIBMAP    _IO(0x00,1)  /* bmap access */
48
 
+#define FIGETBSZ   _IO(0x00,2) /* get the block size used for bmap */
49
 
+#define FS_IMMUTABLE_FL                        0x00000010 /* Immutable file */
50
 
+#define BLKGETSIZE _IO(0x12,96)        /* return device size /512 (long *arg) */
51
 
+
52
 
+// for musl we also need limits.h for PATH_MAX
53
 
+#include <linux/limits.h>
54
 
 
55
 
 #undef SECTOR_SIZE             /* Defined in msdos_fs.h for no good reason */
56
 
 #undef SECTOR_BITS