diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 02:20:21 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 02:20:21 +0000 |
commit | ef3904423d3301d87b4b499b7e5feb359d622405 (patch) | |
tree | 981032c10096a70b0cb95ea74de48492f9f08251 /debian | |
parent | Adding upstream version 4.6.2. (diff) | |
download | screen-ef3904423d3301d87b4b499b7e5feb359d622405.tar.xz screen-ef3904423d3301d87b4b499b7e5feb359d622405.zip |
Adding debian version 4.6.2-3+deb10u1.debian/4.6.2-3+deb10u1debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
56 files changed, 3945 insertions, 0 deletions
diff --git a/debian/NEWS b/debian/NEWS new file mode 100644 index 0000000..7bef72a --- /dev/null +++ b/debian/NEWS @@ -0,0 +1,31 @@ +screen (4.1.0~20120320gitdb59704-10) unstable; urgency=medium + + On systems running systemd, the management of /run/screen previously + handled by /etc/init.d/screen-cleanup now occurs via systemd-tmpfiles and + /usr/lib/tmpfiles.d/screen-cleanup.conf. The installed version of that + file works for systems with the default screen permissions; if you override + the permissions of /usr/bin/screen with dpkg-statoverride as documented in + /usr/share/doc/screen/README.Debian, you should create an overriding file + /etc/tmpfiles.d/screen-cleanup.conf setting the corresponding permissions. + See /usr/share/doc/screen/README.Debian for details. + + If you have already overridden the permissions of /usr/bin/screen, an + /etc/tmpfiles.d/screen-cleanup.conf has been created for you. + + -- Axel Beckert <abe@debian.org> Fri, 28 Feb 2014 12:23:42 +0100 + +screen (4.1.0~20120320gitdb59704-7) unstable; urgency=low + + In case you upgrade screen from 4.0.3 to 4.1.0 while running inside + screen and you have to reconnect to that screen session (or any other + screen session which has been started before the upgrade), there may be + a few screen features not working until you exit the 4.0.3-started + session and replace it with a 4.1.0-started session. + + Known issues of 4.0.3 to 4.1.0 interoperability as of now: + + * Terminal window resizing (WINCH signal) does not propagate to the + screen session. Detach and reattach again instead to get the size of + the terminals inside the screen session adjusted propely. + + -- Axel Beckert <abe@debian.org> Sun, 16 Sep 2012 12:48:44 +0200 diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 0000000..ffd8b65 --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,182 @@ +Screen Information +================== + +See the copyright file for information about where to get screen, +licensing, and other assorted information. + + +Debian Modifications +-------------------- + * added Debian package maintenance files + * Use /run/screen as socket directory + * udeb only: Use setgid "utmp" instead of setuid root or + libutempter. + + +Debian Screen Q&A +----------------- + +Q: screen always complains about the permissions of /run/screen. + What's wrong? + +A: Simplified, the binary ensures that $SCREENDIR has just enough + permission bits enabled so that each user can create and access his + socket directory. This means: + + /usr/bin/screen setuid root -> /run/screen 0755 + /usr/bin/screen setgid utmp -> /run/screen 0775 + /usr/bin/screen without setid bits -> /run/screen 0777 + + These cases are all handled by the init script or by the tmpfiles.d + configuration documented later in this file. However, the actual + test is a bit more complicated. And as the variable names are all + quite self-explanatory, just have a look at the C code itself: + +] n = (eff_uid == 0 && (real_uid || (st.st_mode & 0775) != 0775)) ? 0755 : +] (eff_gid == (int)st.st_gid && eff_gid != real_gid) ? 0775 : +] 0777; +] if (((int)st.st_mode & 0777) != n) +] Panic(0, "Directory '%s' must have mode %03o.", SockDir, n); + + If the invoking user has primary group utmp, the above assumption + will fail. The same holds if the underlying file system is mounted + 'nosuid'. In these cases you have to adapt the init script or + tmpfiles.d configuration yourself. + + +Q: shift+page up in xterm/gnome-terminal/konsole used to let me scroll + back a bit, but now it doesn't. How can I make it work with + scrollback? + +A: It doesn't scrollback consistently because screen (the program) + displays in xterm's alternate screen buffer. + + To have screen use xterm's normal screen buffer (which includes + scrollback), you can add the following to your .screenrc: + + termcapinfo xterm|xterms|xs|rxvt ti@:te@ + + +Q: Screen sets my xterm titlebar. I don't like this, how do I make it + stop? + +A: The titlebar setting is set in the /etc/screenrc by telling screen + that some of the GUI terminals have a hardstatus line and that it + can be set by sending the xterm escape sequences that set the + title/icon. + + # Set the hardstatus prop on gui terms to set the titlebar/icon title + termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007 + + You can override this on a system wide basis by commenting out this + line in the /etc/screenrc or you can override it in your personal + screenrc by adding the following line: + + hardstatus alwaysmessage + + +Q: Why do I get #!$@#$@!% trailing spaces when I cut and paste from + mutt running within screen? +Q: Why does the statusbar in my irc client extend to the end of the + screen in xterm but not in screen? + +A: This has to do with handling of the bce terminal attribute, or lack + thereof by default in screen. You can enable bce on a per-user + basis by adding the following to your .screenrc: + + defbce on + term screen-bce + + NOTE: if you do this your TERM will be screen-bce. When you login + to other machines they may not have a screen-bce terminal + type, so you will see errors. To fix this you must put the + terminfo for screen-bce on that remote machine. The screen + terminfo is found in + /usr/share/doc/screen/terminfo/screeninfo.src and you can + compile it on the remote machine using tic(1). + + +Q: Screen doesn't notice when I resize the term - what's wrong? + +A: Firstly look for the same question in FAQ.gz. If the problem + persists: There have been reports of sshd instances blocking + SIGWINCH (presumably restarted from aptitude and thus inheriting + its signal mask) which therefore also prohibit remote screen + sessions from ever seeing the signal. Have a look at the old + bugreport <https://bugs.debian.org/392302> for means to determine + whether you are affected. (You might have to restart sshd with a + crontab entry or similar magic if ssh is your only way to access + the box.) + + +Q: Multiuser mode is not working - how can I enable it? + +A: Screen has to be setuid root to accomplish this. (Note the security + implications this has! See e.g. https://bugs.debian.org/852484 for + a bug which becomes a root exploit with this. Also bear in mind + that setuid programs remove some variables from their environment + for exactly this reason - see ld.so(1).) If you still want to + enable the feature, you may do so with the following commands: + +] dpkg-statoverride --update --add root root 4755 /usr/bin/screen +] chmod 0755 /run/screen +] echo 'd /run/screen 0755 root utmp' > /etc/tmpfiles.d/screen-cleanup.conf + + dpkg-statoverride will make sure that the modified permissions + remain in effect even if a new version of the screen package is + installed. /run/screen will be automatically recreated with the + proper permissions if the directory lives on volatile storage + (doesn't persist between subsequent reboots). + + +Q: I've configured screen with different permissions, but I want to go + back to the default setgid configuration - how can I do that? + +A: + +] dpkg-statoverride --remove /usr/bin/screen +] chmod 1777 /run/screen +] rm /etc/tmpfiles.d/screen-cleanup.conf + + +Q: When I'm using ssh from inside screen, I get the error message + "Error opening terminal: screen.xterm-256color." or similar. + +A: The TERM variable inside a screen session (which is then passed to + the remote shell by ssh) depends on two things: + + 1. Availability of specific termcap entries locally. + 2. Value of the TERM variable when the session was started. + + To avoid this error message, the best way is to start a new screen + session under different terminal settings, but there are also ways + without starting a new sessions. You have several options: + + Without starting a new screen session: + + * Start ssh with "env TERM=screen-256color ssh". + + * Install ncurses-term on the remote machine and then start a new + ssh session. (Might help, depending on the remote distribution.) + + Exiting the current screen session, change one of the following and + start a new screen session: + + * Add "term screen-256color" to ~/.screenrc or /etc/screenrc on + your local machine. + + * Start the new screen session with "env TERM=xterm screen". + + * Start the new screen session with "screen -T screen-256color". + + * Uninstall ncurses-term locally and then start a new screen + session. (Might help, depending on the remote distribution.) + + If "screen-256color" is not available on the remote distribution + either, especially if it's not a recent release, try just "screen" + instead of "screen-256color". + + See https://bugs.debian.org/854414 for a thorough discussion on + this topic. + + -- Axel Beckert <abe@debian.org>, Thu, 20 Jul 2017 23:54:05 +0200 diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 0000000..c4a9154 --- /dev/null +++ b/debian/README.source @@ -0,0 +1,12 @@ +Jenkins Autobuilds of Debian's Screen Package +============================================= + +The Jenkins instance of the Grml Project builds new screen packages +upon each push to the collab-maint git repository, see +http://jenkins.grml.org/view/Debian/. Thanks Mika Prokop and the Grml +Team for that service! + +You can get the resulting .deb packages also via APT, see +http://jenkins.grml.org/view/Debian/job/screen-binaries/ for details. + + -- Axel Beckert <abe@debian.org>, Sat, 13 Jun 2015 23:48:43 +0200 diff --git a/debian/README.terminfo b/debian/README.terminfo new file mode 100644 index 0000000..d576c36 --- /dev/null +++ b/debian/README.terminfo @@ -0,0 +1,5 @@ +Debian uses ncurses/terminfo, not curses/termcap, so you really shouldn't need +the screencap file in this directory. + +The screeninfo.src file is installed by the `ncurses-term' package +-- it's here for reference, and to recover from stupid errors (like?). diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..b46f41e --- /dev/null +++ b/debian/changelog @@ -0,0 +1,1572 @@ +screen (4.6.2-3+deb10u1) buster-security; urgency=high + + * [CVE-2021-26937] Fix invalid write access and application crash or + possibly unspecified other impact via a crafted UTF-8 character + sequence. (Closes: #982435) + + -- Axel Beckert <abe@debian.org> Sat, 20 Feb 2021 21:59:38 +0100 + +screen (4.6.2-3) unstable; urgency=medium + + * Cherry-pick upstream commit d340b02c to stop linking against libelf if + available. This upstream commit is from 2014, but accidentally has + been reverted upstream in 2015 while configure.in was renamed to + configure.ac. (Closes: #903818) + + -- Axel Beckert <abe@debian.org> Sun, 15 Jul 2018 14:11:39 +0200 + +screen (4.6.2-2) unstable; urgency=medium + + * Remove trailing whitespace from ancient debian/changelog entries. + * Declare compliance with Debian Policy 4.1.5. (No changes needed.) + * Bump debhelper compatibility level to 11. + + Update versioned debhelper build-dependency accordingly. + + Replace dh_systemd_enable override by a dh_installsystemd override. + * Drop "Build-Conflicts: libelf-dev". Having libelf-dev installed no + more causes screen to FTBFS. + * Declare "Rules-Requires-Root: binary-targets". Thanks Lintian! + * Update screen.lintian-overrides wrt. to renamed lintian tag. + * Update Vcs-* headers for move to Salsa. + * Add fixes for typos found by Lintian recently to + debian/patches/64-fix-manpage-typos-reported-by-lintian.patch. + + -- Axel Beckert <abe@debian.org> Sun, 15 Jul 2018 00:48:31 +0200 + +screen (4.6.2-1) unstable; urgency=medium + + * Import new upstream release. + + Refresh patches where necessary. + + Add fixes for new typos found by Lintian to + debian/patches/64-fix-manpage-typos-reported-by-lintian.patch. + + -- Axel Beckert <abe@debian.org> Wed, 25 Oct 2017 19:48:01 +0200 + +screen (4.6.1-2) unstable; urgency=medium + + * Document possible solutions for issues where ssh sessions from inside + screen do not work properly due to missing terminal definitions on the + remote machine. (Closes: #854414, LP: #1726826) + * Declare compliance with Debian Policy 4.1.1. + + Drop no more needed "Priority: extra" header from screen-udeb. + * Fix duplicate word in README.Debian. Thanks Lintian! + * Drop no more needed "Testsuite: autopkgtest" header. + * debian/upstream/metadate: Use HTTPS for git.savannah.gnu.org URLs. + * debian/patches/52fix_screen_utf8_nfd.patch: Use HTTPS URL for Origin. + + -- Axel Beckert <abe@debian.org> Wed, 25 Oct 2017 08:08:11 +0200 + +screen (4.6.1-1) unstable; urgency=low + + * Import upstream version 4.6.1 + + Refresh 58-show-encoding-hardstatus.patch. + + Upstream bugfix release: upload to unstable again. + * Mention Ubuntu bug reports fixed by 4.6.0 in previous changelog entry. + * Merge 4.5.0-4 changes into 4.5.1-4 changelog entry instead of having + them as their own an out-of-order changelog entry. Unconfuses the BTS + (c.f. #355942) and probably also some users. Thanks to Guillem Jover + for the discussion and idea. + + -- Axel Beckert <abe@debian.org> Mon, 10 Jul 2017 23:54:35 +0200 + +screen (4.6.0-1) experimental; urgency=low + + * New upstream release. + + Supports many more baud rates, including 1500000. (Closes: #860910) + + Updates Unicode wide tables to 9.0. (Closes: #846396) + + Makes "get ttyname" work inside containers. (LP: #1669578) + + Drop 62-fix-texinfo-syntax-error.patch, fixed differently. + + Drop 64-fix-garbage-on-serial-terminal.patch, applied upstream. + + Refresh patches where necessary. + * Retroactively mention #355942 in 4.5.1-1's changelog entry. + * Add patch to fix spelling errors found by lintian. + + -- Axel Beckert <abe@debian.org> Thu, 29 Jun 2017 00:10:57 +0200 + +screen (4.5.1-4) unstable; urgency=low + + * Upload to unstable again. + * Merge 4.5.0-4 upload into master branch. + + Refresh 63-fix-garbage-on-serial-terminal.patch and renumber/rename + it to 64-fix-garbage-on-serial-terminal.patch + * Declare compliance with Debian Policy 4.0.0. (No changes needed.) + + [ Changes merged from the stretch-targeted 4.5.0-4 upload to unstable ] + * Add CVE-ID to 4.5.0-3 changelog entry and to + 62-reverse-cherry-pick-5460f5d2-to-fix-privilege-escalation.patch. + * Apply patch by Samuel Thibault to fix terminal garbage in Debian + Installer over serial line. (Closes: #857808) + + -- Axel Beckert <abe@debian.org> Mon, 19 Jun 2017 00:48:02 +0200 + +screen (4.5.1-3) experimental; urgency=low + + * Also change permissions (wrt. to utempter usage) in + /usr/lib/tmpfiles.d/screen-cleanup.conf. Fixes "Directory + '/run/screen' must have mode 777." error when running under systemd. + + -- Axel Beckert <abe@debian.org> Wed, 08 Mar 2017 23:20:15 +0100 + +screen (4.5.1-2) experimental; urgency=low + + * Replace all occurrences of /var/run/ in packaging with /run/. (Closes: + #856824) + * Update README.Debian with regards to libutempter usage. + + Add lintian override for "spelling-error-in-readme-debian root root + (duplicate word) root". (It's user "root" and group "root".) + * Reflow README.Debian to lines with less than 80 characters per line. + + -- Axel Beckert <abe@debian.org> Sun, 05 Mar 2017 19:00:00 +0100 + +screen (4.5.1-1) experimental; urgency=low + + * debian/upstream/signing-key.asc: Import updated upstream keyring from + https://savannah.gnu.org/project/memberlist-gpgkeys.php?group=screen + * Import new upstream release. + + Remove patch for CVE-2017-5618. Solved upstream, but differently. + + Remove 20fix_typos.patch, applied upstream. + + Refresh patches 11replace_doc_paths.patch, 45suppress_remap.patch, + 58-show-encoding-hardstatus.patch, 80_session_creation_docs.patch + + Add new patch to fix syntax error in doc/screen.texinfo. + * Change Build-Conflicts against libutempter-dev to Build-Depends and + patch configure.ac to sport a --enable-utempter switch. + * Enable libutempter in normal build, stay with setgid utmp for udeb. + (Closes: #819781, #355942) + + -- Axel Beckert <abe@debian.org> Sun, 05 Mar 2017 02:59:04 +0100 + +screen (4.5.0-3) unstable; urgency=medium + + * Add patch to revert upstream commit 5460f5d2 ("adding permissions + check for the logfile name") which caused a privilege escalation. + (CVE-2017-5618, Closes: #852484) + + -- Axel Beckert <abe@debian.org> Tue, 24 Jan 2017 22:57:44 +0100 + +screen (4.5.0-2) unstable; urgency=medium + + * Update 61-default-PATH_MAX-if-undefined-for-hurd.patch by defining + PATH_MAX in a second place if undefined. Fixes FTBFS on Hurd. + + -- Axel Beckert <abe@debian.org> Wed, 18 Jan 2017 16:54:41 +0100 + +screen (4.5.0-1) unstable; urgency=medium + + * New upstream release. + + Drop all cherry-picked patches. + + Refresh 11replace_doc_paths.patch, + 58-show-encoding-hardstatus.patch, and + 80_session_creation_docs.patch + + Remove hunks from 20fix_typos.patch which were fixed upstream. + + Drop 62-fix-RC_DIGRAPH-handling.patch, applied upstream. + + -- Axel Beckert <abe@debian.org> Wed, 18 Jan 2017 02:43:52 +0100 + +screen (4.4.0-6) unstable; urgency=medium + + * Fix double installation of debian/screen.tmpfile. (Closes: #842440) + * debian/rules: + + Factor out common dh_auto_configure parameters for .deb and .udeb. + + Remove redundant quotes. + + dh_auto_configure: Use shorter -B instead of --builddirectory. + + -- Axel Beckert <abe@debian.org> Sun, 30 Oct 2016 05:44:17 +0100 + +screen (4.4.0-5) unstable; urgency=medium + + * Minimize screenrc for udeb from 1.9kB to 1.1kB without loss of + functionality by removing unneeded comments and ASCII-style + underlining. + * Bump debhelper compatibility to 10. + + Update versioned debhelper build-dependency accordingly. + + Drop "--parallel --with autoreconf" from debian/rules. + + Drop explicit build-dependency on dh-autoreconf. + * Cherry-pick f3a12f01 from upstream screen-v4 branch to fix crash with + long $TERM variable. + * Fix typo "defualt" also in doc/screen.texinfo. (Already has been fixed + in man page. Nevertheless closes: #741141) + * Update some links in debian/upstream/metadata to reflect the fact that + we follow GNU Screen's stable branch (called screen-v4). + * Add Antti Järvinen as co-maintainer. Thanks for the offer to help! + (Closes: #654116) + + -- Axel Beckert <abe@debian.org> Tue, 25 Oct 2016 01:38:19 +0200 + +screen (4.4.0-4) unstable; urgency=medium + + [ Jan C. Nordholz ] + * Add patch to fix broken handling of "bind u digraph U+" (Closes: + #831672) + * Consistency fix for 60-screen-4.2.1-debian4.1.0-compatibility.patch. + * Replace 80EXP_session_creation_time.patch with three smaller patches + and reworked functionality. (Hopefully closes: #507817) + + [ Axel Beckert ] + * Cherry-pick upstream commit 1babc3f7 to fix crash with + bumpleft/bumpright on blank window. + * debian/watch: Comment out Savannah download page. It's outdated and + uscan insists on having only "one main upstream tarballs" URL. + + -- Axel Beckert <abe@debian.org> Sun, 07 Aug 2016 17:50:16 +0200 + +screen (4.4.0-3) unstable; urgency=low + + * Add patch to set PATH_MAX to 4096 if undefined. Should fix + FTBFS on GNU/Hurd since 4.4.0-1. + + -- Axel Beckert <abe@debian.org> Tue, 21 Jun 2016 22:24:05 +0200 + +screen (4.4.0-2) unstable; urgency=low + + [ Roger Shimizu ] + * Add udeb (debian-installer) support and ship a udeb/screenrc to + emulate the console windows commonly found when running d-i. Thanks to + Laurent Bigonville and Sven Joachim for providing ideas on building + screen-udeb with less dependencies. See discussion in #819358 and + #819397. (Closes: #819988) + + [ Axel Beckert ] + * Rename relevant files from debian/* to debian/screen.* to make clear + that they don't affect other binary packages built by this source + package. + * Raise build-dependency on libncursesw5-dev ≥ 6.0+20160319-2 so that + libtinfo5-udeb is available, too. + + -- Axel Beckert <abe@debian.org> Tue, 21 Jun 2016 00:10:02 +0200 + +screen (4.4.0-1) unstable; urgency=low + + * New upstream release + + Refresh patches where needed. + + Update 60-screen-4.2.1-debian4.1.0-compatibility.patch to keep + Debian's MSG_VERSION on 2. + + Drop 61denial-of-service-stack-overflow-fix.patch (applied upstream) + + Drop no more needed configure-generated-file-in-source lintian + overrides and hence the whole debian/source/lintian-overrides file. + * Change some URLs from http:// to https:// as suggested by DUCK. + + -- Axel Beckert <abe@debian.org> Mon, 20 Jun 2016 03:44:52 +0200 + +screen (4.3.1-3) unstable; urgency=medium + + [ Axel Beckert ] + * Add CVE-ID to previous changelog entry and patch. + * Remove screen-dbg package, there are automatic -dbgsym packages now. + * Build-Conflict with libelf-dev on all instead of just non-linux + architectures. (Closes: #819792) + * Declare compliance with Debian Policy 3.9.8. (No changes needed.) + * Enable all build-time hardening flags. + * Use DEB_CFLAGS_MAINT_APPEND once instead of passing CFLAGS to all + dh_auto_build invocations manually. + * Switch Vcs-Git header from git:// to https://. + * Switch Homepage header from http:// to https://. + * Reorder alternatives in Suggests by popularity. + * Build-Conflict with libutempter-dev to ensure consistent builds and + not add further build-dependencies. This would hinder future udeb + support as well as add a "Priority: optional" build-dependency to a + "Priority: standard" package, which is unwanted. (Closes: #819781) + * Add patch to fix some recent typo findings by Lintian. + * debian/copyright: Update Joost Witteveen's e-mail address. Issue + reported by DUCK. + + [ Sven Joachim ] + * Add patch to prefer libtinfo over libcurses. (Closes: #819789) + + -- Axel Beckert <abe@debian.org> Wed, 13 Apr 2016 00:33:50 +0200 + +screen (4.3.1-2) unstable; urgency=high + + * Cherry-pick upstream patch to fix a stack overflow which can be used + crash the SCREEN server process and hence can be used for denial of + service (and possible even worse) attacks. (Closes: #797624, + CVE-2015-6806) + * Suggest ncurses-term as it can solve cases where screen refuses to + work due to an unknown terminal given in $TERM. (Closes: #609656) + * Remove Jan Christoph Nordholz from Uploaders as suggested by the MIA + team. Thanks for all your work on screen, Jan! + * Override lintian warning systemd-no-service-for-init-rcS-script, it's + a false positive. (More or less closes: #796690) + + -- Axel Beckert <abe@debian.org> Tue, 01 Sep 2015 17:07:42 +0200 + +screen (4.3.1-1) unstable; urgency=medium + + * New upstream bugfix release. + + -- Axel Beckert <abe@debian.org> Mon, 29 Jun 2015 12:43:56 +0200 + +screen (4.3.0-2) unstable; urgency=low + + * Upload to unstable again. + * Re-add debian/dirs with /etc/tmpfiles.d/ and add a comment why screen + ships an empty directory. + + Fixes regression introduced in 4.2.1-4: If systemd is not installed + and screen is either setuid or neither setuid nor setgid, + /var/lib/dpkg/info/screen.postinst bailed out with "16: + /var/lib/dpkg/info/screen.postinst: cannot create + /etc/tmpfiles.d/screen-cleanup.conf: Directory nonexistent". + + See comment in debian/dirs for more detailed reasoning. + * No more ship /lib/systemd/system/screen-cleanup.service in the package + but link it to /dev/null in postinst and remove the link again in + postrm. (LP: #1462692) + * Add fixed bugs reported in Ubuntu to previous changelog entry. + * Apply wrap-and-sort. + + -- Axel Beckert <abe@debian.org> Wed, 17 Jun 2015 21:57:18 +0200 + +screen (4.3.0-1) experimental; urgency=low + + * New upstream release + + Drop 00-fix-version-in-Makefile.patch (obsolete) and remove 4.2.1 + upstream tar ball notes from README.Debian. + + Drop 48screen-ipv6.patch, applied upstream. + + Drop all patches cherry-picked from upstream. + + Refresh patches 11replace_doc_paths.patch, 26source_encoding.patch, + 58-show-encoding-hardstatus.patch, + 60-screen-4.2.1-debian4.1.0-compatibility.patch, + 80EXP_session_creation_time.patch + + Update line numbers in hyphen-used-as-minus-sign lintian overrides. + + Fixes segfault if hardstatus and maxwin are used together. (Closes: + #707044) + + Adds feature "firstline" for a status line in the first line at the + top of the terminal window. (Closes: #512342, #548845) + + Fixes documentation of -R/-RR in man page. (LP: #1459653) + + -- Axel Beckert <abe@debian.org> Sun, 14 Jun 2015 00:58:44 +0200 + +screen (4.2.1-4) unstable; urgency=medium + + * Drop dh_installchangelogs override to install the new ChangeLog to + /usr/share/doc/screen/changelog.gz + * Mention in README.source that Grml's Jenkins builds screen snapshots. + * Make all patch headers DEP3 compliant. Add bug report numbers, etc. + * Change priority from optional to standard. (Closes: #783524) + * Declare package as autopkgtestable to make ci.d.n run the test suite. + * Install all NEWS files as docs, also those from elder releases. + * debian/copyright: + + Convert to machine-readable DEP5 format. + + Update packaging copyright years. + + Add https://ftp.gnu.org/gnu/screen/ as additional download source. + * Add some comments to document the reasons for some entries in + debian/lintian-overrides. + * Remove debian/dirs: + + /etc/tmpfiles.d/ is shipped by systemd and only needed with systemd + + Explicitly creating /etc/ seems no more necessary. + * Mark 48screen-ipv6.patch as forwarded, it has been applied upstream. + + -- Axel Beckert <abe@debian.org> Thu, 11 Jun 2015 01:02:06 +0200 + +screen (4.2.1-3) unstable; urgency=low + + * Cherry-pick 7d8fd3ad from upstream to fix segfaults with full screen + text-mode applications and altscreen on (Closes: #681572) + * Cherry-pick 8ffd5f46 from upstream to fix caption/hardstatus color + rendering errors (Closes: #731388, LP: #1257895) + * Add a very simple TAP-based DEP8 test suite under debian/tests/t. + * Change Vcs-Browser header to new cgit web interface. + * Bump Standards-Version to 3.9.6 (no changes needed) + * Add lintian overrides for configure-generated-file-in-source as + config.{log,status} are listed in debian/clean. + + -- Axel Beckert <abe@debian.org> Thu, 09 Oct 2014 03:19:07 +0200 + +screen (4.2.1-2) unstable; urgency=low + + * Upload to unstable again + * Enable parallel building + + -- Axel Beckert <abe@debian.org> Sat, 26 Jul 2014 14:05:20 +0200 + +screen (4.2.1-1) experimental; urgency=low + + * New upstream release + + Dropped patches applied or obsoleted upstream: + + 01configure_fix_alpha_vsprintf.patch + + 03-fix-terminal-handling-on-kfreebsd.patch + + 05fix_osdef_include.patch + + 06-fix-parallel-build.patch + + 10norootpassword.patch + + 12kfreebsd_ctty.patch + + 14size_matters.patch + + 16fix_gcc_warnings.patch + + 22exchange_file_mode.patch + + 23exitcode_q_ls.patch + + 24option_parser.patch + + 32misc_minor_fixes.patch + + 46fix-keybinding-typo-in-manpage.patch + + 47screen-cc.patch + + 49long-usernames.patch + + 50increase-max-TERM-length.patch + + 51fix-utf8-status-padding-bug.patch + + 53fix-startup-race-condition.patch + + 59-fix-manpage-warnings.patch + + 61-allow-dev-console-to-be-a-symlink.patch + + 62-prevent-repeated-title-prompt.patch + + Also dropped patch 60-644788-screen-4.1.0-4.0.3-interoperability.patch + as it was only necessary for the migration from Squeeze to Wheezy and + from Precise to Trusty. + + Refreshed and/or updated the following remaining patches: + + 11replace_doc_paths.patch + + 48screen-ipv6.patch + + 58-show-encoding-hardstatus.patch + + 80EXP_session_creation_time.patch + + New patches: + + Fix wrong version in upstream's top-level Makefile. + + Set values in os.h to those from 49long-usernames and + 50increase-max-TERM-length and set MSG_VERSION back to 2 to ensure + backwards compatibility in Debian. (See #644788 for the discussion + with older releases.) + + * Update line-numbers in lintian overrides. + * Add README.source explaining which patch is needed for the clean target. + + -- Axel Beckert <abe@debian.org> Thu, 05 Jun 2014 23:50:40 +0200 + +screen (4.2.0-2) unstable; urgency=low + + * Upload to unstable + + -- Axel Beckert <abe@debian.org> Mon, 28 Apr 2014 02:32:48 +0200 + +screen (4.2.0-1) experimental; urgency=low + + * New upstream release + Refreshed patches: + + 10norootpassword.patch + + 11replace_doc_paths.patch + + 14size_matters.patch + + 16fix_gcc_warnings.patch + + 46fix-keybinding-typo-in-manpage.patch + + 47screen-cc.patch + + 48screen-ipv6.patch + + 51fix-utf8-status-padding-bug.patch + + 59-fix-manpage-warnings.patch + + -- Axel Beckert <abe@debian.org> Thu, 17 Apr 2014 15:09:54 +0200 + +screen (4.1.0~20120320gitdb59704-10) unstable; urgency=medium + + * Extend 49long-usernames.patch to also cover multiuser usage (Closes: + #735554) Thanks Martin von Wittich! + * Add systemd variant of /etc/init.d/screen-cleanup (Closes: #740301) + + Update README.Debian and NEWS.Debian accordingly + + Bump versioned debhelper build-dependency to 9.20130504 to ensure + systemd support in dh_installinit. + Thanks Josh Triplett for help and patches! + * Add a debian/upstream/metadata file according to DEP-12. + * Bump Standards-Version to 3.9.5 (no changes). + * debian/watch: + + Update to use GNU's and Savannah's servers (old location at + uni-erlangen.de no more exist) + + Check upstream GPG signature and add upstream signing key as + debian/upstream/signing-key.asc + + -- Axel Beckert <abe@debian.org> Thu, 17 Apr 2014 11:45:17 +0200 + +screen (4.1.0~20120320gitdb59704-9) unstable; urgency=low + + * Build-Conflict against libelf-dev on non-linux (Closes: #684386) + * Allow /dev/console to be a symlink. (Closes: #701173) Thanks to Igor + Pashev for the report and patch. + * screen-cleanup init.d script: Label /var/run/screen for SE Linux + (Closes: #680360) + * Add a package with debugging symbols (Closes: #715170) + * Ensure that the title prompt can only appear once. (Closes: #625866) + * No more pass --update-rcd-params='start 70 S .' to dh_installinit. The + LSB headers of the init script already contain all necesssary + information. (Closes: #717553) + * Expand 50increase-max-TERM-length.patch to also allow larger terminal + type names when using the "term" command interactively from inside + screen or from .screenrc. (Closes: #491812) + + -- Axel Beckert <abe@debian.org> Mon, 22 Jul 2013 21:37:24 +0200 + +screen (4.1.0~20120320gitdb59704-8) unstable; urgency=low + + * Update debian/patches/13split_info_files.patch to change now ambiguous + makeinfo option --split to --split-size. Fixes FTBFS with texinfo 5.x. + (Closes: #707530) + * Use doc/screen.info* instead of listing every file individually in + debian/info. + * Bump debhelper compatibility to 9 + + Update versioned debhelper build-dependency + * Revamp debian/rules + + Use dh_auto_{configure,build} + + Drop DPKG_EXPORT_BUILDFLAGS and /usr/share/dpkg/buildflags.mk + + Drop manual DEB_BUILD_OPTIONS parsing + + Use debian/clean instead of dh_clean parameters and add some more + files to clean up + + Use dh_install and debian/install instead of install and cp + + Simplify variable usage + + Fix dh_clean vs dh_prep in install target + + No more ignore dh_installman errors + + Finally switch to a dh7 style debian/rules file + * Bump Standards-Version to 3.9.4 (no changes) + * Apply wrap-and-sort. + * Fix lintian warning package-contains-info-dir-file + + -- Axel Beckert <abe@debian.org> Mon, 20 May 2013 17:04:14 +0200 + +screen (4.1.0~20120320gitdb59704-7) unstable; urgency=low + + * Extend 60-644788-screen-4.1.0-4.0.3-interoperability.patch: + + Add support for detaching (Closes: #684342) + + Document remaining issues in debian/NEWS + + -- Axel Beckert <abe@debian.org> Sun, 16 Sep 2012 13:42:12 +0200 + +screen (4.1.0~20120320gitdb59704-6) unstable; urgency=low + + * Apply patch by Julien Cristau <jcristau@debian.org> to add 4.0.3 + interoperability. (Closes: #683228; fixing the issue properly instead + of working around it. Thanks!) + + Drop all debconf handling and translations of debconf templates + (Closes: #679747, #683227; Thanks Beatrice Torracca and Christian + Perrier!) + + Drop build-depends on po-debconf and pre-depends on debconf + + Drop debian/NEWS (Closes: #678950) + + Remove no more necessary lintian override + * Screen's info pages are now split over more files than before. Also + include the new file doc/screen.info-6 (Closes: #682283) + + -- Axel Beckert <abe@debian.org> Tue, 07 Aug 2012 08:54:42 +0200 + +screen (4.1.0~20120320gitdb59704-5) unstable; urgency=low + + * Disable patch 52fix_screen_utf8_nfd.patch since it introduced a + regression (Closes: #677512, Reopens: #600246) + * Fix bug number of Slovak debconf translation in + 4.1.0~20120320gitdb59704-3 changelog entry + * Use GMANE URLs for refering to upstream discussions as lists.gnu.org + doesn't support threading over month boundaries. (Thanks Evgeni + Golov!) + * Add translations of debconf templates: + + Romanian (Closes: #679366; Thanks Andrei POPESCU!) + * Update translations of debconf templates: + + German (Closes: #679452; Thanks Helge Kreutzmann!) + + -- Axel Beckert <abe@debian.org> Sat, 30 Jun 2012 15:27:26 +0200 + +screen (4.1.0~20120320gitdb59704-4) unstable; urgency=low + + * Fix missing quoting in debian/config's dpkg --compare-version call + (Closes: #678207) + * Update NEWS.Debian entry. Now includes how to resurrect running + screen 4.0.3 sessions including generic commands for copy and + paste. (Closes: #678181) + * Set sticky bit on /var/run/screen if screen is not setuid or setgid + (Closes: #592895) + * Fix race condition when creating directories in /var/run/screen/. + (Closes: #653434) + * Add translations of debconf templates + + Norwegian Bokmål (Closes: #678112; Thanks Bjørn Steensrud!) + + Polish (Closes: #678158; Thanks Michał Kułach!) + + Galician (Closes: #678469; Thanks Jorge Barreiro!) + + French (Closes: #678548; Thanks David Prévot!) + + Czech (Closes: #678669; Thanks Michal Šimůnek!) + + Spanish (Closes: #678891; Thanks Fernando C. Estrada!) + + -- Axel Beckert <abe@debian.org> Sun, 24 Jun 2012 23:54:09 +0200 + +screen (4.1.0~20120320gitdb59704-3) unstable; urgency=low + + * Fix workaround for #644788 (detect running screen in maintainer + scripts) on kfreebsd (Closes: #677227) + * Update revised debconf templates and package description received from + the debian-l10n-english team (Closes: #677303) + * Add translations of debconf templates + + Simplified Chinese (Closes: #677726; Thanks Aron Xu!) + + Danish (Closes: #677748; Thanks Joe Hansen!) + + Swedish (Closes: #677752; Thanks Martin Bagge!) + + Slovak (Closes: #677848; Thanks Miguel Figueiredo!) + + Portuguese (Closes: #677838; Thanks Miguel Figueiredo!) + + Russian (Closes: #678021; Thanks Yuri Kozlov!) + * Updated German translation + * Run debconf-updatepo automatically in clean target + + Add build-dependency on po-debconf + + -- Axel Beckert <abe@debian.org> Mon, 18 Jun 2012 21:10:49 +0200 + +screen (4.1.0~20120320gitdb59704-2) unstable; urgency=low + + * Upload to unstable as the two RC issues which the experimental package + had, are now resolved or at least workarounded: + - Copy /usr/bin/screen to /tmp/screen-4.0.3 on upgrade from pre-4.1.0 + and use debconf to inform the user about it. (Closes: #644788) + - Add patch to fix terminal handling on kfreebsd (Closes: #660567) + Thanks Jan Christoph Nordholz! + * Add patch to fix parallel building. + * Use dh_lintian instead of handling lintian overrides manually. + * No more clean up manually what dh_clean can clean up. + * Add new patch to fix man page errors and warnings: + - Lintian warning manpage-has-errors-from-man fixed by replacing all + occurrences of "..." by "…" + - Fixes tons of lintian warnings hyphen-used-as-minus-sign + - Added two false positives of hyphen-used-as-minus-sign to + lintian-overrides + - Fixes two typos found by lintian + - Update 80EXP_session_creation_time.patch accordingly + + -- Axel Beckert <abe@debian.org> Sun, 10 Jun 2012 17:54:53 +0200 + +screen (4.1.0~20120320gitdb59704-1) experimental; urgency=low + + * Happy 25th Birthday GNU Screen + * New upstream snapshot + - Refreshed the following patches: + + 01configure_fix_alpha_vsprintf + + 11replace_doc_paths + + 14size_matters + + 48screen-ipv6 + + 51fix-utf8-status-padding-bug + + 52fix_screen_utf8_nfd + + 58-show-encoding-hardstatus + + 80EXP_session_creation_time + - Removed those hunks from 16fix_gcc_warnings which have been applied + upstream. + - Manually adapted patch 26source_encoding. + + [ Axel Beckert ] + * Switch Maintainer and Uploaders. + * Add patch fix-utf8-status-padding-bug by Kees Cook and Dustin Kirkland + (probably fixes #215955) + * Updated previous changelog entry to document further bugs which have + been fixed by that upload. + * Add build dependency on dpkg-dev (>= 1.16.1~) for being able to + include /usr/share/dpkg/buildflags.mk + * Add lintian override for init.d-script-does-not-implement-optional-option + warning. A cleanup script does not need a status subcommand. + * Fix lintian warning init.d-script-missing-lsb-description. + * Changes taken from Ubuntu's screen package: + - debian/init: Use find -delete rather than find -print0 | xargs rm to + avoid starting two processes. + - debian/patches/58-show-encoding-hardstatus.patch (Closes: #533498; + the remaining part of #533498 has been fixed upstream, see + https://savannah.gnu.org/bugs/index.php?26401) + * Add patch 52fix_screen_utf8_nfd by Nobuhiro Iwamatsu to fix screen + outputing "ÿ" after a connected character. (Closes: #600246) + * Bumped Standards-Version to 3.9.3. + + [ Moritz Muehlenhoff ] + * Enable hardening build flags (Closes: #656513) + + -- Axel Beckert <abe@debian.org> Tue, 20 Mar 2012 22:16:07 +0100 + +screen (4.1.0~20110819git450e8f3-1) experimental; urgency=low + + [ Brian P Kroth ] + * New upstream snapshot based on 4.1.0 prerelease 20101110git066b098 as + packaged by Fedora 15 (Closes: #641867) + * Removed the following patches which have been applied upstream or are + otherwise no more necessary: + - 01CVS + - 02configure_use_ncursesw + - 03fully_expand_screenencodings + - 09CHERRY_* + - 15manpage_typos + - 16fix_gcc_warnings_II + - 18manpage_maxwin_limit + - 19flowcontrol_lockup + - 20defmonitor + - 21manpage_nethack_activation + - 25allow_symlink_sockdir + - 27doc_sty_noenvpassing + - 28blankerprg_callsemantics + - 29infodoc_version + - 31upstream_cherries + - 33increase_max_winmsg_renditions + - 35screen_invoked_with_a_command + - 40cjk_eastasian + - 50EXP_tilde_expansion + * Refreshed the following patches: + - 10norootpassword + - 14size_matters + - 26source_encoding + * Added patches from Fedora: + - 47screen-cc: Additional assertions to improve stability + - 48screen-ipv6: IPv6 support for built-in telnet + * Enable telnet (Closes: #353090) and localized day/month names + + [ Axel Beckert ] + * Add myself as Uploader. + * Remove Adam Lazur from Uploaders. (Closes: #603009) + * New upstream snapshot based on 4.1.0 prerelease, commit 450e8f3 of + 2011-Aug-19. (LP: #183849) + - Fixes a crash when attaching to a layout that was created while + detached. (Closes: #591624, LP: #786292, #788670) + - Raises MAXWIN to 100 (Closes: #450421) + - No more segfaults if resized to 0 or 1 line tall (Closes: #532240, + LP: #315237) + - screen -d -m no more segfaults on setenv without value (Closes: #496750) + - Now has tsl, fsl and dsl terminfo caps (Closes: #152961) + - Windows created with "-d -m" no more ignore "-X exec" (Closes: #481411) + - Now has a session name string escape (Closes: #488619) + - Re-optimize screen updates (Closes: #621704, LP: #588846) + - No more mishandles xterm control string to set window title (Closes: + #344759) Thanks to Thomas Dickey and Sadrul Habib Chowdhury. + - Fixes/Relaxes requirement for a controlling terminal (Closes: #461107) + - Uses fuzzy-matching for session names only if required (Closes: #361274) + - Has customizable digraphs (Closes: #25096, a wishlist bug from 1998! :-) + - Fixes a bug with displaying blank spaces with bce on. (Closes: #578729, + LP: #702094) + - Fix using alternate screen buffers in some cases. (Closes: #558724) + - Several fixes for handling mouse events. (Closes: #223320) + - Passes signals to programs running inside screen on kfreebsd. + (Closes: 522689) + - Documents vertical split in man-page. (Closes: #611453) + - Adds focus left/right commands. (Closes: #526002) + - Locked screens no more can be unlocked by reattaching to it: + (Closes: #238535) + - Shows cursor in front of the selected window in "windowlist -b" + (Closes: #446082) + * Remove the patches which have been applied upstream or are + otherwise no more necessary: + - 17manpage_sessionname_warning + - 30fix_fsf_address + * Refreshed the following patches: + - 10norootpassword + - 11replace_doc_paths + - 12kfreebsd_ctty + - 14size_matters + - 16fix_gcc_warnings + - 22exchange_file_mode + - 23exitcode_q_ls + - 24option_parser + - 32misc_minor_fixes + * Refreshed and renumbered the following patches: + - {51 => 80}EXP_session_creation_time + * Added patches: + - 46fix-keybinding-typo-in-manpage (Closes: #630535, #541793) + - 49long-usernames (Closes: #560231, LP: #582153) + - 50increase-max-TERM-length (Closes: #621804, #630976) + * Use dh_autoreconf + - Build-Depend on dh-autoreconf + * Convert to source format "3.0 (quilt)" + - Remove build dependency on dpatch + * Bump Standards-Version to 3.9.2 (no changes) + * Update debian/copyright + - Upstream switched to GPLv3 + - Update debian packaging information + * Fix lintian warning debian-rules-missing-recommended-target + * Add lintian override for + possibly-insecure-handling-of-tmp-files-in-maintainer-script + * /etc/init.d/screen-cleanup: check for existence of screen binary + (Closes: #612990) + * Add Vcs-* headers + * Add extend-diff-ignore=config\.h\.in to debian/source/options + * Added a NEWS file stating problems to attach to a detached 4.0.3 + session with a 4.1.0 screen, e.g. during a dist-upgrade + * Suggest iselect, screenie or byobu (Closes: #176626) + + -- Axel Beckert <abe@debian.org> Sun, 09 Oct 2011 03:29:31 +0200 + +screen (4.0.3-14+hurd.1) unreleased; urgency=low + + * Fix #522689. + + -- Samuel Thibault <sthibault@debian.org> Sun, 06 Mar 2011 23:28:56 +0000 + +screen (4.0.3-14) unstable; urgency=low + + * Cherry-pick a few upstream commits: + * f6b50e17 (create windows in detached session, closes: #466072). + * 97708d58 (vertical split documentation, closes: #525998). + * bb04008e (report session identifier on detach, closes: #199747). + * Slightly adjust Homepage field. + * Add support for build option 'noopt'. + * Bump Standards version to 3.8.2, no changes. + * Specify GPL version in d/copyright. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Tue, 28 Jul 2009 13:21:24 +0200 + +screen (4.0.3-13) unstable; urgency=low + + * Sync with Ubuntu, closes: #520359. New dpatches: + * 33increase_max_winmsg_renditions + * 35screen_invoked_with_a_command (cherry-picked from upstream) + * Bump Standards version to 3.8.1 (again, no changes). + * Accommodate initscript to adjust the $SCREENDIR permissions + correctly even if /usr/bin/screen is installed 0755. + Add a Q&A pair to README.Debian to clarify this problem. + Closes: #520317. + * Fix #433338 properly by keeping the umask instead of dropping + the 'public exchange file' concept. Modify dpatch 22. + Addresses CVE-2009-1214, CVE-2009-1215, closes: #521123. + * Depend on patch-stamp instead of patch in debian/rules. + (Phony targets as intermediates in a dep chain are braindead.) + * Fix job control and CTTY handling on our new kfreebsd archs. + Closes: #522689. Thanks to Axel Beckert for his support! + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Fri, 10 Apr 2009 18:20:49 +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 + + * Unbreak <End> and <^A Bksp> using a patch from Loïc Minier + (thanks!) - introduced as new 45suppress_remap.dpatch. + Closes: #484647. + * Bump Standards version to 3.8.0. No changes necessary. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Thu, 12 Jun 2008 19:33:30 +0200 + +screen (4.0.3-10) unstable; urgency=low + + * The "Whoa, this feels like a time machine" release. + * Apply ~5k lines of unified diff to the source (CVS HEAD against + last release). Closes: #444146. + * Rediff all dpatches - drop 06 and 12 (fixed upstream). + * Add a second 16fix_gcc_warnings dpatch to get all those new + gcc warnings out of the buildlogs. + * Upstream has changed its mind and defaults to sockets now if both + sockets and fifos are available - enforce fifos for our build. + * Use the locale's timeformat for the session creation timestamps. + Closes: #481445. + * Update 40cjk_eastasian.dpatch as suggested in the BTS. Thanks + to Akira Tagoh and Deng Xiyue for providing and testing the new + version! Closes: #478884. + * Correct the bug number in the changelog entry for 4.0.3-9, item 5. + * Bump debhelper level once more to 7. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Mon, 02 Jun 2008 19:16:16 +0200 + +screen (4.0.3-9) unstable; urgency=low + + * The "I broke it, I fix it" release. + * Fix a race condition that made session resumption difficult if there + was only one. Closes: #477739. + * Enhance dpatch 16fix_gcc_warnings (buildlog is now free of warnings). + * Apply initscript LSB header changes as suggested by Kel Modderman - + thanks! Closes: #477779. + * Extend the tilde expansion patch to also apply to 'chdir' commands. + Thanks to Steve Kemp! Closes: #447210. + * Document my dpatch numbering style in 00list (and move one patch to + make things fit again). + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Sun, 27 Apr 2008 14:34:00 +0200 + +screen (4.0.3-8) unstable; urgency=low + + * The "resuming the bughunt" release. + * Bump Standards level to 3.7.3, debhelper to level 6. + * Include Ubuntu's 07norootpassword.dpatch, thanks to Martin Pitt! + See Ubuntu #6760. Closes: #447756. + * Fix another error in the info documentation. Closes: #447668. + * Fix blankerprg semantics. Closes: #330036. + * Empty Default-Stop section in the LSB initscript header. Closes: #461438. + * Fix multiuser activation howto in README.Debian. + * New feature: sort sessions by (and show) creation time, and pick the + youngest instead of an arbitrary one when called with '-rR'. + Closes: #206572. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Mon, 21 Apr 2008 23:41:42 +0200 + +screen (4.0.3-7) unstable; urgency=low + + * Completely undo the socket dir migration after discussion on #debian-devel. + * Restore original location /var/run/screen. + * Revive old version of dpatch 11. + * Readjust maintainer scripts and lintian overrides (intentionally + keeping the /tmp warning as a reminder). + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Tue, 25 Sep 2007 03:22:39 +0200 + +screen (4.0.3-6) unstable; urgency=low + + * One last fix for the migration. I knew this would get ugly... + Closes: #443813. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Mon, 24 Sep 2007 12:14:52 +0200 + +screen (4.0.3-5) unstable; urgency=low + + * Take 5: The "(w)hacking at the wishlist" release. + * Build with 256-color support. Closes: #348099. + * Change the comments in the digraph table to give a description of the + composed char, which retains its informational value regardless of the + viewer's encoding. Closes: #437024. Thanks, Ben Finney! + * Add "defnonblock 5" to the default screenrc which ought to improve + screen's behaviour on flaky/slow ssh lines. Closes: #434014. + * Include the patch for upstream #16666 which fixes the display of certain + CJK glyphs. Thanks to Victor Hsieh for the hint and Yi-Hsuan Hsin for + providing the patch! Closes: #437223. + * Improve and augment the documentation: + * Tidy up README.Debian. Among other changes this closes: #228220. + * Add a few sentences concerning Debian's MAXWIN setting (closes: #344863) + and envvar-passing when calling screen with STY set (closes: #259684). + * Fix a thinko in the socket directory migration. Closes: #443768. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Mon, 24 Sep 2007 02:03:56 +0200 + +screen (4.0.3-4) unstable; urgency=low + + * Take 4: The "the FHS is a fine thing after all" release. + * Move example config files into /usr/share/doc/screen/examples. + * Move fifo dir from /var/run/screen to /tmp/.screen. Closes: #214796. + Create preinst to make the upgrade fail early (i.e. before the unpack + phase) if /tmp/.screen is otherwise occupied. + Add another Q&A pair to README.Debian to explain how all this is done. + * Redo 11replace_doc_paths.dpatch from scratch due to these reorganisations. + * Drop po/ subdirectory (after dropping debconf usage in 4.0.3-1). + Closes: #440725 (sorry). Closes: #440410. + Also stop calling dh_installdebconf. + * Update the FSF address in the source files. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Thu, 30 Aug 2007 18:31:53 +0200 + +screen (4.0.3-3) unstable; urgency=low + + * Take 3: The "less bugreports than upstream" release. Whew. + * Add full tilde expansion to the builtin 'source' command. Inspired by + a patch by Nico Golde. Thanks! Closes: #308818. + * Add a kluge to prevent screen from locking up when doing strange things + with xon and flow control enabled. Still waiting for upstream to properly + fix this problem, so this only addresses: #157873. + * Extend the documentation about the strange activation of the nethack + feature. Closes: #205531. + * Don't create /tmp/screen-exchange with default mode 0666. Closes: #433338. + * Add a Q&A pair to README.Debian on how to enable the multiuser feature. + The problem is mentioned in the manpage under '-r', too, so I consider this + sufficiently documented now. Closes: #92036. + * Fix the exitcode mess of '-q -ls' (and its combinations with -d, -r and -x) + to keep the promises the manpage makes. Doing this on my own, no comment + from upstream yet. Closes: #426328. + * More documentation typo fixes. + * Properly parse the long commandline options like '-wipe'. Don't accept + as soon as it's unambiguous - this is not getopt(). Closes: #222023. + * Increase the maximum length of the input buffer (C-a :). Closes: #379384. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Thu, 09 Aug 2007 22:51:19 +0200 + +screen (4.0.3-2) unstable; urgency=low + + * Overhaul, Take 2: The "let -1 migrate to testing first" release. + * Better warnings now than worries later: add -Wextra to CFLAGS + (and counter with "-Wno-unused-parameter -Wno-missing-field-initializers" + to get the noise back to an acceptable level). + * Now that more warnings are visible, kill a few of them (new patch, ready + to be submitted upstream: 16fix_gcc_warnings). + * Drop Pre-Depends from debian/control (wasn't even used, so this is just + cosmetical). + * Clarify debian/copyright after consulting upstream. Closes: #403896. + * Increase MAXSTR by a sufficient amount. The usage pattern of this macro + doesn't justify a switch to dynamic allocation, so simply increasing it + is fine with me. Closes: #271384. + * Fix upstream #20277 by expanding SCREENENCODINGS twice during configure. + Closes: #435340. Thanks Victor Hsieh! + * Advise against using the "sessionname" command. The problem has been acked + upstream, so there's nothing more I can do - besides, there are alternatives. + Closes: #103771. + * Fix the "C-a M" toggle command that was broken when combined with a setting + of 'defmonitor on' in one's .screenrc. Closes: #310568. + * Correct a manpage error (defining a limitation that actually doesn't exist). + Closes: #197557. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Sun, 05 Aug 2007 16:59:24 +0200 + +screen (4.0.3-1) unstable; urgency=low + + * New maintainer. Thanks for your work, Adam! + Move Adam to Uploaders. + * Acknowledge NMUs. Thanks to all committers! + * Start the package overhaul. Take 1: + The "wishlist stuff will have to wait at least until -2"-release. + * Bump policy compliance level to 3.7.2. + * Bump debhelper to v5, and prefer debian/compat over DH_VERSION. + * Clean up old dependencies and conflicts. Closes: #334084. + * Introduce a patch system (dpatch) and move all orig changes to patches. + * Assert that the package is built with fifos instead of sockets. + Close the accompanying bug reports - if there's still a buildd that + fails the fifo test, I'll get an FTBFS now. Closes: #387156, #413674. + * Document the SIGWINCH issue in README.Debian. As this is not a bug + in screen, this closes: #392302, #248699 as far as this package is + concerned. + * Make the clean target live up to its name again. + * Fix a syntax error in the texinfo doc that surfaced now that the clean + target really cleans everything. + * Fix the commands in doc/Makefile.in to generate splitted info files + (because that's how they are distributed by upstream). + * Clean up the maintainer scripts: + * Stop using debconf. Its only purpose was to display a warning message + when upgrading from << 3.9.5-5, which was uploaded in the 20th century. + * Drop debian/preinst completely. + * Replace case constructions in the other scripts with if blocks. + * Stop trying to remove /var/run/screens - I couldn't find any reference + to that directory. Move remove-shell call to prerm. Closes: #374471. + * Mute the init script. Closes: #385895. + * Recreate /var/run/screen on install/reboot if necessary (e.g. tmpfs) with + the appriopriate permissions (depending on the screen binary - some + admins might choose to install it setuid using dpkg-statoverride). + Closes: #357578, #390506, #397088. + * Fix a couple of manpage typos. Closes: #414241, #417647. + * Enhance the copyright message (add the GPL boilerplate, formatting fixups). + Addresses #403896, but the year issue is still pending. + + -- Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> Sun, 22 Jul 2007 13:39:43 +0200 + +screen (4.0.3-0.4) unstable; urgency=low + + * Porter NMU. + * Fix screen on kfreebsd-amd64. Closes: #357232 + + -- Aurelien Jarno <aurel32@debian.org> Tue, 17 Jul 2007 06:51:52 +0200 + +screen (4.0.3-0.3) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n isses. + * Debconf translations: + - Galician. Closes: #407960 + - Catalan. Closes: #412581 + - Convert all PO files, but Japanese, to UTF-8 + * Add an empty binary-indep target to debian/rules. Closes: #395743 + * Provide a simple LSB header to the init script + + -- Christian Perrier <bubulle@debian.org> Mon, 5 Mar 2007 09:14:35 +0100 + +screen (4.0.3-0.2) unstable; urgency=low + + * Non-maintainer upload to fix a forgotten l10n issue in last NMU + * Debconf translation updates: + - Added Vietnamese. Closes: #317922 + * Modify the debconf dependency to better handle the cdebconf transition + Closes: #332089 + + -- Christian Perrier <bubulle@debian.org> Wed, 8 Nov 2006 20:46:01 +0100 + +screen (4.0.3-0.1) unstable; urgency=high + + * Non-maintainer upload to fix a security issue + * New upstream version fixing utf8 combining characters handling. The + bugs could be used to crash/hang screen by writing a special string + to a window (CVE-2006-4573). Closes: #395225 + * Debconf translation updates: + - Finnish added. Closes: #303818 + - Swedish added. Closes: #331583 + - Portuguese added. Closes: #345059 + - Italian updated. Closes: #358160 + + -- Christian Perrier <bubulle@debian.org> Sat, 28 Oct 2006 07:35:57 +0200 + +screen (4.0.2-4.1) unstable; urgency=low + + * Non-maintainer upload + * re-run autoconf, fix ftbfs (closes: #269366) + + -- David Kimdon <dwhedon@debian.org> Sat, 13 Nov 2004 20:49:00 -0800 + +screen (4.0.2-4) unstable; urgency=low + + * new debconf translations: + * Japanese - thanks Hideki Yamane (closes: #224175) + * Italian - thanks Fabio Pani (closes: #224580) + * Simplified Chinese - thanks Carlos Z.F. Liu (closes: #230811) + * Dutch - thanks Luk Claes (closes: #244326) + * Czech - thanks Miroslav Kure (closes: #261243) + + * updated Danish translation - thanks Morten Brix Pedersen (closes: #241241) + + -- Adam Lazur <zal@debian.org> Tue, 24 Aug 2004 20:09:08 -0400 + +screen (4.0.2-3) unstable; urgency=high + + * security: fix hole in stale session cleanup init script which allows + arbitrary file deletion on startup. Thanks to Roderick Schertler for + pointing this out. (closes: #238139) + + -- Adam Lazur <zal@debian.org> Mon, 15 Mar 2004 20:46:35 -0500 + +screen (4.0.2-2) unstable; urgency=low + + * fix depends on passwd to include epoch (closes: #224192) + + -- Adam Lazur <zal@debian.org> Tue, 6 Jan 2004 23:12:51 -0500 + +screen (4.0.2-1) unstable; urgency=low + + * ack NMU (closes: #223085, #222420) + * add rxvt to scrollback example in README.Debian and /etc/screenrc + (closes: #206193) + * fix typo in example bind line in screenrc (closes: #214727) + * add Brazilian Portuguese debconf translation (thanks Andre Luis Lopes) + (closes: #218809) + * add screen to /etc/shells (closes: #148715) + + -- Adam Lazur <zal@debian.org> Sat, 6 Dec 2003 18:25:10 -0500 + +screen (4.0.2-0.1) unstable; urgency=medium + + * NMU + * New upstream release. No upstream changelog found. ansi.c has been changed + to fix CAN-2003-0972, a signed integer overflow that allowed for arbitrary + code execution as group utmp (or as root on systems where screen was + installed setuid root). (Addresses #222385 for sid) + * [debian/rules] Changed the order of chmod/chown of the screen binary and + the run directory to chown, chmod as chown no longer preserves setuid and + setgid bits as of coreutils 5.0.1. (Closes: #222420) + + -- J.H.M. Dassen (Ray) <jdassen@debian.org> Sat, 6 Dec 2003 18:43:11 +0100 + +screen (4.0.1-3) unstable; urgency=low + + * fix autoconf varargs detection (using vsprintf) on alpha, which leads to + a binary that segfaults (closes: #213842) + + -- Adam Lazur <zal@debian.org> Thu, 2 Oct 2003 23:14:39 -0400 + +screen (4.0.1-2) unstable; urgency=low + + * build-depend on libncursesw5 to get autoconf to pick it up... doh + + -- Adam Lazur <zal@debian.org> Tue, 30 Sep 2003 23:40:11 -0400 + +screen (4.0.1-1) unstable; urgency=low + + * New Upstream Release (closes: #210280) + * rewritten command parser + * zmodem support (catch & passthrough) + * new screenblanker + + * remove bindkey -kb from system screenrc as advised by upstream + (closes: #187302) + * link against libncursesw (closes: #211511) + * fix Hurd build problem (closes: #201909) + * bump up debhelper versioned dependency (closes: #197432) + * switch to gettext-based debconf templates (closes: #202549) + + -- Adam Lazur <zal@debian.org> Tue, 30 Sep 2003 23:14:05 -0400 + +screen (3.9.15-1) unstable; urgency=low + + * New Upstream Release + * unicode combining character support + * chinese GBK encoding added + * backtick screen escape to substitute command output + + * add Danish translation (thanks Morten Brix Pedersen) (closes: #174745) + * add startup script to reap stale screen named pipes (closes: #164447) + * remove extraneous /etc/pam.d/screen as other works fine + + -- Adam Lazur <zal@debian.org> Mon, 17 Mar 2003 22:56:01 -0500 + +screen (3.9.13-3) unstable; urgency=low + + * add note about xterm scrollback and screen to README.Debian and update + comment in /etc/screenrc. + + -- Adam Lazur <zal@debian.org> Thu, 17 Oct 2002 16:41:11 -0400 + +screen (3.9.13-2) unstable; urgency=medium + + * avoid pkg installing docs resulting in /usr/share/info/dir.gz files in + the .deb (closes: #162940) + + * apply 2 patches from upstream: + 1) Fix console grabbing on linux. The kernel handles TIOCCONS too + restrictive, had to implement a workaround. + 2) Fix WrapChar bug that prevented removal of a bad scroll-region. + + -- Adam Lazur <zal@debian.org> Thu, 10 Oct 2002 22:53:24 -0400 + +screen (3.9.13-1) unstable; urgency=low + + * New Upstream Release + * correction to a FAQ answer in README.Debian (closes: #153323) + + -- Adam Lazur <zal@debian.org> Tue, 17 Sep 2002 09:19:14 -0400 + +screen (3.9.11-5) unstable; urgency=high + + * remove (%n.%t) from hardstatus string (closes: #137095) + * bump up max window title length to 60 (closes: #135391) + * debconf templates: + * add french translation (thanks Philippe Batailler) (closes: #141676) + * add russian translation (thanks Ilgiz Kalmetev) (closes: #137682) + * split translations out into their own files + * fix debconf prompt when upgrading from versions < 3.9.5-5 (closes: #137743) + * edit the long description a bit + * update README.Debian as to current state of screen-bce + + -- Adam Lazur <zal@debian.org> Wed, 10 Apr 2002 22:01:46 -0400 + +screen (3.9.11-4) unstable; urgency=low + + * patches to fix Japanese support: + screen-3.9.11.hcGR-patch + screen-3.9.11.paste-patch + screen-3.9.11.encoding-patch (closes: #136740) + * add spanish debconf template translation (closes: #136447) + + -- Adam Lazur <zal@debian.org> Thu, 7 Mar 2002 09:13:56 -0500 + +screen (3.9.11-3) unstable; urgency=high + + * Security Fix: override autoconf detected default group and mode on ptys + as it is not autodetected properly for buildd's that run + as cronjobs (closes: #135018) + * add note to README.Debian about setting xterm titlebar/icon and how to + override the default + * add note to README.Debian about mutt padding lines with whitespace (bce) + * add patchlevel.h (the real upstream changelog) to /usr/share/doc/screen + + -- Adam Lazur <zal@debian.org> Thu, 21 Feb 2002 17:25:12 -0500 + +screen (3.9.11-2) unstable; urgency=high + + * Apply patch to fix non utf8 locales (closes: #134200) + * fix problems with screenrc changes that affected konsole (closes: #134198) + * remove line that was borking TERM=xterm + * re-add line which mods xterm initialization string + * Add screen-bce terminal type to screeninfo.src and add a note about it in + README.Debian + + -- Adam Lazur <zal@debian.org> Sat, 16 Feb 2002 13:49:38 -0500 + +screen (3.9.11-1) unstable; urgency=low + + * New upstream release + * New commands: windowlist (bound to C-a "), source, eval, ignorecase, + deflogin, setsid + * Support for double-width utf-8 characters. + * bugfixes and other features, see /usr/share/doc/screen/NEWS.gz for more + info + + * Removed patches: + * pam support, hurd fix, getpt fix: accepted upstream + * md5 password support: obsoleted by pam support + * bufferfile default change: screen is tmpfile safe + + * Updates to /etc/screenrc: + * Bump up defscrollback from 100 (compiled in default) to 1024 + (thanks to overfiend for pointing this out) + * Add examples of running programs at screen startup + + * Add german template translation (closes: #126180) + * Now (ab)use upstream's makefile for most of the file installation + * compile with --enable-rxvt_osc to allow rxvt icon setting from within + screen (closes: #133333) + + -- Adam Lazur <zal@debian.org> Fri, 15 Feb 2002 10:18:07 -0500 + +screen (3.9.10-1) unstable; urgency=low + + * New Maintainer + * migrate package build to debhelper + * debconfify prompt when upgrading from screen < 3.9.5-5 + + -- Adam Lazur <zal@debian.org> Sat, 15 Dec 2001 21:20:58 -0500 + +screen (3.9.10-0.1) unstable; urgency=high + + * NMU. + * New upstream version with security fix. (Closes: #111339) + (Thanks Adam Lazur <laz@clustermonkey.org>) + + -- Eric Gillespie, Jr. <epg@debian.org> Wed, 12 Sep 2001 22:11:23 -0500 + +screen (3.9.9-2) unstable; urgency=low + + * New Standards-Version (3.5.4) + * Get rid of suidmanager, install screen setgid (closes: Bug#96858) + + -- Juan Cespedes <cespedes@debian.org> Tue, 5 Jun 2001 23:50:42 +0200 + +screen (3.9.9-1) unstable; urgency=low + + * New upstream version + * Really fix Bug#80337 (thanks to Michael Schroeder <mls@suse.de>) + + -- Juan Cespedes <cespedes@debian.org> Sat, 2 Jun 2001 19:40:37 +0200 + +screen (3.9.8-6.1) unstable; urgency=HIGH + + * Non-maintainer upload. + * Disable -DDEBUG which is a massive security hole, closes: #98839. + + -- James Troup <james@nocrew.org> Sun, 27 May 2001 01:09:31 +0100 + +screen (3.9.8-6) unstable; urgency=low + + * Updated copyright file + * Applied patch from Ryan King <rking@caseta.com> to be + able to work correctly on many-lined terminals (closes: Bug#80337) + + -- Juan Cespedes <cespedes@debian.org> Tue, 22 May 2001 00:23:00 +0200 + +screen (3.9.8-5) unstable; urgency=low + + * Fixed small typo in info file + * Clean up small lintian bugs + * Make commands related to bufferfile (readbuf, writebuf) + work again (Oops) (closes: Bug#45359, Bug#69275, Bug#83759) + + -- Juan Cespedes <cespedes@debian.org> Sat, 19 May 2001 15:12:11 +0200 + +screen (3.9.8-4) unstable; urgency=low + + * Make /etc/pam.d/screen be a conffile (closes: Bug#58696) + * Remove option "autofixterm" from manual page (closes: Bug#97019) + * Applied patch to make screen work OK on Hurd (closes: Bug#97343) + + -- Juan Cespedes <cespedes@debian.org> Mon, 14 May 2001 03:00:34 +0200 + +screen (3.9.8-3) unstable; urgency=low + + * Fixed small bug which caused `aterm' to display + everything underlined (closes: Bug#97327) + + -- Juan Cespedes <cespedes@debian.org> Sun, 13 May 2001 15:39:19 +0200 + +screen (3.9.8-2) unstable; urgency=low + + * New version uploaded to unstable instead of "stable unstable" (sorry) + + -- Juan Cespedes <cespedes@debian.org> Tue, 8 May 2001 22:28:35 +0200 + +screen (3.9.8-1) stable unstable; urgency=medium + + * New upstream version (closes: Bug#74310, Bug#89215) + * New Standards-Version (3.5.3) + * Applied patch to build cleanly on ia64 (closes: #91964) + * Fixed small bug regarding creation of sockets dir + when running as root + + -- Juan Cespedes <cespedes@debian.org> Mon, 7 May 2001 23:26:40 +0200 + +screen (3.9.5-9) stable unstable; urgency=HIGH + + * Fixed security bug (group utmp compromise) + + -- Juan Cespedes <cespedes@debian.org> Sat, 2 Sep 2000 17:51:28 +0200 + +screen (3.9.5-8) frozen unstable; urgency=low + + * Correct wrong build-dependency (libncurses5-dev + instead of libncurses4-dev) (closes: Bug#57989) + * Include a /etc/pam.d/screen file (closes: Bug#57592) + + -- Juan Cespedes <cespedes@debian.org> Mon, 14 Feb 2000 10:07:52 +0100 + +screen (3.9.5-7) frozen unstable; urgency=low + + * Built against libncurses5 instead of obsoleted libncurses4 + + -- Juan Cespedes <cespedes@debian.org> Sun, 6 Feb 2000 21:26:59 +0100 + +screen (3.9.5-6) unstable; urgency=low + + * Make `screen' work correctly both as root and non-root + (closes: Bug#53290, Bug#53329) + + -- Juan Cespedes <cespedes@debian.org> Thu, 23 Dec 1999 16:48:02 +0100 + +screen (3.9.5-5) unstable; urgency=low + + * New Standards-Version (3.1.1) + * Acknowledge NMU-fixed bugs (closes: Bug#50394, Bug#51058, Bug#51316) + * Changed screens directory from $HOME to /var/run/screen (closes: Bug#51088) + * Removed debconf support: no configuration is necessary in this program + + -- Juan Cespedes <cespedes@debian.org> Sun, 19 Dec 1999 06:04:48 +0100 + +screen (3.9.5-4.1) unstable; urgency=low + + * Non-maintainer release. + * Run autoconf to resync configure with configure.in + (closes:Bug#50394,#51058). + + -- Joel Klecker <espy@debian.org> Mon, 29 Nov 1999 08:38:18 -0800 + +screen (3.9.5-4) unstable; urgency=low + + * Used debconf + + -- Juan Cespedes <cespedes@debian.org> Sun, 14 Nov 1999 23:51:10 +0100 + +screen (3.9.5-3) unstable; urgency=low + + * Applied patch from Joel Klecker <espy@debian.org> to use getpt() + to get PTYs (closes: Bug#45628, Bug#48856) + + -- Juan Cespedes <cespedes@debian.org> Tue, 2 Nov 1999 16:42:41 +0100 + +screen (3.9.5-2.1) unstable; urgency=low + + * NMU. Backed out pty which didn't free ptys correctly. (Fixes: #45628) + + -- J.H.M. Dassen (Ray) <jdassen@debian.org> Sat, 30 Oct 1999 17:07:08 +0200 + +screen (3.9.5-2) unstable; urgency=low + + * Added missing "prerm" file (lintian) + + -- Juan Cespedes <cespedes@debian.org> Fri, 1 Oct 1999 10:13:17 +0200 + +screen (3.9.5-1) unstable; urgency=low + + * New upstream version (closes: Bug#45173) + * FHS (/usr/doc/screen -> /usr/share/screen) + * PAM support + * Move "screen-exchange" file to ${HOME} (closes: Bug#45449) + + -- Juan Cespedes <cespedes@debian.org> Sun, 19 Sep 1999 20:24:56 +0200 + +screen (3.9.4-1) unstable; urgency=low + + * New upstream version, lots of improvements (closes: Bug#43932) + * Removed setuid, make it setgid "utmp" (closes: Bug#43909, Bug#43931) + * Uses "vlock" to lock screen if available + * Avoid braces in debian/rules (closes: Bug#36888) + * Use Unix98 style PTYs (closes: Bug#34578, Bug#37208, Bug#37863) + * Closed old bugs (closes: Bug#29523, Bug#35469) + * "screen" now defaults to MAXWIN=40 (closes: Bug#42420) + * Compile cleanly on glibc-2.1 systems (closes: Bug#26645) + * New Standards-Version: 3.0.1 (but keeping docs in /usr/doc) + + -- Juan Cespedes <cespedes@debian.org> Fri, 10 Sep 1999 16:14:41 +0200 + +screen (3.7.6-1) unstable; urgency=low + + * New upstream version: + Wayne's resize.c patch to keep the cursor onscreen. FindWindow + corrected. AIX4 patch from robert@mayday.cix.co.uk. Fixed + kanji am & markcursor bugs. SCO support (Gert Doering). + Wayne's statusline extra space. New flag nospc for MakeWinMsg. + New TF capability: add missing termcap/info caps. + screen-exchange security fix. Use kstat for Solaris' loadavg. + Check for mode 775 if screen runs setgid. Fixed typo in silence + command. Allow detach with no tty. HPUX10.20 ltchars hack. + Use @1/@7 as replacement for kh/kH. Use seteuid before calling + tgetent. Check for displays in Msg(). Linux ncurses hack: + redefine _nc_timed_wait. Configure check for ncurses (sigh). + ITOH Yasufumi: kanji fixes, osf support, bug fixes. More secure + Rewrite(). Increased line buffer size to 2048 bytes. + SCO-5 Fixes (Brian L. Gentry). resize code now handles tabs + correctly. + * Applied NMU from Christian Meder for glibc-2.1: Bug#32814 + + -- Juan Cespedes <cespedes@debian.org> Thu, 11 Feb 1999 18:32:01 +0100 + +screen (3.7.4-9.1) frozen unstable; urgency=low + + * non maintainer, sparc only upload + * apply patch for glibc2.1 from BTS + * undefine SVR4 from configure script: glibc2.1's utmpx.h is incompatible + with SVR4 + + -- Christian Meder <meder@isr.uni-stuttgart.de> Thu, 26 Nov 1998 15:40:30 +0100 + +screen (3.7.4-9) frozen unstable; urgency=medium + + * Recompile against libncurses4 + * /etc/terminfo/s/screen is now in ncurses-base, so screen doesn't + depend on ncurses-term anymore + + -- Juan Cespedes <cespedes@debian.org> Wed, 11 Nov 1998 18:17:37 +0100 + +screen (3.7.4-8) stable unstable; urgency=HIGH + + * Fix critical bug #25970: /tmp race problem + + -- Juan Cespedes <cespedes@debian.org> Thu, 27 Aug 1998 23:08:40 +0200 + +screen (3.7.4-7) unstable; urgency=low + + * Add support for MD5 passwords (Bug#22740, Bug#25487) + + -- Juan Cespedes <cespedes@debian.org> Fri, 7 Aug 1998 10:40:16 +0200 + +screen (3.7.4-6) unstable; urgency=low + + * Pass SIGWINCH to applications when size changes (fixes:Bug#18471) + + -- Juan Cespedes <cespedes@debian.org> Sun, 22 Feb 1998 11:16:46 +0100 + +screen (3.7.4-5) unstable; urgency=low + + * Fixed minor bug in debian/rules clean + * `screen' now depends on `ncurses-term', so it doesn't install its + own terminfo entry + * New Standards-Version: 2.4.0.0 + + -- Juan Cespedes <cespedes@debian.org> Thu, 12 Feb 1998 16:10:22 +0100 + +screen (3.7.4-4) unstable; urgency=low + + * Changed upstream changelog name (ChangeLog.gz -> changelog.gz) + * Changed sockets from /tmp to /var/run (closes:Bug#6487) + * New Standards-Version: 2.3.0.1 + * Changed behaviour of backspace key (now sends `DEL' == 0177) + + -- Juan Cespedes <cespedes@debian.org> Sun, 4 Jan 1998 21:13:51 +0100 + +screen (3.7.4-3) unstable; urgency=low + + * New maintainer + * New Standards-Version: 2.3.0.0 + * Minor fixes in /usr/doc/screen + * Pristine Source + * Fixed Bug#12626 + + -- Juan Cespedes <cespedes@debian.org> Sat, 11 Oct 1997 02:14:43 +0200 + +screen (3.7.4-2) unstable; urgency=low + + * Added definition of kend to screeninfo.src. + * Recompiled for libc6. + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 3 Oct 1997 22:18:45 +0200 + +screen (3.7.4-1) unstable; urgency=low + + * Upgraded to upstream version. + * fixed /etc/screenrc problem (used to read: /usr/etc/screenrc). + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 2 Aug 1997 22:26:08 +0200 + +screen (3.7.2-5) unstable; urgency=low + + * Recompiled for libc6 (now should be using libc functions for utmp access) + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 19 Jun 1997 17:48:26 +0200 + +screen (3.7.2-4) unstable; urgency=low + + * After suggestions from David Luyer, increase the number of tty's to 256. + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 4 May 1997 17:25:00 +0200 + +screen (3.7.2-3) stable unstable; urgency=high + + * Security fix for buffer-overrun posted to bugtraq. + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 21 Feb 1997 17:02:30 +0100 + +screen (3.7.2-2) unstable; urgency=low + + * This package contained a /usr/doc/screen/screeninfo.src.gz (compressed) + that is apparently needed by the install phase. uncompressed it. + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Tue, 7 Jan 1997 21:22:32 +0100 + +screen (3.7.2-1) unstable; urgency=low + + * Upgraded to upstream version + * converted to new source format + + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 4 Jan 1997 11:40:40 +0100 diff --git a/debian/clean b/debian/clean new file mode 100644 index 0000000..e0a3db6 --- /dev/null +++ b/debian/clean @@ -0,0 +1,12 @@ +config.log +config.status +Makefile +*.o +comm.h +config.h +doc/Makefile +kmapdef.c +osdef.h +screen +term.h +tty.c diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..b4de394 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +11 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..b0c5c8b --- /dev/null +++ b/debian/control @@ -0,0 +1,50 @@ +Source: screen +Section: misc +Priority: standard +Maintainer: Axel Beckert <abe@debian.org> +Uploaders: Antti Järvinen <antti.jarvinen@katiska.org> +Standards-Version: 4.1.5 +Build-Depends: debhelper (>= 11~), + dpkg-dev (>= 1.16.1~), + libncursesw5-dev (>= 6.0+20160319-2~), + libpam0g-dev, + libutempter-dev, + texinfo +Homepage: https://savannah.gnu.org/projects/screen +Vcs-Git: https://salsa.debian.org/debian/screen.git +Vcs-Browser: https://salsa.debian.org/debian/screen +Rules-Requires-Root: binary-targets + +Package: screen +Architecture: any +Depends: ${misc:Depends}, + ${shlibs:Depends} +Suggests: byobu | screenie | iselect (>= 1.4.0-1), + ncurses-term +Description: terminal multiplexer with VT100/ANSI terminal emulation + GNU Screen is a terminal multiplexer that runs several separate "screens" on + a single physical character-based terminal. Each virtual terminal emulates a + DEC VT100 plus several ANSI X3.64 and ISO 2022 functions. Screen sessions + can be detached and resumed later on a different terminal. + . + Screen also supports a whole slew of other features, including configurable + input and output translation, serial port support, configurable logging, + and multi-user support. + +Package: screen-udeb +Architecture: any +Section: debian-installer +Package-Type: udeb +Depends: ${misc:Depends}, + ${shlibs:Depends} +Description: terminal multiplexer with VT100/ANSI terminal emulation - udeb + GNU Screen is a terminal multiplexer that runs several separate "screens" on + a single physical character-based terminal. Each virtual terminal emulates a + DEC VT100 plus several ANSI X3.64 and ISO 2022 functions. Screen sessions + can be detached and resumed later on a different terminal. + . + Screen also supports a whole slew of other features, including configurable + input and output translation, serial port support, configurable logging, + and multi-user support. + . + This is stripped-down version of screen for debian-installer. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..b84d63a --- /dev/null +++ b/debian/copyright @@ -0,0 +1,38 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: GNU Screen +Upstream-Contact: screen-devel@gnu.org +Source: https://savannah.gnu.org/projects/screen + https://ftp.gnu.org/gnu/screen/ + +Files: * +Copyright: 1987 Oliver Laumann + 1991 Wayne Davidson + 1993-2006 Juergen Weigert <jnweiger@immd4.informatik.uni-erlangen.de> + 1993-2006 Michael Schroeder <mlschroe@immd4.informatik.uni-erlangen.de> +License: GPL-3+ + +Files: debian/* +Copyright: 1996 Ian Murdock <imurdock@debian.org> + 1997 joost witteveen <joosteto@gmail.com> + 1997-2001 Juan Cespedes <cespedes@debian.org> + 2001-2003 Adam Lazur <zal@debian.org> + 2007-2009 Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> + 2011 Brian Kroth <bpkroth@gmail.com> + 2011-2015 Axel Beckert <abe@debian.org> +License: GPL-3+ +Comment: It is assumed that the Debian packaging is licensed under the + same terms as the upstream project unless stated otherwise. + +License: GPL-3+ + 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 of the License, 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. + . + On Debian systems, the complete text of the GNU General Public + License, version 3 can be found in "/usr/share/common-licenses/GPL-3". diff --git a/debian/patches/05prefer-libtinfo-over-libcurses.patch b/debian/patches/05prefer-libtinfo-over-libcurses.patch new file mode 100644 index 0000000..7391ab0 --- /dev/null +++ b/debian/patches/05prefer-libtinfo-over-libcurses.patch @@ -0,0 +1,35 @@ +Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?filename=0001-Prefer-libtinfo-over-libcurses.patch;att=1;msg=14;bug=819789 +From: Sven Joachim <svenjoac@gmx.de> +Date: Sat, 2 Apr 2016 13:31:00 +0200 +Subject: Prefer libtinfo over libcurses +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=819789 +Forwarded: no + +Try to link with -ltinfo before -lcurses to avoid a spurious +dependency on systems where ncurses is built with "--with-termlib". +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/configure.ac ++++ b/configure.ac +@@ -631,6 +631,9 @@ + AC_CHECKING(for tgetent) + AC_TRY_LINK(,tgetent((char *)0, (char *)0);,, + olibs="$LIBS" ++LIBS="-ltinfo $olibs" ++AC_CHECKING(libtinfo) ++AC_TRY_LINK(,tgetent((char *)0, (char *)0);,, + LIBS="-lcurses $olibs" + AC_CHECKING(libcurses) + AC_TRY_LINK(,[ +@@ -655,9 +658,6 @@ + LIBS="-lncurses $olibs" + AC_CHECKING(libncurses) + AC_TRY_LINK(,tgetent((char *)0, (char *)0);,, +-LIBS="-ltinfo $olibs" +-AC_CHECKING(libtinfo) +-AC_TRY_LINK(,tgetent((char *)0, (char *)0);,, + AC_MSG_ERROR(!!! no tgetent - no screen))))))))) + + AC_TRY_RUN([ diff --git a/debian/patches/11replace_doc_paths.patch b/debian/patches/11replace_doc_paths.patch new file mode 100644 index 0000000..b4b5045 --- /dev/null +++ b/debian/patches/11replace_doc_paths.patch @@ -0,0 +1,198 @@ +Author: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> +Description: Fix the references to configuration and pipe paths to match the locations Debian uses. +Forwarded: not-needed + +--- a/doc/screen.1 ++++ b/doc/screen.1 +@@ -103,7 +103,7 @@ + the invoking shell to the application (emacs in this case), because it is + forked from the parent screen process, not from the invoking shell. + .PP +-If \*Q/etc/utmp\*U is writable by ++If \*Q/run/utmp\*U is writable by + .IR screen , + an appropriate record will be written to this file for each window, and + removed when the window is terminated. +@@ -232,7 +232,7 @@ + The use of this option is discouraged. + .TP 5 + .BR \-l " and " \-ln +-turns login mode on or off (for /etc/utmp updating). ++turns login mode on or off (for /run/utmp updating). + This can also be defined through the \*Qdeflogin\*U .screenrc command. + .TP 5 + .BR \-ls " [" \fImatch ] +@@ -712,7 +712,7 @@ + + .SH CUSTOMIZATION + The \*Qsocket directory\*U defaults either to $HOME/.screen or simply to +-/tmp/screens or preferably to /usr/local/screens chosen at compile-time. If ++/tmp/screens or preferably to /run/screen chosen at compile-time. If + .I screen + is installed setuid-root, then the administrator + should compile +@@ -725,7 +725,7 @@ + When + .I screen + is invoked, it executes initialization commands from the files +-\*Q/usr/local/etc/screenrc\*U and ++\*Q/etc/screenrc\*U and + \*Q.screenrc\*U in the user's home directory. These are the \*Qprogrammer's + defaults\*U that can be overridden in the following ways: for the + global screenrc file +@@ -1953,7 +1953,7 @@ + The echo command may be used to annoy + .I screen + users with a 'message of the +-day'. Typically installed in a global /local/etc/screenrc. ++day'. Typically installed in a global /etc/screenrc. + The option \*Q\-n\*U may be used to suppress the line feed. + See also \*Qsleep\*U. + Echo is also useful for online checking of environment variables. +@@ -5087,14 +5087,14 @@ + .I screen + distribution package for private and global initialization files. + .IP $SYSSCREENRC +-.IP /usr/local/etc/screenrc ++.IP /etc/screenrc + .I screen + initialization commands + .IP $SCREENRC + .IP $HOME/.screenrc +-Read in after /usr/local/etc/screenrc ++Read in after /etc/screenrc + .IP $SCREENDIR/S\-<login> +-.IP /local/screens/S\-<login> ++.IP /run/screen/S\-<login> + Socket directories (default) + .IP /usr/tmp/screens/S\-<login> + Alternate socket directories. +@@ -5113,7 +5113,7 @@ + or + .IP /etc/termcap + Terminal capability databases +-.IP /etc/utmp ++.IP /run/utmp + Login records + .IP $LOCKPRG + Program that locks a terminal. +@@ -5235,9 +5235,9 @@ + must be installed as set-uid with owner root on most systems in order + to be able to correctly change the owner of the tty device file for + each window. +-Special permission may also be required to write the file \*Q/etc/utmp\*U. ++Special permission may also be required to write the file \*Q/run/utmp\*U. + .IP \(bu +-Entries in \*Q/etc/utmp\*U are not removed when ++Entries in \*Q/run/utmp\*U are not removed when + .I screen + is killed with SIGKILL. + This will cause some programs (like "w" or "rwho") +--- a/doc/screen.texinfo ++++ b/doc/screen.texinfo +@@ -184,7 +184,7 @@ + the invoking shell to the application (emacs in this case), because it is + forked from the parent screen process, not from the invoking shell. + +-If @file{/etc/utmp} is writable by @code{screen}, an appropriate record ++If @file{/run/utmp} is writable by @code{screen}, an appropriate record + will be written to this file for each window, and removed when the + window is closed. This is useful for working with @code{talk}, + @code{script}, @code{shutdown}, @code{rsend}, @code{sccs} and other +@@ -313,7 +313,7 @@ + + @item -l + @itemx -ln +-Turn login mode on or off (for @file{/etc/utmp} updating). This option ++Turn login mode on or off (for @file{/run/utmp} updating). This option + is equivalent to the @code{deflogin} command (@pxref{Login}). + + @item -ls [@var{match}] +@@ -496,7 +496,7 @@ + @cindex screenrc + When @code{screen} is invoked, it executes initialization commands from + the files @file{.screenrc} in the user's home directory and +-@file{/usr/local/etc/screenrc}. These defaults can be overridden in the ++@file{/etc/screenrc}. These defaults can be overridden in the + following ways: + For the global screenrc file @code{screen} searches for the environment + variable @code{$SYSSCREENRC} (this override feature may be disabled at +@@ -1088,7 +1088,7 @@ + @item logfile @var{filename} + Place where to collect logfiles. @xref{Log}. + @item login [@var{state}] +-Log the window in @file{/etc/utmp}. @xref{Login}. ++Log the window in @file{/run/utmp}. @xref{Login}. + @item logtstamp [@var{state}] + Configure logfile time-stamps. @xref{Log}. + @item mapdefault +@@ -2404,7 +2404,7 @@ + * Naming Windows:: Control the name of the window + * Console:: See the host's console messages + * Kill:: Destroy an unwanted window +-* Login:: Control @file{/etc/utmp} logging ++* Login:: Control @file{/run/utmp} logging + * Mode:: Control the file mode of the pty + * Monitor:: Watch for activity or inactivity in a window + * Windows:: List the active windows +@@ -2613,7 +2613,7 @@ + @kindex L + @deffn Command login [state] + (@kbd{C-a L})@* +-Adds or removes the entry in @file{/etc/utmp} for the current window. ++Adds or removes the entry in @file{/run/utmp} for the current window. + This controls whether or not the window is @dfn{logged in}. In addition + to this toggle, it is convenient to have ``log in'' and ``log out'' + keys. For instance, @code{bind I login on} and @code{bind O +@@ -5802,17 +5802,17 @@ + global initialization files. + + @item @code{$SYSSCREENRC} +-@itemx /local/etc/screenrc ++@itemx /etc/screenrc + @code{screen} initialization commands + + @item @code{$SCREENRC} + @itemx @code{$HOME}/.iscreenrc + @itemx @code{$HOME}/.screenrc +-Read in after /local/etc/screenrc ++Read in after /etc/screenrc + + @item @code{$SCREENDIR}/S-@var{login} + +-@item /local/screens/S-@var{login} ++@item /run/screen/S-@var{login} + Socket directories (default) + + @item /usr/tmp/screens/S-@var{login} +@@ -5835,7 +5835,7 @@ + @itemx /etc/termcap + Terminal capability databases + +-@item /etc/utmp ++@item /run/utmp + Login records + + @item @code{$LOCKPRG} +@@ -5945,10 +5945,10 @@ + in order to be able to + correctly change the owner of the tty device file for each window. + Special permission may also be required to write the file +-@file{/etc/utmp}. ++@file{/run/utmp}. + + @item +-Entries in @file{/etc/utmp} are not removed when @code{screen} is killed ++Entries in @file{/run/utmp} are not removed when @code{screen} is killed + with SIGKILL. This will cause some programs (like "w" or "rwho") to + advertise that a user is logged on who really isn't. + +@@ -6028,7 +6028,7 @@ + @cindex socket directory + + The socket directory defaults either to @file{$HOME/.screen} or simply to +-@file{/tmp/screens} or preferably to @file{/usr/local/screens} chosen at ++@file{/tmp/screens} or preferably to @file{/run/screen} chosen at + compile-time. If @code{screen} is installed + setuid root, then the administrator should compile screen with an + adequate (not NFS mounted) @code{SOCKDIR}. If @code{screen} is not diff --git a/debian/patches/13split_info_files.patch b/debian/patches/13split_info_files.patch new file mode 100644 index 0000000..c2f0d83 --- /dev/null +++ b/debian/patches/13split_info_files.patch @@ -0,0 +1,17 @@ +Author: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> +Description: Split the info files at 50k + This matches the distribution style of the orig tarball. +Last-Revised: 2013-05-16 by Axel Beckert <abe@debian.org> +Bug-Debian: https://bugs.debian.org/707530 + +--- a/doc/Makefile.in ++++ b/doc/Makefile.in +@@ -28,7 +28,7 @@ + + info screen.info: screen.texinfo + @rm -f screen.info* +- $(MAKEINFO) $(srcdir)/screen.texinfo -o screen.info ++ $(MAKEINFO) --split-size=50000 $(srcdir)/screen.texinfo -o screen.info + + install: installdirs + $(INSTALL_DATA) $(srcdir)/screen.1 $(DESTDIR)$(mandir)/man1/screen.1 diff --git a/debian/patches/26source_encoding.patch b/debian/patches/26source_encoding.patch new file mode 100644 index 0000000..5ede1cd --- /dev/null +++ b/debian/patches/26source_encoding.patch @@ -0,0 +1,357 @@ +Author: Ben Finney <ben@benfinney.id.au> +Description: Replace the composed characters with their respective description. +Bugs-Debian: https://bugs.debian.org/437024 + +Index: screen/process.c +=================================================================== +--- screen.orig/process.c 2015-06-13 23:33:02.469345223 +0200 ++++ screen/process.c 2015-06-13 23:33:02.469345223 +0200 +@@ -252,177 +252,177 @@ + + /* digraph table taken from old vim and rfc1345 */ + static struct digraph digraphs[MAX_DIGRAPH + 1] = { +- {{' ', ' '}, 160}, /* */ +- {{'N', 'S'}, 160}, /* */ +- {{'~', '!'}, 161}, /* */ +- {{'!', '!'}, 161}, /* */ +- {{'!', 'I'}, 161}, /* */ +- {{'c', '|'}, 162}, /* */ +- {{'c', 't'}, 162}, /* */ +- {{'$', '$'}, 163}, /* */ +- {{'P', 'd'}, 163}, /* */ +- {{'o', 'x'}, 164}, /* */ +- {{'C', 'u'}, 164}, /* */ +- {{'C', 'u'}, 164}, /* */ +- {{'E', 'u'}, 164}, /* */ +- {{'Y', '-'}, 165}, /* */ +- {{'Y', 'e'}, 165}, /* */ +- {{'|', '|'}, 166}, /* */ +- {{'B', 'B'}, 166}, /* */ +- {{'p', 'a'}, 167}, /* */ +- {{'S', 'E'}, 167}, /* */ +- {{'"', '"'}, 168}, /* */ +- {{'\'', ':'}, 168}, /* */ +- {{'c', 'O'}, 169}, /* */ +- {{'C', 'o'}, 169}, /* */ +- {{'a', '-'}, 170}, /* */ +- {{'<', '<'}, 171}, /* */ +- {{'-', ','}, 172}, /* */ +- {{'N', 'O'}, 172}, /* */ +- {{'-', '-'}, 173}, /* */ +- {{'r', 'O'}, 174}, /* */ +- {{'R', 'g'}, 174}, /* */ +- {{'-', '='}, 175}, /* */ +- {{'\'', 'm'}, 175}, /* */ +- {{'~', 'o'}, 176}, /* */ +- {{'D', 'G'}, 176}, /* */ +- {{'+', '-'}, 177}, /* */ +- {{'2', '2'}, 178}, /* */ +- {{'2', 'S'}, 178}, /* */ +- {{'3', '3'}, 179}, /* */ +- {{'3', 'S'}, 179}, /* */ +- {{'\'', '\''}, 180}, /* */ +- {{'j', 'u'}, 181}, /* */ +- {{'M', 'y'}, 181}, /* */ +- {{'p', 'p'}, 182}, /* */ +- {{'P', 'I'}, 182}, /* */ +- {{'~', '.'}, 183}, /* */ +- {{'.', 'M'}, 183}, /* */ +- {{',', ','}, 184}, /* */ +- {{'\'', ','}, 184}, /* */ +- {{'1', '1'}, 185}, /* */ +- {{'1', 'S'}, 185}, /* */ +- {{'o', '-'}, 186}, /* */ +- {{'>', '>'}, 187}, /* */ +- {{'1', '4'}, 188}, /* */ +- {{'1', '2'}, 189}, /* */ +- {{'3', '4'}, 190}, /* */ +- {{'~', '?'}, 191}, /* */ +- {{'?', '?'}, 191}, /* */ +- {{'?', 'I'}, 191}, /* */ +- {{'A', '`'}, 192}, /* */ +- {{'A', '!'}, 192}, /* */ +- {{'A', '\''}, 193}, /* */ +- {{'A', '^'}, 194}, /* */ +- {{'A', '>'}, 194}, /* */ +- {{'A', '~'}, 195}, /* */ +- {{'A', '?'}, 195}, /* */ +- {{'A', '"'}, 196}, /* */ +- {{'A', ':'}, 196}, /* */ +- {{'A', '@'}, 197}, /* */ +- {{'A', 'A'}, 197}, /* */ +- {{'A', 'E'}, 198}, /* */ +- {{'C', ','}, 199}, /* */ +- {{'E', '`'}, 200}, /* */ +- {{'E', '!'}, 200}, /* */ +- {{'E', '\''}, 201}, /* */ +- {{'E', '^'}, 202}, /* */ +- {{'E', '>'}, 202}, /* */ +- {{'E', '"'}, 203}, /* */ +- {{'E', ':'}, 203}, /* */ +- {{'I', '`'}, 204}, /* */ +- {{'I', '!'}, 204}, /* */ +- {{'I', '\''}, 205}, /* */ +- {{'I', '^'}, 206}, /* */ +- {{'I', '>'}, 206}, /* */ +- {{'I', '"'}, 207}, /* */ +- {{'I', ':'}, 207}, /* */ +- {{'D', '-'}, 208}, /* */ +- {{'N', '~'}, 209}, /* */ +- {{'N', '?'}, 209}, /* */ +- {{'O', '`'}, 210}, /* */ +- {{'O', '!'}, 210}, /* */ +- {{'O', '\''}, 211}, /* */ +- {{'O', '^'}, 212}, /* */ +- {{'O', '>'}, 212}, /* */ +- {{'O', '~'}, 213}, /* */ +- {{'O', '?'}, 213}, /* */ +- {{'O', '"'}, 214}, /* */ +- {{'O', ':'}, 214}, /* */ +- {{'/', '\\'}, 215}, /* */ +- {{'*', 'x'}, 215}, /* */ +- {{'O', '/'}, 216}, /* */ +- {{'U', '`'}, 217}, /* */ +- {{'U', '!'}, 217}, /* */ +- {{'U', '\''}, 218}, /* */ +- {{'U', '^'}, 219}, /* */ +- {{'U', '>'}, 219}, /* */ +- {{'U', '"'}, 220}, /* */ +- {{'U', ':'}, 220}, /* */ +- {{'Y', '\''}, 221}, /* */ +- {{'I', 'p'}, 222}, /* */ +- {{'T', 'H'}, 222}, /* */ +- {{'s', 's'}, 223}, /* */ +- {{'s', '"'}, 223}, /* */ +- {{'a', '`'}, 224}, /* */ +- {{'a', '!'}, 224}, /* */ +- {{'a', '\''}, 225}, /* */ +- {{'a', '^'}, 226}, /* */ +- {{'a', '>'}, 226}, /* */ +- {{'a', '~'}, 227}, /* */ +- {{'a', '?'}, 227}, /* */ +- {{'a', '"'}, 228}, /* */ +- {{'a', ':'}, 228}, /* */ +- {{'a', 'a'}, 229}, /* */ +- {{'a', 'e'}, 230}, /* */ +- {{'c', ','}, 231}, /* */ +- {{'e', '`'}, 232}, /* */ +- {{'e', '!'}, 232}, /* */ +- {{'e', '\''}, 233}, /* */ +- {{'e', '^'}, 234}, /* */ +- {{'e', '>'}, 234}, /* */ +- {{'e', '"'}, 235}, /* */ +- {{'e', ':'}, 235}, /* */ +- {{'i', '`'}, 236}, /* */ +- {{'i', '!'}, 236}, /* */ +- {{'i', '\''}, 237}, /* */ +- {{'i', '^'}, 238}, /* */ +- {{'i', '>'}, 238}, /* */ +- {{'i', '"'}, 239}, /* */ +- {{'i', ':'}, 239}, /* */ +- {{'d', '-'}, 240}, /* */ +- {{'n', '~'}, 241}, /* */ +- {{'n', '?'}, 241}, /* */ +- {{'o', '`'}, 242}, /* */ +- {{'o', '!'}, 242}, /* */ +- {{'o', '\''}, 243}, /* */ +- {{'o', '^'}, 244}, /* */ +- {{'o', '>'}, 244}, /* */ +- {{'o', '~'}, 245}, /* */ +- {{'o', '?'}, 245}, /* */ +- {{'o', '"'}, 246}, /* */ +- {{'o', ':'}, 246}, /* */ +- {{':', '-'}, 247}, /* */ +- {{'o', '/'}, 248}, /* */ +- {{'u', '`'}, 249}, /* */ +- {{'u', '!'}, 249}, /* */ +- {{'u', '\''}, 250}, /* */ +- {{'u', '^'}, 251}, /* */ +- {{'u', '>'}, 251}, /* */ +- {{'u', '"'}, 252}, /* */ +- {{'u', ':'}, 252}, /* */ +- {{'y', '\''}, 253}, /* */ +- {{'i', 'p'}, 254}, /* */ +- {{'t', 'h'}, 254}, /* */ +- {{'y', '"'}, 255}, /* */ +- {{'y', ':'}, 255}, /* */ +- {{'"', '['}, 196}, /* */ +- {{'"', '\\'}, 214}, /* */ +- {{'"', ']'}, 220}, /* */ +- {{'"', '{'}, 228}, /* */ +- {{'"', '|'}, 246}, /* */ +- {{'"', '}'}, 252}, /* */ +- {{'"', '~'}, 223} /* */ ++ {{' ', ' '}, 0x00a0}, /* NO-BREAK SPACE */ ++ {{'N', 'S'}, 0x00a0}, /* NO-BREAK SPACE */ ++ {{'~', '!'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */ ++ {{'!', '!'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */ ++ {{'!', 'I'}, 0x00a1}, /* INVERTED EXCLAMATION MARK */ ++ {{'c', '|'}, 0x00a2}, /* CENT SIGN */ ++ {{'c', 't'}, 0x00a2}, /* CENT SIGN */ ++ {{'$', '$'}, 0x00a3}, /* POUND SIGN */ ++ {{'P', 'd'}, 0x00a3}, /* POUND SIGN */ ++ {{'o', 'x'}, 0x00a4}, /* CURRENCY SIGN */ ++ {{'C', 'u'}, 0x00a4}, /* CURRENCY SIGN */ ++ {{'C', 'u'}, 0x00a4}, /* CURRENCY SIGN */ ++ {{'E', 'u'}, 0x00a4}, /* CURRENCY SIGN */ ++ {{'Y', '-'}, 0x00a5}, /* YEN SIGN */ ++ {{'Y', 'e'}, 0x00a5}, /* YEN SIGN */ ++ {{'|', '|'}, 0x00a6}, /* BROKEN BAR */ ++ {{'B', 'B'}, 0x00a6}, /* BROKEN BAR */ ++ {{'p', 'a'}, 0x00a7}, /* SECTION SIGN */ ++ {{'S', 'E'}, 0x00a7}, /* SECTION SIGN */ ++ {{'"', '"'}, 0x00a8}, /* DIAERESIS */ ++ {{'\'', ':'}, 0x00a8}, /* DIAERESIS */ ++ {{'c', 'O'}, 0x00a9}, /* COPYRIGHT SIGN */ ++ {{'C', 'o'}, 0x00a9}, /* COPYRIGHT SIGN */ ++ {{'-', 'a'}, 0x00aa}, /* FEMININE ORDINAL INDICATOR */ ++ {{'<', '<'}, 0x00ab}, /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ ++ {{'-', ','}, 0x00ac}, /* NOT SIGN */ ++ {{'N', 'O'}, 0x00ac}, /* NOT SIGN */ ++ {{'-', '-'}, 0x00ad}, /* SOFT HYPHEN */ ++ {{'r', 'O'}, 0x00ae}, /* REGISTERED SIGN */ ++ {{'R', 'g'}, 0x00ae}, /* REGISTERED SIGN */ ++ {{'-', '='}, 0x00af}, /* MACRON */ ++ {{'\'', 'm'}, 0x00af}, /* MACRON */ ++ {{'~', 'o'}, 0x00b0}, /* DEGREE SIGN */ ++ {{'D', 'G'}, 0x00b0}, /* DEGREE SIGN */ ++ {{'+', '-'}, 0x00b1}, /* PLUS-MINUS SIGN */ ++ {{'2', '2'}, 0x00b2}, /* SUPERSCRIPT TWO */ ++ {{'2', 'S'}, 0x00b2}, /* SUPERSCRIPT TWO */ ++ {{'3', '3'}, 0x00b3}, /* SUPERSCRIPT THREE */ ++ {{'3', 'S'}, 0x00b3}, /* SUPERSCRIPT THREE */ ++ {{'\'', '\''}, 0x00b4}, /* ACUTE ACCENT */ ++ {{'j', 'u'}, 0x00b5}, /* MICRO SIGN */ ++ {{'M', 'y'}, 0x00b5}, /* MICRO SIGN */ ++ {{'p', 'p'}, 0x00b6}, /* PILCROW SIGN */ ++ {{'P', 'I'}, 0x00b6}, /* PILCROW SIGN */ ++ {{'~', '.'}, 0x00b7}, /* MIDDLE DOT */ ++ {{'.', 'M'}, 0x00b7}, /* MIDDLE DOT */ ++ {{',', ','}, 0x00b8}, /* CEDILLA */ ++ {{'\'', ','}, 0x00b8}, /* CEDILLA */ ++ {{'1', '1'}, 0x00b9}, /* SUPERSCRIPT ONE */ ++ {{'1', 'S'}, 0x00b9}, /* SUPERSCRIPT ONE */ ++ {{'-', 'o'}, 0x00ba}, /* MASCULINE ORDINAL INDICATOR */ ++ {{'>', '>'}, 0x00bb}, /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ ++ {{'1', '4'}, 0x00bc}, /* VULGAR FRACTION ONE QUARTER */ ++ {{'1', '2'}, 0x00bd}, /* VULGAR FRACTION ONE HALF */ ++ {{'3', '4'}, 0x00be}, /* VULGAR FRACTION THREE QUARTERS */ ++ {{'~', '?'}, 0x00bf}, /* INVERTED QUESTION MARK */ ++ {{'?', '?'}, 0x00bf}, /* INVERTED QUESTION MARK */ ++ {{'?', 'I'}, 0x00bf}, /* INVERTED QUESTION MARK */ ++ {{'A', '`'}, 0x00c0}, /* LATIN CAPITAL LETTER A WITH GRAVE */ ++ {{'A', '!'}, 0x00c0}, /* LATIN CAPITAL LETTER A WITH GRAVE */ ++ {{'A', '\''}, 0x00c1}, /* LATIN CAPITAL LETTER A WITH ACUTE */ ++ {{'A', '^'}, 0x00c2}, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ ++ {{'A', '>'}, 0x00c2}, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ ++ {{'A', '~'}, 0x00c3}, /* LATIN CAPITAL LETTER A WITH TILDE */ ++ {{'A', '?'}, 0x00c3}, /* LATIN CAPITAL LETTER A WITH TILDE */ ++ {{'A', '"'}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */ ++ {{'A', ':'}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */ ++ {{'A', '@'}, 0x00c5}, /* LATIN CAPITAL LETTER A WITH RING ABOVE */ ++ {{'A', 'A'}, 0x00c5}, /* LATIN CAPITAL LETTER A WITH RING ABOVE */ ++ {{'A', 'E'}, 0x00c6}, /* LATIN CAPITAL LETTER AE */ ++ {{'C', ','}, 0x00c7}, /* LATIN CAPITAL LETTER C WITH CEDILLA */ ++ {{'E', '`'}, 0x00c8}, /* LATIN CAPITAL LETTER E WITH GRAVE */ ++ {{'E', '!'}, 0x00c8}, /* LATIN CAPITAL LETTER E WITH GRAVE */ ++ {{'E', '\''}, 0x00c9}, /* LATIN CAPITAL LETTER E WITH ACUTE */ ++ {{'E', '^'}, 0x00ca}, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */ ++ {{'E', '>'}, 0x00ca}, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */ ++ {{'E', '"'}, 0x00cb}, /* LATIN CAPITAL LETTER E WITH DIAERESIS */ ++ {{'E', ':'}, 0x00cb}, /* LATIN CAPITAL LETTER E WITH DIAERESIS */ ++ {{'I', '`'}, 0x00cc}, /* LATIN CAPITAL LETTER I WITH GRAVE */ ++ {{'I', '!'}, 0x00cc}, /* LATIN CAPITAL LETTER I WITH GRAVE */ ++ {{'I', '\''}, 0x00cd}, /* LATIN CAPITAL LETTER I WITH ACUTE */ ++ {{'I', '^'}, 0x00ce}, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ ++ {{'I', '>'}, 0x00ce}, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ ++ {{'I', '"'}, 0x00cf}, /* LATIN CAPITAL LETTER I WITH DIAERESIS */ ++ {{'I', ':'}, 0x00cf}, /* LATIN CAPITAL LETTER I WITH DIAERESIS */ ++ {{'D', '-'}, 0x00d0}, /* LATIN CAPITAL LETTER ETH */ ++ {{'N', '~'}, 0x00d1}, /* LATIN CAPITAL LETTER N WITH TILDE */ ++ {{'N', '?'}, 0x00d1}, /* LATIN CAPITAL LETTER N WITH TILDE */ ++ {{'O', '`'}, 0x00d2}, /* LATIN CAPITAL LETTER O WITH GRAVE */ ++ {{'O', '!'}, 0x00d2}, /* LATIN CAPITAL LETTER O WITH GRAVE */ ++ {{'O', '\''}, 0x00d3}, /* LATIN CAPITAL LETTER O WITH ACUTE */ ++ {{'O', '^'}, 0x00d4}, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ ++ {{'O', '>'}, 0x00d4}, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ ++ {{'O', '~'}, 0x00d5}, /* LATIN CAPITAL LETTER O WITH TILDE */ ++ {{'O', '?'}, 0x00d5}, /* LATIN CAPITAL LETTER O WITH TILDE */ ++ {{'O', '"'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */ ++ {{'O', ':'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */ ++ {{'/', '\\'}, 0x00d7}, /* MULTIPLICATION SIGN */ ++ {{'*', 'x'}, 0x00d7}, /* MULTIPLICATION SIGN */ ++ {{'O', '/'}, 0x00d8}, /* LATIN CAPITAL LETTER O WITH STROKE */ ++ {{'U', '`'}, 0x00d9}, /* LATIN CAPITAL LETTER U WITH GRAVE */ ++ {{'U', '!'}, 0x00d9}, /* LATIN CAPITAL LETTER U WITH GRAVE */ ++ {{'U', '\''}, 0x00da}, /* LATIN CAPITAL LETTER U WITH ACUTE */ ++ {{'U', '^'}, 0x00db}, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */ ++ {{'U', '>'}, 0x00db}, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */ ++ {{'U', '"'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */ ++ {{'U', ':'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */ ++ {{'Y', '\''}, 0x00dd}, /* LATIN CAPITAL LETTER Y WITH ACUTE */ ++ {{'I', 'p'}, 0x00de}, /* LATIN CAPITAL LETTER THORN */ ++ {{'T', 'H'}, 0x00de}, /* LATIN CAPITAL LETTER THORN */ ++ {{'s', 's'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */ ++ {{'s', '"'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */ ++ {{'a', '`'}, 0x00e0}, /* LATIN SMALL LETTER A WITH GRAVE */ ++ {{'a', '!'}, 0x00e0}, /* LATIN SMALL LETTER A WITH GRAVE */ ++ {{'a', '\''}, 0x00e1}, /* LATIN SMALL LETTER A WITH ACUTE */ ++ {{'a', '^'}, 0x00e2}, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ ++ {{'a', '>'}, 0x00e2}, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ ++ {{'a', '~'}, 0x00e3}, /* LATIN SMALL LETTER A WITH TILDE */ ++ {{'a', '?'}, 0x00e3}, /* LATIN SMALL LETTER A WITH TILDE */ ++ {{'a', '"'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */ ++ {{'a', ':'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */ ++ {{'a', 'a'}, 0x00e5}, /* LATIN SMALL LETTER A WITH RING ABOVE */ ++ {{'a', 'e'}, 0x00e6}, /* LATIN SMALL LETTER AE */ ++ {{'c', ','}, 0x00e7}, /* LATIN SMALL LETTER C WITH CEDILLA */ ++ {{'e', '`'}, 0x00e8}, /* LATIN SMALL LETTER E WITH GRAVE */ ++ {{'e', '!'}, 0x00e8}, /* LATIN SMALL LETTER E WITH GRAVE */ ++ {{'e', '\''}, 0x00e9}, /* LATIN SMALL LETTER E WITH ACUTE */ ++ {{'e', '^'}, 0x00ea}, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */ ++ {{'e', '>'}, 0x00ea}, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */ ++ {{'e', '"'}, 0x00eb}, /* LATIN SMALL LETTER E WITH DIAERESIS */ ++ {{'e', ':'}, 0x00eb}, /* LATIN SMALL LETTER E WITH DIAERESIS */ ++ {{'i', '`'}, 0x00ec}, /* LATIN SMALL LETTER I WITH GRAVE */ ++ {{'i', '!'}, 0x00ec}, /* LATIN SMALL LETTER I WITH GRAVE */ ++ {{'i', '\''}, 0x00ed}, /* LATIN SMALL LETTER I WITH ACUTE */ ++ {{'i', '^'}, 0x00ee}, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ ++ {{'i', '>'}, 0x00ee}, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ ++ {{'i', '"'}, 0x00ef}, /* LATIN SMALL LETTER I WITH DIAERESIS */ ++ {{'i', ':'}, 0x00ef}, /* LATIN SMALL LETTER I WITH DIAERESIS */ ++ {{'d', '-'}, 0x00f0}, /* LATIN SMALL LETTER ETH */ ++ {{'n', '~'}, 0x00f1}, /* LATIN SMALL LETTER N WITH TILDE */ ++ {{'n', '?'}, 0x00f1}, /* LATIN SMALL LETTER N WITH TILDE */ ++ {{'o', '`'}, 0x00f2}, /* LATIN SMALL LETTER O WITH GRAVE */ ++ {{'o', '!'}, 0x00f2}, /* LATIN SMALL LETTER O WITH GRAVE */ ++ {{'o', '\''}, 0x00f3}, /* LATIN SMALL LETTER O WITH ACUTE */ ++ {{'o', '^'}, 0x00f4}, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ ++ {{'o', '>'}, 0x00f4}, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ ++ {{'o', '~'}, 0x00f5}, /* LATIN SMALL LETTER O WITH TILDE */ ++ {{'o', '?'}, 0x00f5}, /* LATIN SMALL LETTER O WITH TILDE */ ++ {{'o', '"'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */ ++ {{'o', ':'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */ ++ {{'-', ':'}, 0x00f7}, /* DIVISION SIGN */ ++ {{'o', '/'}, 0x00f8}, /* LATIN SMALL LETTER O WITH STROKE */ ++ {{'u', '`'}, 0x00f9}, /* LATIN SMALL LETTER U WITH GRAVE */ ++ {{'u', '!'}, 0x00f9}, /* LATIN SMALL LETTER U WITH GRAVE */ ++ {{'u', '\''}, 0x00fa}, /* LATIN SMALL LETTER U WITH ACUTE */ ++ {{'u', '^'}, 0x00fb}, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */ ++ {{'u', '>'}, 0x00fb}, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */ ++ {{'u', '"'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */ ++ {{'u', ':'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */ ++ {{'y', '\''}, 0x00fd}, /* LATIN SMALL LETTER Y WITH ACUTE */ ++ {{'i', 'p'}, 0x00fe}, /* LATIN SMALL LETTER THORN */ ++ {{'t', 'h'}, 0x00fe}, /* LATIN SMALL LETTER THORN */ ++ {{'y', '"'}, 0x00ff}, /* LATIN SMALL LETTER Y WITH DIAERESIS */ ++ {{'y', ':'}, 0x00ff}, /* LATIN SMALL LETTER Y WITH DIAERESIS */ ++ {{'"', '['}, 0x00c4}, /* LATIN CAPITAL LETTER A WITH DIAERESIS */ ++ {{'"', '\\'}, 0x00d6}, /* LATIN CAPITAL LETTER O WITH DIAERESIS */ ++ {{'"', ']'}, 0x00dc}, /* LATIN CAPITAL LETTER U WITH DIAERESIS */ ++ {{'"', '{'}, 0x00e4}, /* LATIN SMALL LETTER A WITH DIAERESIS */ ++ {{'"', '|'}, 0x00f6}, /* LATIN SMALL LETTER O WITH DIAERESIS */ ++ {{'"', '}'}, 0x00fc}, /* LATIN SMALL LETTER U WITH DIAERESIS */ ++ {{'"', '~'}, 0x00df}, /* LATIN SMALL LETTER SHARP S */ + }; + + #define RESIZE_FLAG_H 1 diff --git a/debian/patches/45suppress_remap.patch b/debian/patches/45suppress_remap.patch new file mode 100644 index 0000000..5b0ae85 --- /dev/null +++ b/debian/patches/45suppress_remap.patch @@ -0,0 +1,15 @@ +Author: Loic Minier <lool@dooz.org> +Description: Unbreak several useful keybindings. +Bugs-Debian: https://bugs.debian.org/484647 + +--- a/termcap.c ++++ b/termcap.c +@@ -551,8 +551,6 @@ + else + break; + } +- if (n < KMAP_KEYS) +- domap = 1; + if (map == 0 && domap) + return 0; + if (map && !domap) diff --git a/debian/patches/52fix_screen_utf8_nfd.patch b/debian/patches/52fix_screen_utf8_nfd.patch new file mode 100644 index 0000000..504dfc4 --- /dev/null +++ b/debian/patches/52fix_screen_utf8_nfd.patch @@ -0,0 +1,41 @@ +Author: Kenta Murata (mrkn) <mrkn@ruby-lang.org> +Reviewed-By: Nobuhiro Iwamatsu <iwamatsu@debian.org> +Description: screen outputs screen "ÿ" after a connected character. + This is a character without the need. + This happens in UTF-8 environment. + Before : screen$ ruby1.9.1 -e 'puts "\u304b\u3099.."' + がÿ... + patch applied : screen $ ruby1.9.1 -e 'puts "\u304b\u3099.."' + が.. +Origin: https://d.hatena.ne.jp/mrkn/20101014/fix_screen_utf8_nfd_bug +Bugs-Debian: https://bugs.debian.org/600246 +Bugs-Debian: https://bugs.debian.org/677512 + +Index: screen/ansi.c +=================================================================== +--- screen.orig/ansi.c 2012-03-20 22:15:02.000000000 +0100 ++++ screen/ansi.c 2012-03-20 22:41:45.000000000 +0100 +@@ -725,6 +725,10 @@ + LPutChar(&curr->w_layer, &omc, ox, oy); + LGotoPos(&curr->w_layer, curr->w_x, curr->w_y); + } ++ if (curr->w_mbcs) ++ { ++ curr->w_rend.mbcs = curr->w_mbcs = 0; ++ } + break; + } + font = curr->w_rend.font; +Index: screen/display.c +=================================================================== +--- screen.orig/display.c 2012-03-20 22:41:28.000000000 +0100 ++++ screen/display.c 2012-03-20 22:41:45.000000000 +0100 +@@ -603,7 +603,7 @@ + D_x += D_AM ? 1 : -1; + D_mbcs = 0; + } +- else if (utf8_isdouble(c)) ++ else if (utf8_isdouble(c) || (c >= 0xd800 && c < 0xe000)) + { + D_mbcs = c; + D_x++; diff --git a/debian/patches/58-show-encoding-hardstatus.patch b/debian/patches/58-show-encoding-hardstatus.patch new file mode 100644 index 0000000..d752aee --- /dev/null +++ b/debian/patches/58-show-encoding-hardstatus.patch @@ -0,0 +1,42 @@ +Description: show encoding in hardstatus +Author: Yi-Jheng Lin <yzlin@cs.nctu.edu.tw> +Origin: https://svnweb.freebsd.org/ports/head/sysutils/screen/files/opt-showencoding?view=markup +Reviewed-By: rascov <rascov@rascov.tw> +Reviewed-By: Dustin Kirkland <kirkland@ubuntu.com> +Last-Update: Wed Feb 11 05:51:31 CST 2009 +Bug-FreeBSD: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=124492 +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/screen/+bug/286810 +Bug-Debian: https://bugs.debian.org/533498 + +--- a/screen.c ++++ b/screen.c +@@ -2753,6 +2753,19 @@ + p += strlen(p) - 1; + break; + ++ #ifdef ENCODINGS ++ case 'e': ++ *p = 0; ++ D_encoding = nwin_options.encoding > 0 ? nwin_options.encoding : 0; ++ if (win && win->w_encoding) ++ { ++ *p++ = ' '; ++ strcpy(p, EncodingName(win->w_encoding)); ++ } ++ p += strlen(p) - 1; ++ break; ++ #endif ++ + case '{': + { + char rbuf[128]; +--- a/process.c ++++ b/process.c +@@ -3784,6 +3784,7 @@ + { + WinSwitchEncoding(fore, n); + ResetCharsets(fore); ++ RedisplayDisplays(0); + } + else if (i && display) + D_encoding = n; diff --git a/debian/patches/60-screen-4.2.1-debian4.1.0-compatibility.patch b/debian/patches/60-screen-4.2.1-debian4.1.0-compatibility.patch new file mode 100644 index 0000000..6391e0c --- /dev/null +++ b/debian/patches/60-screen-4.2.1-debian4.1.0-compatibility.patch @@ -0,0 +1,57 @@ +Description: Patch to make 4.2.1 compatible with Debian's 4.1.0 and + 4.2.0 packages 4.2.1 includes the Debian patches to extend the login + name and $TERM length, but uses even larger values. This causes + screen clients to no more be able to talk to older screen + servers. See #644788 for a discussion of the same issue with earlier + release combinations (4.1.0 vs 4.0.3). + . + For now this patch sets the mentioned values back to those which + werew in use in Debian before (and seemed to be large enough for use + in Debian). +Author: Axel Beckert <abe@debian.org> +Forwarded: no + +--- a/os.h ++++ b/os.h +@@ -524,6 +524,6 @@ + /* Changing those you won't be able to attach to your old sessions + * when changing those values in official tree don't forget to bump + * MSG_VERSION */ +-#define MAXTERMLEN 32 +-#define MAXLOGINLEN 256 ++#define MAXTERMLEN 40 ++#define MAXLOGINLEN 50 + +--- a/screen.h ++++ b/screen.h +@@ -186,7 +186,7 @@ + * 4: screen version 4.2.1 (bumped once again due to changed terminal and login length) + * 5: screen version 4.4.0 (fix screenterm size) + */ +-#define MSG_VERSION 5 ++#define MSG_VERSION 2 + + #define MSG_REVISION (('m'<<24) | ('s'<<16) | ('g'<<8) | MSG_VERSION) + struct msg +@@ -205,7 +205,7 @@ + int nargs; + char line[MAXPATHLEN]; + char dir[MAXPATHLEN]; +- char screenterm[MAXTERMLEN + 1]; /* is screen really "screen" ? */ ++ char screenterm[20]; /* is screen really "screen" ? */ + } + create; + struct +--- a/socket.c ++++ b/socket.c +@@ -723,8 +723,8 @@ + return; + } + if (nwin->term != nwin_undef.term) +- strncpy(m.m.create.screenterm, nwin->term, MAXTERMLEN); +- m.m.create.screenterm[MAXTERMLEN] = '\0'; ++ strncpy(m.m.create.screenterm, nwin->term, 20-1); ++ m.m.create.screenterm[20-1] = '\0'; + m.protocol_revision = MSG_REVISION; + debug1("SendCreateMsg writing '%s'\n", m.m.create.line); + if (write(s, (char *) &m, sizeof m) != sizeof m) diff --git a/debian/patches/61-default-PATH_MAX-if-undefined-for-hurd.patch b/debian/patches/61-default-PATH_MAX-if-undefined-for-hurd.patch new file mode 100644 index 0000000..1f07340 --- /dev/null +++ b/debian/patches/61-default-PATH_MAX-if-undefined-for-hurd.patch @@ -0,0 +1,38 @@ +Description: Set PATH_MAX to 4096 if undefined + Fixes FTBFS since 4.4.0 on GNU/Hurd. Updated to add one more occurrence for 4.5.0. +Author: Axel Beckert <abe@debian.org> +Bug: https://savannah.gnu.org/bugs/?50089 +Last-Updated: 2017-01-18 + +--- a/tty.sh ++++ b/tty.sh +@@ -1512,6 +1512,13 @@ + return 0; + } + ++/* ++ * Define PATH_MAX to 4096 if it's not defined, like on GNU/Hurd ++ */ ++ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif + + int + CheckTtyname (tty) +--- a/screen.h ++++ b/screen.h +@@ -109,6 +109,13 @@ + # define DEFAULT_BUFFERFILE "/tmp/screen-exchange" + #endif + ++/* ++ * Define PATH_MAX to 4096 if it's not defined, like on GNU/Hurd ++ */ ++ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif + + #if defined(hpux) && !(defined(VSUSP) && defined(VDSUSP) && defined(VWERASE) && defined(VLNEXT)) + # define HPUX_LTCHARS_HACK diff --git a/debian/patches/63-add-utempter-switch.patch b/debian/patches/63-add-utempter-switch.patch new file mode 100644 index 0000000..800f092 --- /dev/null +++ b/debian/patches/63-add-utempter-switch.patch @@ -0,0 +1,24 @@ +Description: Add guarding commandline option around libutempter check +Author: Axel Beckert <abe@debian.org> +Forwarded: not-yet +Bug-Debian: https://bugs.debian.org/819781 + +--- a/configure.ac ++++ b/configure.ac +@@ -841,6 +841,8 @@ + ], + [int x = DEAD_PROCESS; pututline((struct utmp *)0); getutent();], AC_DEFINE(GETUTENT), LIBS="$olibs") + ) ++AC_ARG_ENABLE(utempter, [ --enable-utempter enable utempter support]) ++if test "$enable_pam" = "yes"; then + AC_CHECKING(ut_host) + AC_TRY_COMPILE([ + #include <time.h> +@@ -857,6 +859,7 @@ + AC_DEFINE(HAVE_UTEMPTER) + LIBS="$LIBS -lutempter" + fi ++fi + + dnl + dnl **** loadav **** diff --git a/debian/patches/64-fix-manpage-typos-reported-by-lintian.patch b/debian/patches/64-fix-manpage-typos-reported-by-lintian.patch new file mode 100644 index 0000000..52225c9 --- /dev/null +++ b/debian/patches/64-fix-manpage-typos-reported-by-lintian.patch @@ -0,0 +1,82 @@ +Description: Fix spelling errors found by Lintian +Author: Axel Beckert <abe@debian.org> +Forwarded: not-yet + +--- a/NEWS.3.5 ++++ b/NEWS.3.5 +@@ -27,7 +27,7 @@ + Please run the 'newsyntax' script on your old screenrc files! + + * Emacs style isearch added to copy mode. Try ^A ESC ^R screen ^R ^R +- to locate the last three occurences of the word 'screen' in the ++ to locate the last three occurrences of the word 'screen' in the + history buffer. + + * New command 'silence'. Alarms the user whenever there was inactivity +--- a/doc/screen.1 ++++ b/doc/screen.1 +@@ -1434,7 +1434,7 @@ + \fBw\fP, \fBb\fP, and \fBe\fP@move the cursor word by word. + \fBB\fP, \fBE\fP@move the cursor WORD by WORD (as in vi). + \fBf/F\fP, \fBt/T\fP@T{ +-move the cursor forward/backward to the next occurence of the ++move the cursor forward/backward to the next occurrence of the + target. (eg, '3fy' will move the cursor to the 3rd 'y' to the right.) + T} + \fB;\fP and \fB,\fP@T{ +@@ -1451,7 +1451,7 @@ + \fBC-b\fP and \fBC-f\fP@scroll the display up/down a full screen. + .TE + .\"\fBf\fP,\fBt\fP, \fBF\fP, \fBT\fP@T{ +-.\"move the cursor forward/backward to the next occurence of the target. ++.\"move the cursor forward/backward to the next occurrence of the target. + .\"T} + + .PP +@@ -1483,7 +1483,7 @@ + Example: \*QC-a C-[ H 10 j 5 Y\*U will copy lines + 11 to 15 into the paste buffer. + .PP +-The folllowing search keys are defined: ++The following search keys are defined: + .IP + \fB/\fP \fIVi\fP-like search forward. + .IP +@@ -2161,7 +2161,7 @@ + This forces any currently selected region to be automatically + resized at least a certain \fIwidth\fP and \fIheight\fP. All + other surrounding regions will be resized in order to accommodate. +-This constraint follows everytime the \*Qfocus\*U command is ++This constraint follows every time the \*Qfocus\*U command is + used. The \*Qresize\*U command can be used to increase either + dimension of a region, but never below what is set with + \*Qfocusminsize\*U. The underscore `_' is a synonym for +@@ -3093,7 +3093,7 @@ + .I screen + will prompt for how you would like to resize the current region. + +-See \*Qfocusminsize\*U if you want to restrict the minimun size a region ++See \*Qfocusminsize\*U if you want to restrict the minimum size a region + can have. + .RE + .RE +--- a/doc/screen.texinfo ++++ b/doc/screen.texinfo +@@ -2211,7 +2211,7 @@ + Without any arguments, @code{screen} will prompt for how you would + like to resize the current region. + +-See @code{focusminsize} if you want to restrict the minimun size a region can have. ++See @code{focusminsize} if you want to restrict the minimum size a region can have. + + @end deffn + +@@ -3689,7 +3689,7 @@ + + @noindent + @kbd{f}/@kbd{F}, @kbd{t}/@kbd{T} move the cursor forward/backward to the +-next occurence of the target. (eg, '3fy' will move the cursor to the 3rd ++next occurrence of the target. (eg, '3fy' will move the cursor to the 3rd + 'y' to the right.) + + @noindent diff --git a/debian/patches/80_session_creation_docs.patch b/debian/patches/80_session_creation_docs.patch new file mode 100644 index 0000000..da99fe7 --- /dev/null +++ b/debian/patches/80_session_creation_docs.patch @@ -0,0 +1,74 @@ +Author: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> +Description: Add lookup code for the creation time of each session. + Requires digging in /proc/$pid and /proc/uptime, though, so it's + definitely no candidate for the Beautiful C contest. + . + Affects screen's behaviour in the following situations: + . + * 'screen -ls' lists available sessions sorted chronologically + * 'screen -RR' now picks the youngest session instead of an + arbitrary one + . + Patch 1/3: documentation +Bug-Debian: https://bugs.debian.org/206572 +Forwarded: not-yet + +--- a/doc/screen.1 ++++ b/doc/screen.1 +@@ -244,7 +244,7 @@ + .IR screen , + but prints a list of + .I pid.tty.host +-strings identifying your ++strings and creation timestamps identifying your + .I screen + sessions. + Sessions marked `detached' can be resumed with \*Qscreen \-r\*U. Those marked +@@ -351,7 +351,7 @@ + .I screen + is detached. Otherwise lists available sessions. + .B \-RR +-attempts to resume the first detached ++attempts to resume the youngest (in terms of creation time) detached + .I screen + session it finds. If successful, all other command-line options are ignored. + If no detached session exists, starts a new session using the specified +@@ -361,6 +361,8 @@ + .I screen + is run as a login-shell (actually screen uses \*Q\-xRR\*U in that case). + For combinations with the \fB\-d\fP/\fB\-D\fP option see there. ++.B Note: ++Time-based session selection is a Debian addition. + .TP 5 + .BI "\-s " program + sets the default shell to the program specified, instead of the value +--- a/doc/screen.texinfo ++++ b/doc/screen.texinfo +@@ -320,7 +320,8 @@ + @itemx -list [@var{match}] + Do not start @code{screen}, but instead print a list of session + identification strings (usually of the form @var{pid.tty.host}; +-@pxref{Session Name}). Sessions marked @samp{detached} can be resumed ++@pxref{Session Name}) and the corresponding creation timestamps. ++Sessions marked @samp{detached} can be resumed + with @code{screen -r}. Those marked @samp{attached} are running and + have a controlling terminal. If the session runs in multiuser mode, + it is marked @samp{multi}. Sessions marked as @samp{unreachable} either +@@ -414,14 +415,15 @@ + when only one @code{screen} is detached. Otherwise lists available sessions. + + @item -RR +-Resume the first appropriate detached @code{screen} session. If +-successful, all other command-line options are ignored. If no detached ++Resume the most-recently created appropriate detached @code{screen} session. ++If successful, all other command-line options are ignored. If no detached + session exists, start a new session using the specified options, just as + if @samp{-R} had not been specified. This option is set by default if + screen is run as a login-shell (actually screen uses @samp{-xRR} in + that case). + For combinations with the + @samp{-D}/@samp{-d} option see there. ++@samp{Note:} Time-based session selection is a Debian addition. + + @item -s @var{program} + Set the default shell to be @var{program}. By default, @code{screen} diff --git a/debian/patches/81_session_creation_util.patch b/debian/patches/81_session_creation_util.patch new file mode 100644 index 0000000..85d3d18 --- /dev/null +++ b/debian/patches/81_session_creation_util.patch @@ -0,0 +1,77 @@ +Author: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> +Description: Add lookup code for the creation time of each session. + Requires digging in /proc/$pid and /proc/uptime, though, so it's + definitely no candidate for the Beautiful C contest. + . + Affects screen's behaviour in the following situations: + . + * 'screen -ls' lists available sessions sorted chronologically + * 'screen -RR' now picks the youngest session instead of an + arbitrary one + . + Patch 2/3: new utility functions +Bug-Debian: https://bugs.debian.org/206572 +Forwarded: not-yet + +--- a/extern.h ++++ b/extern.h +@@ -393,6 +393,8 @@ + #else + extern int xsnprintf __P(()); + #endif ++extern time_t SessionCreationTime __P((const char *)); ++extern time_t GetUptime __P((void)); + + + /* acl.c */ +--- a/misc.c ++++ b/misc.c +@@ -29,6 +29,7 @@ + #include <sys/types.h> + #include <sys/stat.h> /* mkdir() declaration */ + #include <signal.h> ++#include <fcntl.h> + + #include "config.h" + #include "screen.h" +@@ -769,3 +770,40 @@ + } + + #endif ++ ++time_t SessionCreationTime(const char *fifo) { ++ char ppath[20]; ++ int pfd; ++ char pdata[512]; ++ char *jiffies; ++ ++ int pid = atoi(fifo); ++ if (pid <= 0) return 0; ++ sprintf(ppath, "/proc/%u/stat", pid); ++ pfd = open(ppath, O_RDONLY); ++ if (pfd < 0) return 0; ++ while (1) { ++ int R=0, RR; ++ RR = read(pfd, pdata + R, 512-R); ++ if (RR < 0) {close(pfd); return 0;} ++ else if (RR == 0) break; ++ } ++ close(pfd); ++ ++ for (pfd=21, jiffies=pdata; pfd; --pfd) { ++ jiffies = strchr(jiffies, ' '); ++ if (!jiffies) break; else ++jiffies; ++ } ++ if (!jiffies) return 0; ++ ++ return atol(jiffies) / 100; ++} ++ ++time_t GetUptime(void) { ++ char uptimestr[32]; ++ int fd = open("/proc/uptime", O_RDONLY); ++ if (fd < 0) return 0; ++ (void)read(fd, uptimestr, 32); ++ close(fd); ++ return atol(uptimestr); ++} diff --git a/debian/patches/82_session_creation_core.patch b/debian/patches/82_session_creation_core.patch new file mode 100644 index 0000000..72fa1f3 --- /dev/null +++ b/debian/patches/82_session_creation_core.patch @@ -0,0 +1,161 @@ +Author: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de> +Description: Add lookup code for the creation time of each session. + Requires digging in /proc/$pid and /proc/uptime, though, so it's + definitely no candidate for the Beautiful C contest. + . + Affects screen's behaviour in the following situations: + . + * 'screen -ls' lists available sessions sorted chronologically + * 'screen -RR' now picks the youngest session instead of an + arbitrary one + . + Patch 3/3: implementation of actual new feature +Bug-Debian: https://bugs.debian.org/206572 +Bug-Debian: https://bugs.debian.org/507817 +Forwarded: not-yet + +--- a/socket.c ++++ b/socket.c +@@ -137,16 +137,18 @@ + int sdirlen; + int matchlen = 0; + char *name, *n; +- int firsts = -1, sockfd; +- char *firstn = NULL; ++ int sockfd; + int nfound = 0, ngood = 0, ndead = 0, nwipe = 0, npriv = 0; + int nperfect = 0; ++ time_t time_sysboot = time(NULL) - GetUptime(); + struct sent + { + struct sent *next; + int mode; ++ int fd; + char *name; +- } *slist, **slisttail, *sent, *nsent; ++ time_t time_created; ++ } *slist, **slisttail, *sent, *nsent, *schosen; + + if (match) + { +@@ -172,7 +174,7 @@ + if ((dirp = opendir(SockPath)) == 0) + Panic(errno, "Cannot opendir %s", SockPath); + +- slist = 0; ++ slist = schosen = NULL; + slisttail = &slist; + while ((dp = readdir(dirp))) + { +@@ -255,13 +257,16 @@ + debug(" store it.\n"); + if ((sent = (struct sent *)malloc(sizeof(struct sent))) == 0) + continue; +- sent->next = 0; + sent->name = SaveStr(name); + sent->mode = mode; ++ sent->time_created = time_sysboot + SessionCreationTime(name); ++ for (slisttail = &slist; *slisttail; slisttail = &((*slisttail)->next)) { ++ if ((*slisttail)->time_created < sent->time_created) break; ++ } ++ sent->next = *slisttail; + *slisttail = sent; +- slisttail = &sent->next; + nfound++; +- sockfd = MakeClientSocket(0, *is_sock); ++ sent->fd = sockfd = MakeClientSocket(0, *is_sock); + #ifdef USE_SETEUID + /* MakeClientSocket sets ids back to eff */ + xseteuid(real_uid); +@@ -326,12 +331,17 @@ + ngood++; + if (cmatch) + nperfect++; +- if (fdp && (firsts == -1 || (cmatch && nperfect == 1))) ++ // prefer the current one if one of the following is true: ++ // - we had no previous hit ++ // - the current one has a later timestamp than our previous one, and we haven't found a perfect match yet ++ // - this one is the first perfect match ++ if (fdp && (!schosen || ++ (schosen && schosen->time_created < sent->time_created && nperfect == 0) || ++ (cmatch && nperfect == 1))) + { +- if (firsts != -1) +- close(firsts); +- firsts = sockfd; +- firstn = sent->name; ++ if (schosen) ++ close(schosen->fd); ++ schosen = sent; + debug(" taken.\n"); + } + else +@@ -359,36 +369,27 @@ + } + for (sent = slist; sent; sent = sent->next) + { +- switch (sent->mode) ++ char timestr[64]; ++ if (sent->time_created == 0) + { +- case 0700: +- printf("\t%s\t(Attached)\n", sent->name); +- break; +- case 0600: +- printf("\t%s\t(Detached)\n", sent->name); +- break; ++ sprintf(timestr, "??" "?"); ++ } ++ else ++ { ++ strftime(timestr, 64, "%x %X", localtime(&sent->time_created)); ++ } ++ printf("\t%s\t(%s)\t(%s)\n", sent->name, timestr, ++ (sent->mode == 0700) ? "Attached" : ++ (sent->mode == 0600) ? "Detached" : + #ifdef MULTIUSER +- case 0701: +- printf("\t%s\t(Multi, attached)\n", sent->name); +- break; +- case 0601: +- printf("\t%s\t(Multi, detached)\n", sent->name); +- break; ++ (sent->mode == 0701) ? "Multi, attached" : ++ (sent->mode == 0601) ? "Multi, detached" : + #endif +- case -1: +- /* No trigraphs here! */ +- printf("\t%s\t(Dead ?%c?)\n", sent->name, '?'); +- break; +- case -2: +- printf("\t%s\t(Removed)\n", sent->name); +- break; +- case -3: +- printf("\t%s\t(Remote or dead)\n", sent->name); +- break; +- case -4: +- printf("\t%s\t(Private)\n", sent->name); +- break; +- } ++ (sent->mode == -1) ? "Dead ??" "?" : ++ (sent->mode == -2) ? "Removed" : ++ (sent->mode == -3) ? "Remote or dead" : ++ (sent->mode == -4) ? "Private" : ++ "Unknown"); + } + } + if (ndead && !quietflag) +@@ -399,10 +400,10 @@ + else + Msg(0, m, ndead > 1 ? "s" : "", ndead > 1 ? "" : "es"); /* other args for nethack */ + } +- if (firsts != -1) ++ if (schosen) + { +- sprintf(SockPath + sdirlen, "/%s", firstn); +- *fdp = firsts; ++ sprintf(SockPath + sdirlen, "/%s", schosen->name); ++ *fdp = schosen->fd; + } + else + SockPath[sdirlen] = 0; diff --git a/debian/patches/90_cherrypick-d340b02c_do-not-liunk-against-libelf.patch b/debian/patches/90_cherrypick-d340b02c_do-not-liunk-against-libelf.patch new file mode 100644 index 0000000..dedaaad --- /dev/null +++ b/debian/patches/90_cherrypick-d340b02c_do-not-liunk-against-libelf.patch @@ -0,0 +1,39 @@ +Origin: commit:d340b02cbedb7e6e726559f26dc09d3b8b104ec5 +Author: Amadeusz Sławiński <amade@asmblr.net> +Date: Tue Jul 8 14:55:25 2014 +0200 +Bug-Debian: https://bugs.debian.org/903818 +Forwarded: https://lists.gnu.org/archive/html/screen-devel/2018-07/msg00003.html +Reviewed-By: Sven Joachim <svenjoac@gmx.de> +Reviewed-By: Axel Beckert <abe@debian.org> +Subject: Do not link against libelf. + +I'd like to upstream the patch to drop linking dependency to libelf. It is +probably some leftover from old versions of gnu screen and some +distributions downstream upply it for years. + +http://pkgs.fedoraproject.org/cgit/screen.git/tree/screen-4.0.3-libs.patch +(Fedora) +http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/screen/files/4.0.2-no-libelf.patch?revision=1.1&view=markup +(Gentoo) +https://galileo.mailstation.de/gerrit/#/c/1275/ (Exherbo) + +From: Ivan Diorditsa <ivan.diorditsa@gmail.com> +Signed-off-by: Amadeusz Sławiński <amade@asmblr.net> + +--- a/configure.ac ++++ b/configure.ac +@@ -202,14 +202,6 @@ + #endif + ], LIBS="$LIBS -lsocket -linet";seqptx=1) + +-oldlibs="$LIBS" +-LIBS="$LIBS -lelf" +-AC_CHECKING(SVR4) +-AC_TRY_LINK([#include <utmpx.h> +-],, +-[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN), +-[AC_CHECK_HEADER(elf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN))])] +-,LIBS="$oldlibs") + AC_CHECK_HEADERS([stropts.h string.h strings.h]) + + AC_CHECKING(for Solaris 2.x) diff --git a/debian/patches/99_CVE-2021-26937.patch b/debian/patches/99_CVE-2021-26937.patch new file mode 100644 index 0000000..336d9fe --- /dev/null +++ b/debian/patches/99_CVE-2021-26937.patch @@ -0,0 +1,64 @@ +Description: [CVE-2021-26937] Fix out of bounds array access +Author: Michael Schröder <mls@suse.de> +Bug-Debian: https://bugs.debian.org/982435 +Bug: https://savannah.gnu.org/bugs/?60030 +Bug: https://lists.gnu.org/archive/html/screen-devel/2021-02/msg00000.html +Bug-OSS-Security: https://www.openwall.com/lists/oss-security/2021/02/09/3 +Origin: https://lists.gnu.org/archive/html/screen-devel/2021-02/msg00010.html + +--- a/encoding.c ++++ b/encoding.c +@@ -43,7 +43,7 @@ + # ifdef UTF8 + static int recode_char __P((int, int, int)); + static int recode_char_to_encoding __P((int, int)); +-static void comb_tofront __P((int, int)); ++static void comb_tofront __P((int)); + # ifdef DW_CHARS + static int recode_char_dw __P((int, int *, int, int)); + static int recode_char_dw_to_encoding __P((int, int *, int)); +@@ -1256,6 +1256,8 @@ + {0x30000, 0x3FFFD}, + }; + ++ if (c >= 0xdf00 && c <= 0xdfff) ++ return 1; /* dw combining sequence */ + return ((bisearch(c, wide, sizeof(wide) / sizeof(struct interval) - 1)) || + (cjkwidth && + bisearch(c, ambiguous, +@@ -1323,11 +1325,12 @@ + } + + static void +-comb_tofront(root, i) +-int root, i; ++comb_tofront(i) ++int i; + { + for (;;) + { ++ int root = i >= 0x700 ? 0x801 : 0x800; + debug1("bring to front: %x\n", i); + combchars[combchars[i]->prev]->next = combchars[i]->next; + combchars[combchars[i]->next]->prev = combchars[i]->prev; +@@ -1389,9 +1392,9 @@ + { + /* full, recycle old entry */ + if (c1 >= 0xd800 && c1 < 0xe000) +- comb_tofront(root, c1 - 0xd800); ++ comb_tofront(c1 - 0xd800); + i = combchars[root]->prev; +- if (c1 == i + 0xd800) ++ if (i == 0x800 || i == 0x801 || c1 == i + 0xd800) + { + /* completely full, can't recycle */ + debug("utf8_handle_comp: completely full!\n"); +@@ -1415,7 +1418,7 @@ + mc->font = (i >> 8) + 0xd8; + mc->fontx = 0; + debug3("combinig char %x %x -> %x\n", c1, c, i + 0xd800); +- comb_tofront(root, i); ++ comb_tofront(i); + } + + #else /* !UTF8 */ diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..44ac224 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,20 @@ +# 01-08: fixes to configure, altering preprocessor macros etc. +05prefer-libtinfo-over-libcurses.patch +# 10-79: "regular" code and documentation fixes +11replace_doc_paths.patch +13split_info_files.patch +26source_encoding.patch +45suppress_remap.patch +#52fix_screen_utf8_nfd.patch +58-show-encoding-hardstatus.patch +60-screen-4.2.1-debian4.1.0-compatibility.patch +61-default-PATH_MAX-if-undefined-for-hurd.patch +63-add-utempter-switch.patch +64-fix-manpage-typos-reported-by-lintian.patch +# 80-89: experimental patches, new features etc. +80_session_creation_docs.patch +81_session_creation_util.patch +82_session_creation_core.patch +# 90-99: (more or less) cherry-picked from upstream +90_cherrypick-d340b02c_do-not-liunk-against-libelf.patch +99_CVE-2021-26937.patch diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..1d47f7f --- /dev/null +++ b/debian/rules @@ -0,0 +1,77 @@ +#!/usr/bin/make -f +# +# Copyright (C) 1997 joost witteveen <joost@rulcmc.leidenuniv.nl> +# Copyright (C) 1997-2001 Juan Cespedes <cespedes@debian.org> +# Copyright (C) 2001 Adam Lazur <zal@debian.org> +# Copyright (C) 2011-2016 Axel Beckert <abe@debian.org> + +# Uncomment me to turn on debugging +#export DH_VERBOSE=1 + +export DEB_BUILD_MAINT_OPTIONS=hardening=+all +export DEB_CFLAGS_MAINT_APPEND=-Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers + +ROOT := $(CURDIR)/debian/screen +ROOT_UDEB := $(CURDIR)/debian/screen-udeb +# statically define this... sucko +TTYGROUP := 5 +# Common configure options for .deb and .udeb +SCREEN_CONFIGURE=--with-socket-dir=/run/screen \ + --with-pty-mode=0620 \ + --with-pty-group=${TTYGROUP} \ + --enable-rxvt_osc \ + --with-sys-screenrc=/etc/screenrc \ + --enable-colors256 \ + --enable-telnet \ + --enable-use-locale + +%: + dh $@ + +override_dh_auto_clean: + rm -rf build build-udeb + +override_dh_auto_configure: + dh_auto_configure -B build -- $(SCREEN_CONFIGURE) --enable-pam --enable-utempter + # To minimize the library dependencies, the .udeb binary is + # built without "--enable-pam" + dh_auto_configure -B build-udeb -- $(SCREEN_CONFIGURE) + # Assert the use of fifos instead of sockets + cd build; grep -q "define.*NAMEDPIPE.*1" config.h || echo "#define NAMEDPIPE 1" >> config.h + cd build-udeb; grep -q "define.*NAMEDPIPE.*1" config.h || echo "#define NAMEDPIPE 1" >> config.h + +override_dh_auto_build: + dh_auto_build --builddirectory build + dh_auto_build --builddirectory build-udeb + dh_auto_build --sourcedirectory build/doc + +override_dh_auto_install: + # can't call the normal install target b/c it installs the + # info files and other crud + cd build; $(MAKE) prefix=$(ROOT)/usr SCREENENCODINGS='$$(prefix)/share/screen/utf8encodings' installdirs install_bin + cd build-udeb; $(MAKE) prefix=$(ROOT_UDEB)/usr SCREENENCODINGS='$$(prefix)/share/screen/utf8encodings' installdirs install_bin + # hack around the fact that the install target makes screen a + # symlink to screen-$$(VERSION) + rm -f $(ROOT)/usr/bin/screen $(ROOT_UDEB)/usr/bin/screen + mv -f $(ROOT)/usr/bin/screen* $(ROOT)/usr/bin/screen + mv -f $(ROOT_UDEB)/usr/bin/screen* $(ROOT_UDEB)/usr/bin/screen + # make it setgid utmp only in udeb + chown root:utmp $(ROOT_UDEB)/usr/bin/screen + chmod 2755 $(ROOT_UDEB)/usr/bin/screen + chmod 755 $(ROOT)/usr/bin/screen + # Fix package-contains-info-dir-file, remove /usr/share/info/dir.gz + rm -f $(ROOT)/usr/share/info/dir* + # Remove documentation from udeb + rm -rf $(ROOT_UDEB)/usr/share/info $(ROOT_UDEB)/usr/share/man + +override_dh_installinit: + dh_installinit --no-start --init-script=screen-cleanup + +override_dh_installsystemd: + dh_installsystemd --name=screen-cleanup + +override_dh_fixperms: + dh_fixperms -X/usr/bin/screen + +override_dh_strip: + dh_strip --dbgsym-migration=screen-dbg diff --git a/debian/screen-udeb.install b/debian/screen-udeb.install new file mode 100644 index 0000000..1dc35e8 --- /dev/null +++ b/debian/screen-udeb.install @@ -0,0 +1 @@ +debian/udeb/screenrc etc/ diff --git a/debian/screen-udeb.lintian-overrides b/debian/screen-udeb.lintian-overrides new file mode 100644 index 0000000..e68f880 --- /dev/null +++ b/debian/screen-udeb.lintian-overrides @@ -0,0 +1,2 @@ +# Screen is setgid by default to be able to write to the utmp database +screen-udeb udeb: setgid-binary usr/bin/screen 2755 root/utmp diff --git a/debian/screen.dirs b/debian/screen.dirs new file mode 100644 index 0000000..bbb9934 --- /dev/null +++ b/debian/screen.dirs @@ -0,0 +1,13 @@ +# The following directory is needed if the local admin wants to remove +# the setgid bit by following the steps listed in README.Debian. Just +# creating the directory in postinst (in case systemd is not +# installed) and removing it again in postrm does not work, because +# postinst either removes a directory owned by systemd (even if empty) +# or leaves an unowned directory in case of any other init system is +# used. The situation would get even more tricky if the file hasn't +# been created because running under sysvinit and then the init system +# is switched (either by installing systemd-sysv or by switching the +# init system via boot parameters) without screen being reinstalled, +# i.e. screen's postinst not being called again. (And screen's init +# script can't handle that because it's no more run by systemd.) +etc/tmpfiles.d diff --git a/debian/screen.docs b/debian/screen.docs new file mode 100644 index 0000000..3030089 --- /dev/null +++ b/debian/screen.docs @@ -0,0 +1,8 @@ +NEWS* +README +TODO +debian/README.Debian +doc/FAQ +doc/fdpat.ps +doc/window_to_display.ps +terminfo diff --git a/debian/screen.examples b/debian/screen.examples new file mode 100644 index 0000000..eeaf0a3 --- /dev/null +++ b/debian/screen.examples @@ -0,0 +1,2 @@ +etc/etcscreenrc +etc/screenrc diff --git a/debian/screen.info b/debian/screen.info new file mode 100644 index 0000000..8c30b78 --- /dev/null +++ b/debian/screen.info @@ -0,0 +1 @@ +build/doc/screen.info* diff --git a/debian/screen.init b/debian/screen.init new file mode 100644 index 0000000..3eb4185 --- /dev/null +++ b/debian/screen.init @@ -0,0 +1,49 @@ +#!/bin/sh +# $Id: init,v 1.3 2004/03/16 01:43:45 zal Exp $ +# +# Script to remove stale screen named pipes on bootup. +# + +### BEGIN INIT INFO +# Provides: screen-cleanup +# Required-Start: $remote_fs +# Required-Stop: $remote_fs +# Default-Start: S +# Default-Stop: +# Short-Description: screen sessions cleaning +# Description: Cleans up the screen session directory and fixes its +# permissions if needed. +### END INIT INFO + +set -e + +test -f /usr/bin/screen || exit 0 + +SCREENDIR=/run/screen + +case "$1" in +start) + if test -L $SCREENDIR || ! test -d $SCREENDIR; then + rm -f $SCREENDIR + mkdir $SCREENDIR + chown root:utmp $SCREENDIR + [ -x /sbin/restorecon ] && /sbin/restorecon $SCREENDIR + fi + find $SCREENDIR -type p -delete +# If the local admin has used dpkg-statoverride to install the screen +# binary with different set[ug]id bits, change the permissions of +# $SCREENDIR accordingly + BINARYPERM=`stat -c%a /usr/bin/screen` + if [ "$BINARYPERM" -ge 4000 ]; then + chmod 0755 $SCREENDIR + elif [ "$BINARYPERM" -ge 2000 ]; then + chmod 0775 $SCREENDIR + else + chmod 1777 $SCREENDIR + fi + ;; +stop|restart|reload|force-reload) + ;; +esac + +exit 0 diff --git a/debian/screen.install b/debian/screen.install new file mode 100644 index 0000000..273a46e --- /dev/null +++ b/debian/screen.install @@ -0,0 +1,2 @@ +debian/README.terminfo usr/share/doc/screen/terminfo/ +debian/screenrc etc/ diff --git a/debian/screen.lintian-overrides b/debian/screen.lintian-overrides new file mode 100644 index 0000000..9b40b4f --- /dev/null +++ b/debian/screen.lintian-overrides @@ -0,0 +1,20 @@ +# Only the fixup to migrate away from old /tmp/.screen +screen: possibly-insecure-handling-of-tmp-files-in-maintainer-script preinst:8 + +# There is no status, it's just for cleaning up. +screen: init.d-script-does-not-implement-optional-option etc/init.d/screen-cleanup status + +# hyphen-used-as-minus-sign false positives +# "'$'-character" +screen: hyphen-used-as-minus-sign usr/share/man/man1/screen.1.gz:679 +# "`%'-character" +screen: hyphen-used-as-minus-sign usr/share/man/man1/screen.1.gz:833 + +# False positive, handled by debian/tmpfile, debian/postinst and +# debian/postrm. See https://bugs.debian.org/740301 and +# https://bugs.launchpad.net/bugs/1462692 for the context of this +# implementation. +screen: missing-systemd-service-for-init.d-rcS-script screen-cleanup + +# False positive, it's user and group +screen: spelling-error-in-readme-debian root root (duplicate word) root diff --git a/debian/screen.manpages b/debian/screen.manpages new file mode 100644 index 0000000..39b73be --- /dev/null +++ b/debian/screen.manpages @@ -0,0 +1 @@ +doc/screen.1 diff --git a/debian/screen.postinst b/debian/screen.postinst new file mode 100644 index 0000000..687579f --- /dev/null +++ b/debian/screen.postinst @@ -0,0 +1,35 @@ +#!/bin/sh +set -e + +. /usr/share/debconf/confmodule + +if [ "$1" = configure ]; then + if ! test -d /run/screen; then + install -g utmp -m 0775 -d /run/screen + fi + perms="`stat -c%a /usr/bin/screen`" + override=/etc/tmpfiles.d/screen-cleanup.conf + if [ $perms -eq 4755 ]; then + chmod 0755 /run/screen + if [ ! -f $override ]; then + echo 'd /run/screen 0755 root utmp' > $override + fi + elif [ $perms -eq 755 ]; then + chmod 1777 /run/screen + if [ ! -f $override ]; then + echo 'd /run/screen 1777 root utmp' > $override + fi + fi + + # LP #1462692 + servicedir=/lib/systemd/system + servicefile=$servicedir/screen-cleanup.service + mkdir -p $servicedir + if [ ! -e $servicefile ]; then + ln -s /dev/null $servicefile + fi + + add-shell /usr/bin/screen || true +fi + +#DEBHELPER# diff --git a/debian/screen.postrm b/debian/screen.postrm new file mode 100644 index 0000000..457a0dc --- /dev/null +++ b/debian/screen.postrm @@ -0,0 +1,20 @@ +#!/bin/sh +set -e + +if [ "$1" = purge ] || [ "$1" = remove ]; then + rm -rf /run/screen +fi + +if [ "$1" = purge ]; then + rm -vf /etc/tmpfiles.d/screen-cleanup.conf + + # LP #1462692 + rm -f /lib/systemd/system/screen-cleanup.service + rmdir -p --ignore-fail-on-non-empty /lib/systemd/system +fi + +if [ "$1" = disappear ]; then + remove-shell /usr/bin/screen || true +fi + +#DEBHELPER# diff --git a/debian/screen.preinst b/debian/screen.preinst new file mode 100644 index 0000000..a55748b --- /dev/null +++ b/debian/screen.preinst @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +if [ "$1" = upgrade ]; then + if dpkg --compare-versions "$2" lt-nl 4.0.3-7 && \ + dpkg --compare-versions "$2" gt 4.0.3-3; then + if ! test -L /tmp/.screen && test -d /tmp/.screen && test -n "`find /tmp/.screen -type p 2>/dev/null`"; then + ln -s /tmp/.screen /run/screen + fi + fi +fi + +#DEBHELPER# diff --git a/debian/screen.prerm b/debian/screen.prerm new file mode 100644 index 0000000..85498ae --- /dev/null +++ b/debian/screen.prerm @@ -0,0 +1,8 @@ +#!/bin/sh +set -e + +if [ "$1" = remove ] || [ "$1" = deconfigure ]; then + remove-shell /usr/bin/screen || true +fi + +#DEBHELPER# diff --git a/debian/screen.screen-cleanup.tmpfile b/debian/screen.screen-cleanup.tmpfile new file mode 100644 index 0000000..7d56890 --- /dev/null +++ b/debian/screen.screen-cleanup.tmpfile @@ -0,0 +1 @@ +d /run/screen 0777 root utmp diff --git a/debian/screenrc b/debian/screenrc new file mode 100644 index 0000000..032db64 --- /dev/null +++ b/debian/screenrc @@ -0,0 +1,108 @@ +# $Id: screenrc,v 1.15 2003/10/08 11:39:03 zal Exp $ +# +# /etc/screenrc +# +# This is the system wide screenrc. +# +# You can use this file to change the default behavior of screen system wide +# or copy it to ~/.screenrc and use it as a starting point for your own +# settings. +# +# Commands in this file are used to set options, bind screen functions to +# keys, redefine terminal capabilities, and to automatically establish one or +# more windows at the beginning of your screen session. +# +# This is not a comprehensive list of options, look at the screen manual for +# details on everything that you can put in this file. +# + +# ------------------------------------------------------------------------------ +# SCREEN SETTINGS +# ------------------------------------------------------------------------------ + +#startup_message off +#nethack on + +#defflow on # will force screen to process ^S/^Q +deflogin on +#autodetach off + +# turn visual bell on +vbell on +vbell_msg " Wuff ---- Wuff!! " + +# define a bigger scrollback, default is 100 lines +defscrollback 1024 + +# ------------------------------------------------------------------------------ +# SCREEN KEYBINDINGS +# ------------------------------------------------------------------------------ + +# Remove some stupid / dangerous key bindings +bind ^k +#bind L +bind ^\ +# Make them better +bind \\ quit +bind K kill +bind I login on +bind O login off +bind } history + +# An example of a "screen scraper" which will launch urlview on the current +# screen window +# +#bind ^B eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview" + +# ------------------------------------------------------------------------------ +# TERMINAL SETTINGS +# ------------------------------------------------------------------------------ + +# The vt100 description does not mention "dl". *sigh* +termcapinfo vt100 dl=5\E[M + +# turn sending of screen messages to hardstatus off +hardstatus off +# Set the hardstatus prop on gui terms to set the titlebar/icon title +termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007 +# use this for the hard status string +hardstatus string "%h%? users: %u%?" + +# An alternative hardstatus to display a bar at the bottom listing the +# windownames and highlighting the current windowname in blue. (This is only +# enabled if there is no hardstatus setting for your terminal) +# +#hardstatus lastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<" + +# set these terminals up to be 'optimal' instead of vt100 +termcapinfo xterm*|linux*|rxvt*|Eterm* OP + +# Change the xterm initialization string from is2=\E[!p\E[?3;4l\E[4l\E> +# (This fixes the "Aborted because of window size change" konsole symptoms found +# in bug #134198) +termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l' + +# To get screen to add lines to xterm's scrollback buffer, uncomment the +# following termcapinfo line which tells xterm to use the normal screen buffer +# (which has scrollback), not the alternate screen buffer. +# +#termcapinfo xterm|xterms|xs|rxvt ti@:te@ + +# Enable non-blocking mode to better cope with flaky ssh connections. +defnonblock 5 + +# ------------------------------------------------------------------------------ +# STARTUP SCREENS +# ------------------------------------------------------------------------------ + +# Example of automatically running some programs in windows on screen startup. +# +# The following will open top in the first window, an ssh session to monkey +# in the next window, and then open mutt and tail in windows 8 and 9 +# respectively. +# +# screen top +# screen -t monkey ssh monkey +# screen -t mail 8 mutt +# screen -t daemon 9 tail -f /var/log/daemon.log + diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/options b/debian/source/options new file mode 100644 index 0000000..1c717dc --- /dev/null +++ b/debian/source/options @@ -0,0 +1 @@ +extend-diff-ignore=config\.h\.in diff --git a/debian/tests/control b/debian/tests/control new file mode 100644 index 0000000..bf2a801 --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,2 @@ +Test-Command: prove -v debian/tests/t +Depends: @, perl diff --git a/debian/tests/t/boilerplate.sh b/debian/tests/t/boilerplate.sh new file mode 100644 index 0000000..8b28d59 --- /dev/null +++ b/debian/tests/t/boilerplate.sh @@ -0,0 +1,49 @@ +# -*- sh -*- + +TESTNAME=`basename $0`.`mktemp -u XXXXXXXX` +SCREEN="screen -S $TESTNAME" +SCREENRC=/dev/null +export SCREENRC +count=0 + +check_exit_code_true() { + if [ "$?" != 0 ]; then echo -n 'not '; fi; echo ok $(( count+=1 )) - "$@" +} + +check_exit_code_false() { + if [ "$?" = 0 ]; then echo -n 'not '; fi; echo ok $(( count+=1 )) - "$@" +} + +has_session_with_testname() { + screen -ls | fgrep -q "$TESTNAME" +} + +session_exists_2_tests() { + screen -ls | fgrep -q '(Detached)' + check_exit_code_true Detached session found + + has_session_with_testname + check_exit_code_true Session has expected session name +} + +create_session_3_tests() { + $SCREEN -d -m "$@" + check_exit_code_true Create session + + sleep 1 + + session_exists_2_tests +} + +kill_session_2_tests() { + $SCREEN -X quit + check_exit_code_true Quit command sent to session + + has_session_with_testname + check_exit_code_false Session is gone +} + +has_window_number_zero() { + $SCREEN -Q windows | egrep -q '^0 ' + check_exit_code_true Session has a window with id 0 +} diff --git a/debian/tests/t/command.t b/debian/tests/t/command.t new file mode 100755 index 0000000..c59bafb --- /dev/null +++ b/debian/tests/t/command.t @@ -0,0 +1,17 @@ +#!/bin/sh + +echo 1..4 + +. `dirname $0`/boilerplate.sh + +$SCREEN -D -m -s /bin/true sleep 2 & +check_exit_code_true Create session + +sleep 1 + +session_exists_2_tests + +sleep 2 + +has_session_with_testname +check_exit_code_false Session is gone diff --git a/debian/tests/t/create-list-quit.t b/debian/tests/t/create-list-quit.t new file mode 100755 index 0000000..d792578 --- /dev/null +++ b/debian/tests/t/create-list-quit.t @@ -0,0 +1,9 @@ +#!/bin/sh + +echo 1..6 + +. `dirname $0`/boilerplate.sh + +create_session_3_tests +has_window_number_zero +kill_session_2_tests diff --git a/debian/tests/t/dash-Dm.t b/debian/tests/t/dash-Dm.t new file mode 100755 index 0000000..1f2b391 --- /dev/null +++ b/debian/tests/t/dash-Dm.t @@ -0,0 +1,20 @@ +#!/bin/sh + +echo 1..5 + +. `dirname $0`/boilerplate.sh + +$SCREEN -D -m & +check_exit_code_true Create session + +sleep 1 + +session_exists_2_tests + +$SCREEN -X quit +check_exit_code_true Quit command sent to session + +sleep 1; + +has_session_with_testname +check_exit_code_false Session is gone diff --git a/debian/tests/t/dash-U.t b/debian/tests/t/dash-U.t new file mode 100755 index 0000000..d8ef84c --- /dev/null +++ b/debian/tests/t/dash-U.t @@ -0,0 +1,9 @@ +#!/bin/sh + +echo 1..6 + +. `dirname $0`/boilerplate.sh + +create_session_3_tests -U +has_window_number_zero +kill_session_2_tests diff --git a/debian/tests/t/version-help.t b/debian/tests/t/version-help.t new file mode 100755 index 0000000..f6496c0 --- /dev/null +++ b/debian/tests/t/version-help.t @@ -0,0 +1,11 @@ +#!/bin/sh + +echo 1..2 + +. `dirname $0`/boilerplate.sh + +screen -v | fgrep -q 'Screen version ' +check_exit_code_true Outputs version + +screen -h | fgrep -q 'Options:' +check_exit_code_true Outputs help diff --git a/debian/udeb/screenrc b/debian/udeb/screenrc new file mode 100644 index 0000000..4adc849 --- /dev/null +++ b/debian/udeb/screenrc @@ -0,0 +1,57 @@ +# /etc/screenrc +# Stripped down version for udeb (debian-installer) +# 2016 Roger Shimizu <rogershimizu@gmail.com> + +# SETTINGS + +startup_message off + +#defflow on # will force screen to process ^S/^Q +deflogin on +#autodetach off + +vbell on +vbell_msg " Wuff ---- Wuff!! " + +defscrollback 1024 + +# KEYBINDINGS + +# Remove some stupid / dangerous key bindings +bind ^k +#bind L +bind ^\ +# Make them better +bind \\ quit +bind K kill +bind I login on +bind O login off +bind } history + +# TERMINAL SETTINGS + +hardstatus alwaysfirstline "%{= kG}[%= %{= kw}%?%-Lw%?%{r} (%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %M %d %{W}%c %{g}]" + +# Enable non-blocking mode to better cope with flaky ssh connections. +defnonblock 5 + +# STARTUP SCREENS + +# window 0: maps to window 1 +# window 1: debian installer +# window 2: shell +# window 3: shell +# window 4: syslog + +shell /bin/sh +defutf8 on + +bind c screen 1 +bind ^c screen 1 +bind 0 select 1 + +screen -t start 0 sleep 1 +screen -t shell 2 /bin/sh +screen -t shell 3 /bin/sh +screen -t log 4 tail -f /var/log/syslog +shelltitle shell diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 0000000..f11d81c --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,11 @@ +%YAML 1.1 +--- +# https://wiki.debian.org/UpstreamMetadata +Bug-Database: https://savannah.gnu.org/bugs/?group=screen +Changelog: https://git.savannah.gnu.org/cgit/screen.git/plain/src/ChangeLog?h=screen-v4 +Contact: screen-devel@gnu.org +FAQ: http://aperiodic.net/screen/faq +Name: GNU Screen +Homepage: https://www.gnu.org/software/screen/ +Repository: git://git.sv.gnu.org/screen.git -b screen-v4 +Repository-Browse: https://git.savannah.gnu.org/cgit/screen.git/?h=screen-v4 diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc new file mode 100644 index 0000000..858332a --- /dev/null +++ b/debian/upstream/signing-key.asc @@ -0,0 +1,146 @@ + + + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.12 (GNU/Linux) + +mQENBFG23YwBCADmgO2AZ1ZhTdaCyFjGo35lDcqAIZ9HZuthWvELHzPpSz6Q2r7S +BQw1/yaYWrukT78ftpo6VEKIDuss5OMgBNh7CaA4pm2yL39PzhMviz4AppcCHOaw +DTeWkVVgdFPYvnUKRwJ2DTq6kMQz5BFbhTGTerk9d/Akmgc4KBO+Xm+JoNY3bz8V +4PdFFvIIdRXaTQ+AUKrM+J9uizsgaMTXLpkaG2oZiYodpgJk6CQi1Agwsq83PmLV +ASIksO4VZyjNp6Oz/osrDJKjq6btiah3xjoSTjG2SjtOx8201LrNeQp2nCaPNwWs +B6jmomq7dTR4f11n3hy31u8N0PEGPh1PESaXABEBAAG0Hk1pY2FoIENvd2FuIDxt +aWNhaEBjb3dhbi5uYW1lPokBOAQTAQIAIgUCUbbdjAIbAwYLCQgHAwIGFQgCCQoL +BBYCAwECHgECF4AACgkQxxSsoCl9mZJfGAf/Qq3p2itfqOvsvcOo+EzJ+MXW2Tek +HPHt3K1EtApBporSCqsIerIspGTFD2LC/u8PlyjLqZmF/oujuQ69KVA2zqy21DeF +20bk/jkE1VZMBjOXnV0h7hy+0Vvn1GF0LK9JV9YmU7lNeSrnatlIYhQCDo6LqCMI +ZpTlFEdQDDHTGPFkYpvTK7HtrFUQQJnNt/tNArPYrTjgKFww637mPnKYX9KkwGH0 +09h0jk8tq48GPOxWO+lTIqu9glPF2faHFgzt2/FB2ZB2vfPOxDIBiGxPcb4npGsK +iU6MohmoWxRoEqi3co9NrOwQ6fZ/ehs2HMxsTMveAT+M/VD4+bIJxQbGB7kBDQRR +tt2MAQgApi75wsaiX+zcUZuJVqgZHZK1HbULJ5AbbbgAdU9X2lBgkcpYNqhFoWa5 +iuw83X8YqSY/WZMd8zlc7dS7NH23wRGGOLrPVfnGl0Ufx9p0JNsC9a7bH+6m9jlS +JEoHJXAF5KvMsTvGT9U21H2G1PEWY40LKeOvRDGDV2b6a1jwD5y3M8fUh8Qul01u +AuFaZYoKHDW0QcDj84Il8QwJthRdM0ryy0caFDLoM94K3N9E1uMX+UCm9vVSskz/ +xv+bEfKDVSEEcGPxuhHbMXvzSXCJC9fghPSPs3EXnuU4PgLXBSnYJJDDN8DEMFoa +50TgcycdBDlQvuiNA1ZELJunWbKt4wARAQABiQEfBBgBAgAJBQJRtt2MAhsMAAoJ +EMcUrKApfZmSnokIAI1i6dEs2Swmlk2TKB+Q/l20yDjsHt1lrIaNOGl2sXNb8vPY +sf2ARsBVOM6mf9LIxM3UP0+15Rdi2e5bEolXGcvKZPDz/PoZ33oARPVMolGGTUWH +le0yz62yNZRr8ZVfoGbHFxcAVwDyrkxkewXz26kX9Z5Rj3+gm+gSwDfhG87sp84J +8gEh36b9GPjZXlvdvoRYWAHr7qNDlwJzrPXht7NIbaDgLpv/QW2u/WA0zuXgDGEw +XRWUvwdUzxUtUjwiDKy62o7oA31LAPwi480ieEJmRp2c1hZMQxT8vMQtCGcbaEw2 +XvrO/mUsw3oHD2Upm1/tfgDL8gWpg3F/8q5DA4A= +=D9qJ +-----END PGP PUBLIC KEY BLOCK----- + + + + + + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2.0.22 (GNU/Linux) + +mQINBFLYEMQBEADBOvTLwx6BIMq+/AvPWoYwy8DXF5RWe//+x/Mo9CspabLgoJdx +IN5rzPdzHpQ03jMoqliDz2m8Pq1aO10t8TRIpNpBXV2rJ9wYMFWW8jhgBA4+TDaL +2ny7JhXgd0ijtuoZBr2oLUzNQygCk/AG5cL4KiosBnpQGLXRTZgDTpMmt+6mIhgH +wa/TuYmqBy0IFiXe6cT8h+kaV/miPJIDpt01wUltBGCl+vNm+MJaTR1w54L5UKVF +WS4tYPMmsEQ03a8ooDKyqADMqV18b0onZcAY7I7Cx4Fxn5I/u6kFZXwQvt0hHHFy +BDlfR2JzASFxRqmPSc3TdSbDzeszd5aadX4GpA4XCvt0D+jpZWScs7IQMYecyGzO +U1UBAiMK3OSBIq4TW29LsHgQq1CLyZdMjX+3zy6NkiZKOAGRzq4TYCURlZbLg0NB +T11iyaZq9NXrnYp1VlYDSJZFvbji5/eoMO8L7IOgmjMNavSirD03gSTbWMcFdKtB +jZf11zKKj8YHmvccM8lmTny0haTXwZ1NxwVPo2uGlhfe4PFXd0oOp61RST+RXrYf +Ub4tKCKjoRKVAaXX6H3vy54RTXHxtxIuBJMzyG2xFohr7nPwokXm9nvdmunsA/NM +c5sDsLNfCDB7loNtdSGn5i9vNHp1E4x49ojecE/44YAwc8043ftFpbLLiQARAQAB +tCdBbWFkZXVzeiBTxYJhd2nFhHNraSA8YW1hZGVAYXNtYmxyLm5ldD6JAjcEEwEK +ACEFAlLYEMQCGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQtwijg8U+86QK +Ow//bFDY/OCodRmJ/2x7MDAgE7SoRTJxftxvbILGxabTLM7sIagB23TCuWBzxj+i +oZiQVMP9eonBHQni3mMgsK5kwqZDBD52uuyeHKk3uF9eWy142DHgPRZ5RiQZA5uX +AK3pHaSXJlkWV6uHx6mxmUOC1B6waiUAJQTA+iG0h2jym32V6U8X1nDfTbRfIj3y +RXH/hKYFbsmZwJHA0n6o4GjvSBpCN2w56SdOShuujdD89p2vpXyvuGJk5i/dKthB +dhoSiMZLH7TZ8/Q6eqX7kzXvPNLXEaRl+CjR+FhBl679CRc83hbPfsZScXEvLCl0 +DyHIZBaLGaUlCbFN4tcRDyHeq4jHEcL+0BjQY0I3ZI+oMPbDycCPRjKF2OorvzYM +6+ILX/ly+NBDMAwP/QZ43FmgGkUF0fjtLEl8rXk/lzZh8i/xCBuQlmDFFDgXUi8v +zRzMz0wEY1nsB8j6aQISlvZm7PnjgRQ39vHX+ERCnjtp0FRHdCksJfiS01xPjfq9 +xcgmE56u6E6yMXKWx23Eo1mir5oAhLOWiVNDUxJEVPTP/k5cYbohvjkweIRUArFI +K/mG2Bog+bjaZuK7cgfilR7+9IjMPTtBWl4KAy059X20CVW2VEuqLkpbp6evw20C +1IE6kCeL7WMcafSVXbPe+xwHx4ba1haLEfHGtfyWNkuYihm5Ag0EUtgQxAEQALRi +fHNnjhmtlGG1pt+97hHtYNRhItl/Y1+jGJekCQvz4PWEPy9rPtMg5UvkhU1HIjg4 +fiFstmYFATZ+moH+xTQbq6Cqgbnbg6iEj7S7ymJsPZ3/aLzX9A1MN0S+QgIIYiSp +Y6U9JE/RJhnnRsMMtBjgUJuaI3ox9SDUio1v3BGyefvLb5tgqQ2Yzdur4IjGUXaY +vRhDuyRz8Ldnee2bAqODuhgIhR/no2e+D3O3WkYMJ4FioA8Up/gmMbNrA4/ACSJL +ATciEwdnqpHdxviCWTrIadxt2DznactpAqGovMQLLxoHbC3GKiuocqRNanwoL4U5 +OrpFEJfTK7riG4oYkMh/xt4BUbM2U2zYv2EcznXmUalD7vRqdatXonzGZ6X0KRHn +l77kTJ9iAIZaz5eZ0YRbV2VdpUH6s4+n9G1+zcGYBSSkxMsrsjAaUfZ/akK/BTlj +K37ta9vHn3tuqea72FoBUdhQ1v4zdxNh90fyA0VNS5NGf896fdAS6LAlXtEBf2hE +dyZ1MbBJPA/GE5YHdDRTuZobfoPgoMGcytj0NodA4pAcCtlWyC+OBmGpBv3LPQyz +tF1/xf9Xc5tAspXeraM+exKFnY5S6wzE7n4ElDT3H+9/IhZHSTEd55xvOLxrHdiI +YZNQOjFXR5YPqEK99FOH3BbWJcqC3CcbLTCidCy5ABEBAAGJAh8EGAEKAAkFAlLY +EMQCGwwACgkQtwijg8U+86TXRxAAhP0GZhupRDnuSK9VwuJlomL/eZfCRHiPIgnX +Ur/ytA9FkVNRvU2mk/iJXEUSEmT9kZpa3uE/eNqAW0ZFXmSMKXgYbzMf55nX8/M9 +31a1zpi1tRs6hfhDM6v33VYoomAPwrRL/5bDcKnmZf5RRKIvK1WB+6jFsBS56d0d +M7lm6UQOVHOYvpYM22w+w04bKZ9ohiizc5FyqwQGh3TBlw8B+MXz3BXCFElPtBkB +1wyavOX9AGK+ZhwNuuT1ecIdLKZ7OXC4KQAidom2LHC5MhHYAYbMGVuspRk457AP +IK6e4qBiUbg35S1+/XOAl1qavtTkgLNIz2c4TggWPtfDBmfPrpkRvF1+i8PR+GWp +kpUlWVGNchG3fCiZq1Vxp+19V79TfwvB93DgjKCeTilT5RI6tF285C7Ri608VvpJ +kNCTt6xcwl7gknhjp1yxIEnzo6XAx4ArU0J8Vin47vQf8GikACazds+ugBt+buaK +eyWNqTfgX8X5SWDGBddW2MAH9i1tdJwiS1mvs07SCq+bo+c+0xyvFdL3WFGEB74Z +akEUDBbjrDewemAiQI2hNHbU6di49/bIEMuOr950Z0ttJT5SOWNbzh/NnFeMLl5M +i7Suaq+3Tmhx2CTmDkulmIYwop1KvGxTSH44GatsHYIbYCHlj6uc5Ve7ro9N6ceC +sBXW+7Q= +=+RA6 +-----END PGP PUBLIC KEY BLOCK----- + + + +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBFhwK44BEADvLft2wVAF2weMi0d0I4fSLHF9kAqgU2KnIEi2v5fm9TirRJqj +K3OfNpTTlVyvI7X0MnIj5D1No+9wbd7CjEmXGIeWJUXfPMLY1sw5qbdeZhsxdINq +cRg9tQnxEko38Fbvx1mi2YhAUOs83+egyvzOTAfwqSi2004S2xZhY0hAykcYrtkY +8U31Pzp/lxt3wZsgj5pyobyTQ31E2Hug3bPWGoFUmuSZxGtzlReoI9PQKiDlI6vY +3jrc8rJziUs3BqctFxLXsnqalmJafy+/c9524PPZsw2gmuopvkPn0ZVf1ZVhxFxw +FB7C6wlTFwb7iDdnAuyOLLpxj+9Y2SMiSXqoUC7jM1sd61Hmc8ekjnron15SXnAN +zAnlpyoYV3YEDlvgHpCjnoML+LhKvS757ubvY4iVa6qdPqxj6YBAcEIGkASnMJqr +v0mBlhK4HFYI3kdQnxaJbxoX1S+DmeQahTrusyQIDNPgdEtlk41UAcQkSVNg/Vsi +GIdqyGnyQN7CipwfyKTprjfPcwkZ0RrH08IkUlJtIAmzH31PcHTt6H/MLnlM4HKb +95Dz0Atho1VsonP5+U4Od+Hxtqv3wVOXkBVM/g9Mspay44rbiK5LCEZF/YzsVYZk +6RBlw+9BxsUPzDwveKzJE80D68GmdE4fdCdoo2tBBwSUcINTjEbXG6QorwARAQAB +tDBBbGV4YW5kZXIgTmF1bW92IDxhbGV4YW5kZXJfbmF1bW92QG9wZW5zdXNlLm9y +Zz6JAlQEEwEIAD4WIQRxqgnZ6IcP2wqnth4h+Wje90er1wUCWHArjgIbAwUJEswD +AAULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgAAKCRAh+Wje90er1yjNEACGiPXpr/di +GiKQyKXRSczO5YZEOg7/3UeE6EV4fiIMXQLqJCoKd9AqBR23aQYvRklBJ0oKSwVH +s+IkxOQbj9MUw/urFbSEs7eh0+p5K8mVdFXYGjJ7FWrAaLDzmsWpibS+v4lEGtoI +cNr6z7o61bkAOHu1EY7QrpTpL8AFFXHrFmMM0a0tOYumc7rQJfXUU7wd5CxCif7X +WwFVZul0pbcUyPAOrWasgExiB0HVnd7uP3plnp40Ix7nxczWo9+iIXujk9vRXKoN +VTg2KoN7OSpmzBcmcJcmEl7rrfcOWqlaBvOjIdgU75f+ajF4Zy47IniBlK8CW4+i +Alrc5CvrpeQF4raYKHlcV7jN07crnWpR5y0bXGpXzXvmikvrMxnJWea1/PSQb3QI +cVNzGjRLHIrwMSRTaxrFQmCwBgUcd87ndl3chV1ab0sm1UpONFvqcxFVRRf2yJXF +3+niaCXYTzo7jtX83ss4Gav8hQ4WZbY94TFM3JPBOd2WsEiuVHICUNFli93M2QNd +v/gUToHzfWQCzgiVLj3AJC3KMjRiQP/8HlvMtVskTBZvfyUdOTzoQjvGqA+4rBrV +Pqxf5Y5zHgDy0vodcK8yDAyEFPUTlBv/5dLmyLLNZTOeh9s9GdUZl6g8X9PnUG/O +lGXXGWX8VejaVCuIG//Lp6BdGKj3YtZJZLkCDQRYcCuOARAA0axoFkNKNGo9RGCW +KGYzzFlb2jlY/HfA+q+jlL/Y3MOS2//Gp/k1+Wx9wG88qopmiLwi0mbVtup7ZblV +Vrr9oF/bLMJyNa2TUs4G3sGCBYwBNs5hlnEAxgBlFJG/DtIaSvxRT3yiAX6YPanI +YVj+wGGLClN4aZw6/oXhL2FazP6WJk8liH4bcG25YSARTgaDJqS9JERt8xkD8SmA +SevkwKyOIColjhKVKIN2orJCayXKjo+Nl/Q4k7ty41faTz6BVcibfgRinBz7+fvQ +Z3I8RKgfZBVI4hJmKVaP93iz0EOwgTeFDraIdkRO3vw5IU6teIcaqrfCS2+HrrxG +sUYwkswik5UlUWbnm2Sw464iyVsECx+3ys/54OS3bAbprtcW3ywGTCYxCFWor2Ep +wjDg4wJI4GyCBYV5tpqT+RldwJNd3oUD/LEUS/1aEe5tfAWoDU6eZVRI9yZpCngz +jpKZ6qX1jBkpsAMacUAFwO8/SJDOCUPK1k1oMx9DqgmCge/Ccn/bSk3YdLNGSbc8 +FoJ91NTXsa7GDjMNaqaF6zPIfk293Uv4BAURttT3JkH5kBU7TNfFisOl8w35TIAB +GGKQpdUjOy2RJ5j8Xvrgs89/rWTmSPopxRY01OG5xcccGuYHebvqEpkIS9Wi3ED4 +xso89Rz2EbB6alPjxAmgvmmV0NkAEQEAAYkCPAQYAQgAJhYhBHGqCdnohw/bCqe2 +HiH5aN73R6vXBQJYcCuOAhsMBQkSzAMAAAoJECH5aN73R6vXZTAP+gK6BgDD0BoO +yw7HJTJGxybBjHMwnqLUFideFp7tehMl0m/AZvUAXX9aKvFeBQv8WOXW2M6v3W2u +y/rla7uMKvRhE1OtYFa12BE4NCl3MlR4s1uKMmHfVxZ3brXh4c5j+AVpcsNtAmN5 +OZBXhTCeDxWLDB/ElHMstOzrSljrR9SkzuLTBJlRg6MLjV5bJWi+Fk4nlVxfypGI +bzJcqdRRtnGW75VGCQAqwbRAQEKoApg9QzxwM8zCPc3LCmaK4q302BwYm49i60Ho +S0zJj5JQSodSp+GjCu9yJnjKcr8HkqwcVyX0+W/keXP7IJiWq5hhu7v4MY2+59VR +yy+IuougSw1KaIy0AvdDHoLfSJljZubJEO5VVpm3xANH0RoSbRAerZVJ3VviBd3D +vpZTmta24ZlTPUA1ijHRAlDtzwEuqugYUyCa/yqT8QmbahMT3Ldh+XIXPvpfGah1 +1tEbIJRH5Dx6rz4c95ZliYw8aR+kK6wbpjOM+HrGqgy0LTJkNw+JesFKxqocYFVR +bqMVsfh9D7+DUtIg78C3vmK6WJ+9urLmQ+nZ0IfhtlPaYZ1QFo66Lt2i/OL8fXVd +1vFKd3x9dyWqHd4a76V+MHTNQJdL3tzJvAXO4wD0ANp22PgVniZUgEhd3leWKukL +wlN767Yy1alaigI4FnBOe+rWTFyHCHTA +=ihYV +-----END PGP PUBLIC KEY BLOCK----- diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..ac683ce --- /dev/null +++ b/debian/watch @@ -0,0 +1,6 @@ +version=3 +opts=pgpsigurlmangle=s/$/.sig/ \ +https://ftp.gnu.org/gnu/screen/screen-([\d\.]+)\.tar\.gz + +#opts=pgpsigurlmangle=s/$/.sig/ \ +#http://download.savannah.gnu.org/releases/screen/screen-([\d\.]+)\.tar\.gz |