summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Christoph Nordholz <hesso@pool.math.tu-berlin.de>2009-02-04 01:14:20 +0100
committerAxel Beckert <abe@deuxchevaux.org>2011-09-03 14:05:36 +0200
commit1103e24d2a186a0355eda5742dfeba24cc961f88 (patch)
treedc24b2d87ce6653189acd130b5b7c9bcc8a0263d
parentac047a9c6eb8ebd477d775a8fe903c502218a307 (diff)
downloadscreen-1103e24d2a186a0355eda5742dfeba24cc961f88.tar.gz
Imported Debian patch 4.0.3-12debian/4.0.3-12
-rw-r--r--debian/changelog22
-rw-r--r--debian/control1
-rw-r--r--debian/patches/00list5
-rw-r--r--debian/patches/22exchange_file_mode.dpatch38
-rw-r--r--debian/patches/22no_public_exchange.dpatch28
-rw-r--r--debian/patches/29infodoc_version.dpatch17
-rw-r--r--debian/patches/31upstream_cherries.dpatch28
-rw-r--r--debian/patches/32misc_minor_fixes.dpatch17
-rw-r--r--debian/postinst2
-rw-r--r--debian/postrm2
-rw-r--r--debian/prerm2
-rwxr-xr-xdebian/rules8
12 files changed, 116 insertions, 54 deletions
diff --git a/debian/changelog b/debian/changelog
index b7f3a0b..c5b7d63 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,17 @@
-screen (4.0.3-11+lenny1) stable; urgency=high
-
- * Security upload.
- * Change the fix for #433338 so symlink attacks against the
- public exchange file are prevented again. Closes: #521123.
- Tracked as CVE-2009-1214 and CVE-2009-1215.
-
- -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Thu, 04 Apr 2009 02:10:09 +0200
+screen (4.0.3-12) unstable; urgency=low
+
+ * Back to work.
+ * Make the package build lintian-clean again.
+ * Add a Homepage field. Closes: #515803.
+ * Use the stock [un]patch targets from dpatch. Closes: #488618.
+ Thanks to Ryan Niebur.
+ * Adjust version number in the info doc. Closes: #492274, thanks
+ to Juhapekka Tolvanen.
+ * Cherry pick from upstream:
+ * d128abd5...: Display hostname when locked. Closes: #501201.
+ * Remove a spurious nethack message. Closes: #512299.
+
+ -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Wed, 04 Feb 2009 01:14:20 +0100
screen (4.0.3-11) unstable; urgency=low
diff --git a/debian/control b/debian/control
index 7b215b4..6d2bfd2 100644
--- a/debian/control
+++ b/debian/control
@@ -5,6 +5,7 @@ Maintainer: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de>
Uploaders: Adam Lazur <zal@debian.org>
Standards-Version: 3.8.0
Build-Depends: libncursesw5-dev, texinfo, libpam0g-dev, debhelper (>> 7), dpatch
+Homepage: http://www.gnu.org/software/screen
Package: screen
Architecture: any
diff --git a/debian/patches/00list b/debian/patches/00list
index 5f9b585..de90445 100644
--- a/debian/patches/00list
+++ b/debian/patches/00list
@@ -21,14 +21,17 @@
19flowcontrol_lockup
20defmonitor
21manpage_nethack_activation
-22exchange_file_mode
+22no_public_exchange
23exitcode_q_ls
24option_parser
25allow_symlink_sockdir
26source_encoding
27doc_sty_noenvpassing
28blankerprg_callsemantics
+29infodoc_version
30fix_fsf_address
+31upstream_cherries
+32misc_minor_fixes
40cjk_eastasian
45suppress_remap
# 50-99: experimental patches, new features etc.
diff --git a/debian/patches/22exchange_file_mode.dpatch b/debian/patches/22exchange_file_mode.dpatch
deleted file mode 100644
index 730bf31..0000000
--- a/debian/patches/22exchange_file_mode.dpatch
+++ /dev/null
@@ -1,38 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 22exchange_file_mode.dpatch by <hesso@pool.math.tu-berlin.de>
-##
-## DP: Make it a bit harder to shoot oneself in the foot by
-## DP: keeping the umask tight by default when creating the
-## DP: screen exchange file. Fearless users may still chmod it.
-
-@DPATCH@
---- screen-4.0.3.orig/fileio.c 2009-04-02 02:01:23.530568088 +0200
-+++ screen-4.0.3/fileio.c 2009-04-02 02:02:18.155521670 +0200
-@@ -367,11 +367,6 @@
- char *mode = "w";
- #ifdef COPY_PASTE
- int public = 0;
--# ifdef _MODE_T
-- mode_t old_umask;
--# else
-- int old_umask;
--# endif
- # ifdef HAVE_LSTAT
- struct stat stb, stb2;
- int fd, exists = 0;
-@@ -434,7 +429,6 @@
- #ifdef COPY_PASTE
- if (dump == DUMP_EXCHANGE && public)
- {
-- old_umask = umask(0);
- # ifdef HAVE_LSTAT
- if (exists)
- {
-@@ -455,7 +449,6 @@
- # else
- f = fopen(fn, mode);
- # endif
-- umask(old_umask);
- }
- else
- #endif /* COPY_PASTE */
diff --git a/debian/patches/22no_public_exchange.dpatch b/debian/patches/22no_public_exchange.dpatch
new file mode 100644
index 0000000..2fcc489
--- /dev/null
+++ b/debian/patches/22no_public_exchange.dpatch
@@ -0,0 +1,28 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 22no_public_exchange.dpatch by <hesso@pool.math.tu-berlin.de>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+@DPATCH@
+diff -Naur screen-4.0.3.orig/fileio.c screen-4.0.3/fileio.c
+--- screen-4.0.3.orig/fileio.c 2008-06-01 23:39:49.000000000 +0200
++++ screen-4.0.3/fileio.c 2008-06-01 23:44:58.000000000 +0200
+@@ -414,7 +414,17 @@
+ fnbuf[sizeof(fnbuf) - 1] = 0;
+ fn = fnbuf;
+ }
++/**
++ * I consider this 'public exchange file' feature a bad idea, at least
++ * if this is the default case. I really don't like the idea of an admin
++ * copying configuration file snippets around that might get changed
++ * in that buffer file.
++ * Drop the notion of a 'public' exchange file. If someone explictly wants
++ * to share his copy buffer contents, he is free to chmod it after its
++ * creation.
++ * Jan Nordholz <hesso@pool.math.tu-berlin.de>, 2007/08/07
+ public = !strcmp(fn, DEFAULT_BUFFERFILE);
++ */
+ # ifdef HAVE_LSTAT
+ exists = !lstat(fn, &stb);
+ if (public && exists && (S_ISLNK(stb.st_mode) || stb.st_nlink > 1))
diff --git a/debian/patches/29infodoc_version.dpatch b/debian/patches/29infodoc_version.dpatch
new file mode 100644
index 0000000..98fda34
--- /dev/null
+++ b/debian/patches/29infodoc_version.dpatch
@@ -0,0 +1,17 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 29infodoc_version.dpatch by <hesso@pool.math.tu-berlin.de>
+##
+## DP: Update software version number in info documentation.
+
+@DPATCH@
+--- screen-4.0.3.orig/doc/screen.texinfo 2003-12-05 14:51:46.000000000 +0100
++++ screen-4.0.3/doc/screen.texinfo 2009-02-04 01:06:52.573469826 +0100
+@@ -7,7 +7,7 @@
+ @finalout
+ @setchapternewpage odd
+ @c %**end of header
+-@set version 4.0.2
++@set version 4.0.3
+
+ @direntry
+ * Screen: (screen). Full-screen window manager.
diff --git a/debian/patches/31upstream_cherries.dpatch b/debian/patches/31upstream_cherries.dpatch
new file mode 100644
index 0000000..4d951eb
--- /dev/null
+++ b/debian/patches/31upstream_cherries.dpatch
@@ -0,0 +1,28 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 31upstream_cherries.dpatch by <hesso@pool.math.tu-berlin.de>
+##
+## DP: Cherry-picked upstream commits:
+## DP: - (#501201, git d128abd5...)
+
+@DPATCH@
+--- screen-4.0.3.orig/attacher.c
++++ screen-4.0.3/attacher.c
+@@ -52,6 +52,7 @@ static sigret_t AttachSigCont __P(SIGPROTOARG);
+
+ extern int real_uid, real_gid, eff_uid, eff_gid;
+ extern char *SockName, *SockMatch, SockPath[];
++extern char HostName[];
+ extern struct passwd *ppp;
+ extern char *attach_tty, *attach_term, *LoginName, *preselect;
+ extern int xflag, dflag, rflag, quietflag, adaptflag;
+@@ -891,8 +892,8 @@ screen_builtin_lck()
+ *cp1 -= 'a' - 'A';
+ }
+
+- sprintf(message, "Screen used by %s <%s>.\nPassword:\007",
+- fullname, ppp->pw_name);
++ sprintf(message, "Screen used by %s%s<%s> on %s.\nPassword:\007",
++ fullname, fullname[0] ? " " : "", ppp->pw_name, HostName);
+
+ /* loop here to wait for correct password */
+ for (;;)
diff --git a/debian/patches/32misc_minor_fixes.dpatch b/debian/patches/32misc_minor_fixes.dpatch
new file mode 100644
index 0000000..330b89e
--- /dev/null
+++ b/debian/patches/32misc_minor_fixes.dpatch
@@ -0,0 +1,17 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 32misc_minor_fixes.dpatch by <hesso@pool.math.tu-berlin.de>
+##
+## DP: Remove an unconditional nethack message. (# 512299)
+
+@DPATCH@
+--- screen-4.0.3.orig/attacher.c 2009-02-26 01:40:12.427283863 +0100
++++ screen-4.0.3/attacher.c 2009-02-26 01:43:02.258234277 +0100
+@@ -579,7 +579,7 @@
+ {
+ fcntl(0, F_SETFL, 0);
+ SetTTY(0, &attach_Mode);
+- printf("\nSuddenly the Dungeon collapses!! - You die...\n");
++ printf("\nError: Cannot find master process to attach to!\n");
+ eexit(1);
+ }
+ #endif
diff --git a/debian/postinst b/debian/postinst
index 84ee64c..d1a44dd 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -6,7 +6,7 @@ if [ "$1" = configure ]; then
install -g utmp -m 0775 -d /var/run/screen
[ `stat -c%a /usr/bin/screen` -lt 4000 ] || chmod 0755 /var/run/screen
fi
- /usr/sbin/add-shell /usr/bin/screen || true
+ add-shell /usr/bin/screen || true
fi
#DEBHELPER#
diff --git a/debian/postrm b/debian/postrm
index 28cca27..652cc9b 100644
--- a/debian/postrm
+++ b/debian/postrm
@@ -6,7 +6,7 @@ if [ "$1" = purge ] || [ "$1" = remove ]; then
fi
if [ "$1" = disappear ]; then
- /usr/sbin/remove-shell /usr/bin/screen || true
+ remove-shell /usr/bin/screen || true
fi
#DEBHELPER#
diff --git a/debian/prerm b/debian/prerm
index 3574d4b..85498ae 100644
--- a/debian/prerm
+++ b/debian/prerm
@@ -2,7 +2,7 @@
set -e
if [ "$1" = remove ] || [ "$1" = deconfigure ]; then
- /usr/sbin/remove-shell /usr/bin/screen || true
+ remove-shell /usr/bin/screen || true
fi
#DEBHELPER#
diff --git a/debian/rules b/debian/rules
index 841750e..afcff18 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,25 +7,25 @@
# Uncomment me to turn on debugging
#export DH_VERBOSE=1
+include /usr/share/dpatch/dpatch.make
+
package := screen
ROOT := $(CURDIR)/debian/$(package)
# statically define this... sucko
TTYGROUP := 5
-clean:
+clean: unpatch
dh_testdir
dh_testroot
rm -f configure-stamp build-stamp
test ! -s doc/Makefile || $(MAKE) -C doc realclean
test ! -s Makefile || ! grep -q clean Makefile || $(MAKE) realclean
rm -f config.log config.status Makefile
- dpatch deapply-all
dh_clean
configure: configure-stamp
-configure-stamp:
+configure-stamp: patch
dh_testdir
- dpatch apply-all
./configure --prefix=/usr \
--infodir='$$(prefix)/share/info' \
--mandir='$$(prefix)/share/man' \