![Peter Korsgaard](/assets/img/avatar_default.png)
Fixes a memory corruption issue in OSC 49 handling. Notice that this is only enabled if screen is built with --enable-rxvt_osc, which isn't the case in Buildroot. From the release notes: As last fix, fixes potential memory overwrite of quite big size (~768 bytes), and even though I'm not sure about potential exploitability of that issue, I highly recommend everyone to upgrade as soon as possible. This issue is present at least since v.4.2.0 (haven't checked earlier). https://lists.gnu.org/archive/html/screen-devel/2020-02/msg00007.html Upstream changed the gnu.org URLs to use HTTPS, so adjust 0005-rename-sched_h.patch to match. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
143 lines
4.7 KiB
Diff
143 lines
4.7 KiB
Diff
From: Maarten ter Huurne <maarten@treewalker.org>
|
|
Date: Mon, 15 Sep 2014 00:24:41 +0200
|
|
Subject: Renamed sched.h to eventqueue.h
|
|
|
|
There is a <sched.h> system header that got shadowed by "sched.h".
|
|
While Screen itself doesn't include <sched.h>, other system headers
|
|
might include it indirectly. This broke the build when using uClibc
|
|
with pthread support.
|
|
|
|
Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
|
|
---
|
|
eventqueue.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
|
|
sched.h | 48 ------------------------------------------------
|
|
screen.h | 2 +-
|
|
3 files changed, 49 insertions(+), 49 deletions(-)
|
|
create mode 100644 eventqueue.h
|
|
delete mode 100644 sched.h
|
|
|
|
diff --git a/eventqueue.h b/eventqueue.h
|
|
new file mode 100644
|
|
index 0000000..fdc3fc4
|
|
--- /dev/null
|
|
+++ b/eventqueue.h
|
|
@@ -0,0 +1,48 @@
|
|
+/* Copyright (c) 2008, 2009
|
|
+ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
|
|
+ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
|
|
+ * Micah Cowan (micah@cowan.name)
|
|
+ * Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
|
|
+ * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
|
|
+ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
|
|
+ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
|
|
+ * Copyright (c) 1987 Oliver Laumann
|
|
+ *
|
|
+ * This program 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, or (at your option)
|
|
+ * any later version.
|
|
+ *
|
|
+ * This program 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 (see the file COPYING); if not, see
|
|
+ * https://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
|
|
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
|
|
+ *
|
|
+ ****************************************************************
|
|
+ * $Id$ GNU
|
|
+ */
|
|
+
|
|
+struct event
|
|
+{
|
|
+ struct event *next;
|
|
+ void (*handler) __P((struct event *, char *));
|
|
+ char *data;
|
|
+ int fd;
|
|
+ int type;
|
|
+ int pri;
|
|
+ struct timeval timeout;
|
|
+ int queued; /* in evs queue */
|
|
+ int active; /* in fdset */
|
|
+ int *condpos; /* only active if condpos - condneg > 0 */
|
|
+ int *condneg;
|
|
+};
|
|
+
|
|
+#define EV_TIMEOUT 0
|
|
+#define EV_READ 1
|
|
+#define EV_WRITE 2
|
|
+#define EV_ALWAYS 3
|
|
diff --git a/sched.h b/sched.h
|
|
deleted file mode 100644
|
|
index fdc3fc4..0000000
|
|
--- a/sched.h
|
|
+++ /dev/null
|
|
@@ -1,48 +0,0 @@
|
|
-/* Copyright (c) 2008, 2009
|
|
- * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
|
|
- * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
|
|
- * Micah Cowan (micah@cowan.name)
|
|
- * Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
|
|
- * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
|
|
- * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
|
|
- * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
|
|
- * Copyright (c) 1987 Oliver Laumann
|
|
- *
|
|
- * This program 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, or (at your option)
|
|
- * any later version.
|
|
- *
|
|
- * This program 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 (see the file COPYING); if not, see
|
|
- * https://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
|
|
- * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
|
|
- *
|
|
- ****************************************************************
|
|
- * $Id$ GNU
|
|
- */
|
|
-
|
|
-struct event
|
|
-{
|
|
- struct event *next;
|
|
- void (*handler) __P((struct event *, char *));
|
|
- char *data;
|
|
- int fd;
|
|
- int type;
|
|
- int pri;
|
|
- struct timeval timeout;
|
|
- int queued; /* in evs queue */
|
|
- int active; /* in fdset */
|
|
- int *condpos; /* only active if condpos - condneg > 0 */
|
|
- int *condneg;
|
|
-};
|
|
-
|
|
-#define EV_TIMEOUT 0
|
|
-#define EV_READ 1
|
|
-#define EV_WRITE 2
|
|
-#define EV_ALWAYS 3
|
|
diff --git a/screen.h b/screen.h
|
|
index 603ca3f..34238c8 100644
|
|
--- a/screen.h
|
|
+++ b/screen.h
|
|
@@ -43,7 +43,7 @@
|
|
#include "osdef.h"
|
|
|
|
#include "ansi.h"
|
|
-#include "sched.h"
|
|
+#include "eventqueue.h"
|
|
#include "acls.h"
|
|
#include "comm.h"
|
|
#include "layer.h"
|
|
--
|
|
1.8.4.5
|
|
|