diff options
author | 2018-05-25 23:29:36 +0000 | |
---|---|---|
committer | 2018-05-31 15:18:32 -0700 | |
commit | 8ff4f2f51a6cf07fc33742ce3bee81328896e49b (patch) | |
tree | 4a166b8389404be98a6c098babaa444e2dec8f48 /patches | |
parent | 76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (diff) | |
download | current-14.1.tar.gz current-14.1.tar.xz |
Fri May 25 23:29:36 UTC 201814.1
patches/packages/glibc-zoneinfo-2018e-noarch-2_slack14.1.txz: Rebuilt.
Handle removal of US/Pacific-New timezone. If we see that the machine is
using this, it will be automatically switched to US/Pacific.
Diffstat (limited to 'patches')
1429 files changed, 180189 insertions, 0 deletions
diff --git a/patches/packages/MPlayer-1.2_20160125-x86_64-1_slack14.1.txt b/patches/packages/MPlayer-1.2_20160125-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..fcba8f20 --- /dev/null +++ b/patches/packages/MPlayer-1.2_20160125-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +MPlayer: MPlayer (Linux movie player) +MPlayer: +MPlayer: MPlayer is a movie player for Linux. It plays most MPEG, VOB, AVI, +MPlayer: Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, +MPlayer: YUV4MPEG, FILM, RoQ, PVA files, supported by many native, XAnim, +MPlayer: and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, +MPlayer: DivX 3/4/5 and even WMV movies, too (without the avifile library). +MPlayer: MPlayer supports 10 types of subtitles formats: VobSub, +MPlayer: MicroDVD, SubRip, SubViewer, Sami, VPlayer, RT, SSA, AQTitle, MPsub. +MPlayer: +MPlayer: Homepage for MPLayer is http://www.mplayerhq.hu/ diff --git a/patches/packages/apr-1.5.0-x86_64-1_slack14.1.txt b/patches/packages/apr-1.5.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..462103da --- /dev/null +++ b/patches/packages/apr-1.5.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +apr: apr (Apache Portable Runtime) +apr: +apr: The mission of the Apache Portable Runtime (APR) is to provide a +apr: free library of C data structures and routines, forming a system +apr: portability layer to as many operating systems as possible. +apr: +apr: +apr: +apr: +apr: +apr: diff --git a/patches/packages/apr-util-1.5.3-x86_64-1_slack14.1.txt b/patches/packages/apr-util-1.5.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..8a5614af --- /dev/null +++ b/patches/packages/apr-util-1.5.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +apr-util: apr-util (Apache Portable Runtime utilities) +apr-util: +apr-util: The mission of the Apache Portable Runtime (APR) is to provide a +apr-util: free library of C data structures and routines, forming a system +apr-util: portability layer to as many operating systems as possible. +apr-util: +apr-util: This package contains additional utility interfaces for APR; +apr-util: including support for XML, LDAP, database interfaces, URI parsing, +apr-util: and more. +apr-util: +apr-util: diff --git a/patches/packages/bash-4.2.053-x86_64-2_slack14.1.txt b/patches/packages/bash-4.2.053-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..99268883 --- /dev/null +++ b/patches/packages/bash-4.2.053-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +bash: bash (sh-compatible shell) +bash: +bash: The GNU Bourne-Again SHell. Bash is a sh-compatible command +bash: interpreter that executes commands read from the standard input or +bash: from a file. Bash also incorporates useful features from the Korn +bash: and C shells (ksh and csh). Bash is ultimately intended to be a +bash: conformant implementation of the IEEE Posix Shell and Tools +bash: specification (IEEE Working Group 1003.2). +bash: +bash: Bash must be present for the system to boot properly. +bash: diff --git a/patches/packages/bind-9.9.11_P1-x86_64-1_slack14.1.txt b/patches/packages/bind-9.9.11_P1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..3289b10d --- /dev/null +++ b/patches/packages/bind-9.9.11_P1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +bind: bind (DNS server and utilities) +bind: +bind: The named daemon and support utilities such as dig, host, and +bind: nslookup. Sample configuration files for running a simple caching +bind: nameserver are included. Documentation for advanced name server +bind: setup can be found in /usr/doc/bind-9.x.x/. +bind: +bind: +bind: +bind: +bind: diff --git a/patches/packages/blueman-r708-x86_64-4_slack14.1.txt b/patches/packages/blueman-r708-x86_64-4_slack14.1.txt new file mode 100644 index 00000000..c1fff0da --- /dev/null +++ b/patches/packages/blueman-r708-x86_64-4_slack14.1.txt @@ -0,0 +1,11 @@ +blueman: Blueman (Graphical Bluetooth Manager) +blueman: +blueman: Blueman is a GTK+ Bluetooth Manager for tasks such as: +blueman: +blueman: - Connecting to 3G/EDGE/GPRS via DUN profile. +blueman: - Connecting to/Creating bluetooth networks +blueman: - Connecting to input and audio devices +blueman: - Sending/Receiving/Browsing files via OBEX +blueman: - Pairing +blueman: +blueman: Homepage: http://blueman-project.org diff --git a/patches/packages/bluez-4.99-x86_64-4_slack14.1.txt b/patches/packages/bluez-4.99-x86_64-4_slack14.1.txt new file mode 100644 index 00000000..b4b50d59 --- /dev/null +++ b/patches/packages/bluez-4.99-x86_64-4_slack14.1.txt @@ -0,0 +1,11 @@ +bluez: bluez (Bluetooth libraries and utilities) +bluez: +bluez: Bluez is the Bluetooth stack for Linux, allowing Bluetooth adaptors +bluez: and devices to be used with Linux. This package contains the Bluez +bluez: libraries, utilities, and other support files. +bluez: +bluez: For more info, visit: http://www.bluez.org +bluez: +bluez: +bluez: +bluez: diff --git a/patches/packages/btrfs-progs-20150213-x86_64-1.txt b/patches/packages/btrfs-progs-20150213-x86_64-1.txt new file mode 100644 index 00000000..e94dd7a9 --- /dev/null +++ b/patches/packages/btrfs-progs-20150213-x86_64-1.txt @@ -0,0 +1,11 @@ +btrfs-progs: btrfs-progs (Btrfs filesystem utilities) +btrfs-progs: +btrfs-progs: Btrfs is a new copy on write filesystem for Linux aimed at implementing +btrfs-progs: advanced features while focusing on fault tolerance, repair and easy +btrfs-progs: administration. Initially developed by Oracle, Btrfs is licensed under +btrfs-progs: the GPL and open for contribution from anyone. +btrfs-progs: +btrfs-progs: +btrfs-progs: +btrfs-progs: Btrfs homepage: http://btrfs.wiki.kernel.org +btrfs-progs: diff --git a/patches/packages/ca-certificates-20161130-noarch-1_slack14.1.txt b/patches/packages/ca-certificates-20161130-noarch-1_slack14.1.txt new file mode 100644 index 00000000..a7215388 --- /dev/null +++ b/patches/packages/ca-certificates-20161130-noarch-1_slack14.1.txt @@ -0,0 +1,11 @@ +ca-certificates: ca-certificates (PEM Files of CA Certificates) +ca-certificates: +ca-certificates: This package includes PEM files of CA certificates to allow SSL-based +ca-certificates: applications to check for the authenticity of SSL connections. +ca-certificates: +ca-certificates: Homepage: http://packages.qa.debian.org/c/ca-certificates.html +ca-certificates: +ca-certificates: +ca-certificates: +ca-certificates: +ca-certificates: diff --git a/patches/packages/cairo-1.12.16-x86_64-1_slack14.1.txt b/patches/packages/cairo-1.12.16-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..375ea054 --- /dev/null +++ b/patches/packages/cairo-1.12.16-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +cairo: cairo (graphics library used by GTK+) +cairo: +cairo: Cairo is a vector graphics library designed to provide high-quality +cairo: display and print output. Cairo is designed to produce +cairo: identical output on all output media while taking advantage of display +cairo: hardware acceleration when available (eg. through the X Render +cairo: Extension or OpenGL). +cairo: +cairo: +cairo: +cairo: diff --git a/patches/packages/cups-1.5.4-x86_64-4_slack14.1.txt b/patches/packages/cups-1.5.4-x86_64-4_slack14.1.txt new file mode 100644 index 00000000..55818635 --- /dev/null +++ b/patches/packages/cups-1.5.4-x86_64-4_slack14.1.txt @@ -0,0 +1,11 @@ +cups: CUPS (Common UNIX Printing System) +cups: +cups: The Common UNIX Printing System provides a portable printing layer for +cups: UNIX(R)-like operating systems. It has been developed by Easy Software +cups: Products to promote a standard printing solution for all UNIX vendors +cups: and users. CUPS uses the Internet Printing Protocol ("IPP") as the +cups: basis for managing print jobs and queues. The CUPS package includes +cups: System V and Berkeley command-line interfaces, a PostScript RIP +cups: package for supporting non-PostScript printer drivers, and tools for +cups: creating additional printer drivers and other CUPS services. +cups: diff --git a/patches/packages/curl-7.60.0-x86_64-1_slack14.1.txt b/patches/packages/curl-7.60.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..eda0c0f2 --- /dev/null +++ b/patches/packages/curl-7.60.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +curl: curl (command line URL data transfer tool) +curl: +curl: Curl is a command line tool for transferring data specified with URL +curl: syntax. The command is designed to work without user interaction or +curl: any kind of interactivity. Curl offers a busload of useful tricks +curl: like proxy support, user authentication, ftp upload, HTTP post, SSL +curl: (https:) connections, cookies, file transfer resume and more. +curl: +curl: libcurl is a library that Curl uses to do its job. It is readily +curl: available to be used by your software, too. +curl: diff --git a/patches/packages/dhcp-4.4.1-x86_64-1_slack14.1.txt b/patches/packages/dhcp-4.4.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..beaa83c2 --- /dev/null +++ b/patches/packages/dhcp-4.4.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +dhcp: dhcp (DHCP server and client utilities) +dhcp: +dhcp: This package provides the ISC's DHCP utilities, including both a +dhcp: server and client. The DHCP protocol allows a host to contact a +dhcp: central server which maintains a list of IP addresses which may be +dhcp: assigned on one or more subnets. A DHCP client may request an +dhcp: address from this pool, and then use it temporarily for communication +dhcp: on the network. The DHCP protocol also provides a mechanism whereby +dhcp: a client can learn important details about the network to which it is +dhcp: attached, such as the location of a default router or name server. +dhcp: diff --git a/patches/packages/dhcpcd-6.0.5-x86_64-3_slack14.1.txt b/patches/packages/dhcpcd-6.0.5-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..31304a2a --- /dev/null +++ b/patches/packages/dhcpcd-6.0.5-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +dhcpcd: dhcpcd (DHCP client daemon) +dhcpcd: +dhcpcd: The DHCP client program dhcpcd is used to connect to a network by +dhcpcd: contacting a DHCP server. dhcpcd gets an IP address and other +dhcpcd: information from a corresponding DHCP server, configures the network +dhcpcd: interface automatically, and tries to renew the lease time according +dhcpcd: to RFC2131 or RFC1541 depending on the command line option. +dhcpcd: +dhcpcd: +dhcpcd: +dhcpcd: diff --git a/patches/packages/dnsmasq-2.78-x86_64-1_slack14.1.txt b/patches/packages/dnsmasq-2.78-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..4029c10f --- /dev/null +++ b/patches/packages/dnsmasq-2.78-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +dnsmasq: dnsmasq (small DNS and DHCP server) +dnsmasq: +dnsmasq: Dnsmasq is a lightweight, easy to configure DNS forwarder and DHCP +dnsmasq: server. It is designed to provide DNS (and optionally DHCP) to a +dnsmasq: small network, and can serve the names of local machines which are not +dnsmasq: in the global DNS. +dnsmasq: +dnsmasq: Dnsmasq was written by Simon Kelley. +dnsmasq: +dnsmasq: Homepage: http://www.thekelleys.org.uk/dnsmasq/ +dnsmasq: diff --git a/patches/packages/emacs-25.3-x86_64-1_slack14.1.txt b/patches/packages/emacs-25.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..77e793c2 --- /dev/null +++ b/patches/packages/emacs-25.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +emacs: emacs (GNU Emacs) +emacs: +emacs: Emacs is the extensible, customizable, self-documenting real-time +emacs: display editor. If this seems to be a bit of a mouthful, an +emacs: easier explanation is that Emacs is a text editor and more. At +emacs: its core is an interpreter for Emacs Lisp, a dialect of the Lisp +emacs: programming language with extensions to support text editing. +emacs: This version supports X. +emacs: +emacs: http://www.gnu.org/software/emacs/ +emacs: diff --git a/patches/packages/expat-2.2.2-x86_64-1_slack14.1.txt b/patches/packages/expat-2.2.2-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..fcd3a006 --- /dev/null +++ b/patches/packages/expat-2.2.2-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +expat: expat (C library for parsing XML) +expat: +expat: This is Expat, a C library for parsing XML, written by James Clark. +expat: Expat is a stream-oriented XML parser used by Python, GNOME, Xft2, +expat: and other things. +expat: +expat: +expat: +expat: +expat: +expat: diff --git a/patches/packages/flac-1.3.1-x86_64-1_slack14.1.txt b/patches/packages/flac-1.3.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..a9d24d65 --- /dev/null +++ b/patches/packages/flac-1.3.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +flac: flac (Free Lossless Audio Codec) +flac: +flac: FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, +flac: FLAC is similar to MP3, but lossless. "Free" means that the +flac: specification of the stream format is in the public domain, and that +flac: neither the FLAC format nor any of the implemented encoding/decoding +flac: methods are covered by any patent. It also means that the sources for +flac: libFLAC and libFLAC++ are available under the LGPL and the sources for +flac: flac, metaflac, and the plugins are available under the GPL. +flac: +flac: FLAC was developed by Josh Coalson. diff --git a/patches/packages/freetype-2.5.5-x86_64-2_slack14.1.txt b/patches/packages/freetype-2.5.5-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..89d99c6d --- /dev/null +++ b/patches/packages/freetype-2.5.5-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +freetype: freetype (A Free, High-Quality, and Portable Font Engine) +freetype: +freetype: The FreeType engine is a free and portable TrueType font rendering +freetype: engine. It has been developed to provide TrueType support to a +freetype: great variety of platforms and environments. +freetype: +freetype: +freetype: +freetype: +freetype: +freetype: diff --git a/patches/packages/gdk-pixbuf2-2.28.2-x86_64-2_slack14.1.txt b/patches/packages/gdk-pixbuf2-2.28.2-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..593db769 --- /dev/null +++ b/patches/packages/gdk-pixbuf2-2.28.2-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +gdk-pixbuf2: gdk-pixbuf2 (image library used by GTK+ v2) +gdk-pixbuf2: +gdk-pixbuf2: The gdk-pixbuf library provides a number of features: +gdk-pixbuf2: - GdkPixbuf structure for representing images. +gdk-pixbuf2: - Image loading facilities, both synchronous and progressive. +gdk-pixbuf2: - Rendering of a GdkPixbuf into various formats: +gdk-pixbuf2: drawables (windows, pixmaps), GdkRGB buffers. +gdk-pixbuf2: - Fast scaling and compositing of pixbufs. +gdk-pixbuf2: - Simple animation loading (ie. animated gifs). +gdk-pixbuf2: +gdk-pixbuf2: diff --git a/patches/packages/gegl-0.2.0-x86_64-3_slack14.1.txt b/patches/packages/gegl-0.2.0-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..e48bb58d --- /dev/null +++ b/patches/packages/gegl-0.2.0-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +gegl: GEGL (Generic Graphics Library) +gegl: +gegl: GEGL (Generic Graphics Library) is a graph based image processing +gegl: framework. +gegl: +gegl: GEGL provides infrastructure to do demand based cached non destructive +gegl: image editing on larger than RAM buffers. Through babl it provides +gegl: support for a wide range of color models and pixel storage formats for +gegl: input and output. +gegl: +gegl: diff --git a/patches/packages/gimp-2.8.18-x86_64-1_slack14.1.txt b/patches/packages/gimp-2.8.18-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7759a7ef --- /dev/null +++ b/patches/packages/gimp-2.8.18-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +gimp: gimp (The GNU Image Manipulation Program) +gimp: +gimp: The GIMP is a powerful tool for the preparation and manipulation of +gimp: digital images. The GIMP provides the user with a wide variety of +gimp: image manipulation, painting, processing, and rendering tools. The +gimp: GIMP's open design and extensible architecture make for a very +gimp: powerful end product for photo and image retouching, web graphics +gimp: design, or digital illustration. +gimp: +gimp: +gimp: diff --git a/patches/packages/git-2.14.1-x86_64-1_slack14.1.txt b/patches/packages/git-2.14.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..059a95ba --- /dev/null +++ b/patches/packages/git-2.14.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +git: git (the stupid content tracker) +git: +git: Git is a fast, scalable, distributed revision control system with an +git: unusually rich command set that provides both high-level operations +git: and full access to internals. +git: +git: "git" can mean anything, depending on your mood. +git: +git: Git was originally written by Linus Torvalds and is currently +git: maintained by Junio C. Hamano. +git: diff --git a/patches/packages/glibc-2.17-x86_64-11_slack14.1.txt b/patches/packages/glibc-2.17-x86_64-11_slack14.1.txt new file mode 100644 index 00000000..9b940f88 --- /dev/null +++ b/patches/packages/glibc-2.17-x86_64-11_slack14.1.txt @@ -0,0 +1,11 @@ +glibc: glibc (GNU C libraries) +glibc: +glibc: This package contains the GNU C libraries and header files. The GNU +glibc: C library was written originally by Roland McGrath, and is currently +glibc: maintained by Ulrich Drepper. Some parts of the library were +glibc: contributed or worked on by other people. +glibc: +glibc: You'll need this package to compile programs. +glibc: +glibc: +glibc: diff --git a/patches/packages/glibc-i18n-2.17-x86_64-11_slack14.1.txt b/patches/packages/glibc-i18n-2.17-x86_64-11_slack14.1.txt new file mode 100644 index 00000000..7384659b --- /dev/null +++ b/patches/packages/glibc-i18n-2.17-x86_64-11_slack14.1.txt @@ -0,0 +1,11 @@ +glibc-i18n: glibc-i18n (locale files from glibc) +glibc-i18n: +glibc-i18n: These files go in /usr/lib/locale and /usr/share/i18n/ to provide +glibc-i18n: internationalization support. You'll need this package unless you +glibc-i18n: will be using US English only. +glibc-i18n: +glibc-i18n: +glibc-i18n: +glibc-i18n: +glibc-i18n: +glibc-i18n: diff --git a/patches/packages/glibc-profile-2.17-x86_64-11_slack14.1.txt b/patches/packages/glibc-profile-2.17-x86_64-11_slack14.1.txt new file mode 100644 index 00000000..f9b53ba6 --- /dev/null +++ b/patches/packages/glibc-profile-2.17-x86_64-11_slack14.1.txt @@ -0,0 +1,11 @@ +glibc-profile: glibc-profile (GNU C libraries with profiling support) +glibc-profile: +glibc-profile: This package contains static versions of the GNU C libraries with +glibc-profile: support for profiling binaries using gprof. gprof calculates how +glibc-profile: much time a program spends in each routine which can suggest where +glibc-profile: to concentrate efforts to improve performance. +glibc-profile: +glibc-profile: See the gprof man page for more details. +glibc-profile: +glibc-profile: +glibc-profile: diff --git a/patches/packages/glibc-solibs-2.17-x86_64-11_slack14.1.txt b/patches/packages/glibc-solibs-2.17-x86_64-11_slack14.1.txt new file mode 100644 index 00000000..3824184d --- /dev/null +++ b/patches/packages/glibc-solibs-2.17-x86_64-11_slack14.1.txt @@ -0,0 +1,11 @@ +glibc-solibs: glibc-solibs (shared GNU C libraries) +glibc-solibs: +glibc-solibs: This package contains the shared libraries, binaries, and support +glibc-solibs: files required to run most Linux applications linked with glibc. +glibc-solibs: +glibc-solibs: +glibc-solibs: +glibc-solibs: +glibc-solibs: +glibc-solibs: +glibc-solibs: diff --git a/patches/packages/glibc-zoneinfo-2018e-noarch-2_slack14.1.txt b/patches/packages/glibc-zoneinfo-2018e-noarch-2_slack14.1.txt new file mode 100644 index 00000000..c74ccc6a --- /dev/null +++ b/patches/packages/glibc-zoneinfo-2018e-noarch-2_slack14.1.txt @@ -0,0 +1,11 @@ +glibc-zoneinfo: glibc-zoneinfo (timezone database) +glibc-zoneinfo: +glibc-zoneinfo: This package allows you to configure your time zone. +glibc-zoneinfo: +glibc-zoneinfo: This timezone database comes from the tzdata and tzcode packages by +glibc-zoneinfo: Arthur David Olson et.al. The latest version and more information +glibc-zoneinfo: may be found at: http://www.iana.org/time-zones +glibc-zoneinfo: +glibc-zoneinfo: Use the timeconfig utility to set your local time zone. +glibc-zoneinfo: +glibc-zoneinfo: diff --git a/patches/packages/gnupg-1.4.22-x86_64-1_slack14.1.txt b/patches/packages/gnupg-1.4.22-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..59d38136 --- /dev/null +++ b/patches/packages/gnupg-1.4.22-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +gnupg: gnupg (The GNU Privacy Guard) +gnupg: +gnupg: GnuPG is GNU's tool for secure communication and data storage. It can +gnupg: be used to encrypt data and to create digital signatures. It includes +gnupg: an advanced key management facility and is compliant with the proposed +gnupg: OpenPGP Internet standard as described in RFC2440. +gnupg: +gnupg: +gnupg: +gnupg: +gnupg: diff --git a/patches/packages/gnupg2-2.0.24-x86_64-1_slack14.1.txt b/patches/packages/gnupg2-2.0.24-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..73fb401d --- /dev/null +++ b/patches/packages/gnupg2-2.0.24-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +gnupg2: GnuPG2 (The GNU Privacy Guard version 2.x) +gnupg2: +gnupg2: GnuPG is GNU's tool for secure communication and data storage. It can +gnupg2: be used to encrypt data and to create digital signatures. It includes +gnupg2: an advanced key management facility and is compliant with the proposed +gnupg2: OpenPGP Internet standard as described in RFC2440 and the S/MIME +gnupg2: standard as described by several RFCs. +gnupg2: +gnupg2: GnuPG 2.0 is the stable version of GnuPG integrating support for +gnupg2: OpenPGP and S/MIME. It does not conflict with an installed 1.4.x +gnupg2: OpenPGP-only version. diff --git a/patches/packages/gnutls-3.3.26-x86_64-1_slack14.1.txt b/patches/packages/gnutls-3.3.26-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..40c151dc --- /dev/null +++ b/patches/packages/gnutls-3.3.26-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +gnutls: gnutls (GNU TLS library) +gnutls: +gnutls: This is a TLS (Transport Layer Security) 1.0 and SSL (Secure Sockets +gnutls: Layer) 3.0 implementation. In brief, GnuTLS can be described as a +gnutls: library which offers an API to access secure communication protocols. +gnutls: These protocols provide privacy over insecure lines, and were designed +gnutls: to prevent eavesdropping, tampering, or message forgery. +gnutls: +gnutls: Homepage: http://www.gnu.org/software/gnutls/ +gnutls: +gnutls: diff --git a/patches/packages/grub-2.00-x86_64-3_slack14.1.txt b/patches/packages/grub-2.00-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..7892f242 --- /dev/null +++ b/patches/packages/grub-2.00-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +grub: GRUB (the GRand Unified Bootloader) +grub: +grub: GNU GRUB is a multiboot boot loader. +grub: +grub: Website: http://www.gnu.org/software/grub/ +grub: +grub: +grub: +grub: +grub: +grub: diff --git a/patches/packages/gtk+2-2.24.20-x86_64-2_slack14.1.txt b/patches/packages/gtk+2-2.24.20-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..22afdcc8 --- /dev/null +++ b/patches/packages/gtk+2-2.24.20-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +gtk+2: GTK+ version 2 (multi-platform GUI toolkit) +gtk+2: +gtk+2: This is GTK+, a multi-platform toolkit for creating graphical user +gtk+2: interfaces. Offering a complete set of widgets, GTK+ is suitable for +gtk+2: projects ranging from small one-off projects to complete application +gtk+2: suites. +gtk+2: +gtk+2: +gtk+2: +gtk+2: +gtk+2: diff --git a/patches/packages/httpd-2.4.29-x86_64-1_slack14.1.txt b/patches/packages/httpd-2.4.29-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..e0fe474d --- /dev/null +++ b/patches/packages/httpd-2.4.29-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +httpd: httpd (The Apache HTTP Server) +httpd: +httpd: Apache is an HTTP server designed as a plug-in replacement for the +httpd: NCSA HTTP server. It fixes numerous bugs in the NCSA server and +httpd: includes many frequently requested new features, and has an API which +httpd: allows it to be extended to meet users' needs more easily. +httpd: +httpd: Apache is the most popular web server in the known universe; over +httpd: half of the servers on the Internet are running Apache or one of +httpd: its variants. +httpd: diff --git a/patches/packages/imagemagick-6.8.6_10-x86_64-3_slack14.1.txt b/patches/packages/imagemagick-6.8.6_10-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..20e32054 --- /dev/null +++ b/patches/packages/imagemagick-6.8.6_10-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +imagemagick: imagemagick (a robust collection of image processing tools) +imagemagick: +imagemagick: ImageMagick is a collection of tools for manipulating and displaying +imagemagick: digital images. It can merge images, transform image dimensions, +imagemagick: do screen captures, create animation sequences, and convert between +imagemagick: many different image formats. +imagemagick: +imagemagick: ImageMagick was written by John Cristy of ImageMagick Studio. +imagemagick: +imagemagick: Home page: http://www.imagemagick.org/ +imagemagick: diff --git a/patches/packages/inputproto-2.3.2-noarch-1_slack14.1.txt b/patches/packages/inputproto-2.3.2-noarch-1_slack14.1.txt new file mode 100644 index 00000000..e5287dfe --- /dev/null +++ b/patches/packages/inputproto-2.3.2-noarch-1_slack14.1.txt @@ -0,0 +1,11 @@ +inputproto: inputproto (C prototypes for X Input extension) +inputproto: +inputproto: inputproto is part of X11. +inputproto: +inputproto: For more information about the X.Org Foundation (the providers of the +inputproto: X.Org implementation of the X Window System), see their website: +inputproto: +inputproto: http://www.x.org +inputproto: +inputproto: +inputproto: diff --git a/patches/packages/irssi-1.0.7-x86_64-1_slack14.1.txt b/patches/packages/irssi-1.0.7-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..c7127d1f --- /dev/null +++ b/patches/packages/irssi-1.0.7-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +irssi: irssi (Internet Relay Chat client) +irssi: +irssi: Irssi is an Internet Relay Chat client. Designed to be both secure +irssi: and expandable, irssi is easily customized using modules and scripts. +irssi: +irssi: For more information, visit: http://irssi.org +irssi: +irssi: irssi was written by Timo Sirainen. +irssi: +irssi: +irssi: diff --git a/patches/packages/jasper-1.900.1-x86_64-4_slack14.1.txt b/patches/packages/jasper-1.900.1-x86_64-4_slack14.1.txt new file mode 100644 index 00000000..77319af7 --- /dev/null +++ b/patches/packages/jasper-1.900.1-x86_64-4_slack14.1.txt @@ -0,0 +1,11 @@ +jasper: jasper (free implementation of the JPEG-2000 standard) +jasper: +jasper: The JasPer Project is an open-source initiative to provide a free +jasper: software-based reference implementation of the codec specified in the +jasper: JPEG-2000 Part-1 standard (i.e., ISO/IEC 15444-1).jasper: +jasper: +jasper: jasper home: http://www.ece.uvic.ca/~mdadams/jasper/ +jasper: +jasper: +jasper: +jasper: diff --git a/patches/packages/kdelibs-4.10.5-x86_64-3_slack14.1.txt b/patches/packages/kdelibs-4.10.5-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..d192ec7a --- /dev/null +++ b/patches/packages/kdelibs-4.10.5-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +kdelibs: kdelibs (KDE libraries) +kdelibs: +kdelibs: System libraries and other resources required for the KDE Platform. +kdelibs: +kdelibs: +kdelibs: +kdelibs: +kdelibs: +kdelibs: +kdelibs: +kdelibs: diff --git a/patches/packages/libX11-1.6.4-x86_64-1_slack14.1.txt b/patches/packages/libX11-1.6.4-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7a0038ff --- /dev/null +++ b/patches/packages/libX11-1.6.4-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libX11: libX11 (Core X11 protocol client library) +libX11: +libX11: libX11 is part of X11. +libX11: +libX11: For more information about the X.Org Foundation (the providers of the +libX11: X.Org implementation of the X Window System), see their website: +libX11: +libX11: http://www.x.org +libX11: +libX11: +libX11: diff --git a/patches/packages/libXcursor-1.1.15-x86_64-1_slack14.1.txt b/patches/packages/libXcursor-1.1.15-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..a95a82df --- /dev/null +++ b/patches/packages/libXcursor-1.1.15-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXcursor: libXcursor (X Window System Cursor management library) +libXcursor: +libXcursor: libXcursor is part of X11. +libXcursor: +libXcursor: For more information about the X.Org Foundation (the providers of the +libXcursor: X.Org implementation of the X Window System), see their website: +libXcursor: +libXcursor: http://www.x.org +libXcursor: +libXcursor: +libXcursor: diff --git a/patches/packages/libXext-1.3.3-x86_64-1_slack14.1.txt b/patches/packages/libXext-1.3.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..4a7d5952 --- /dev/null +++ b/patches/packages/libXext-1.3.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXext: libXext (library for common extensions to the X11 protocol) +libXext: +libXext: libXext is part of X11. +libXext: +libXext: For more information about the X.Org Foundation (the providers of the +libXext: X.Org implementation of the X Window System), see their website: +libXext: +libXext: http://www.x.org +libXext: +libXext: +libXext: diff --git a/patches/packages/libXfixes-5.0.3-x86_64-1_slack14.1.txt b/patches/packages/libXfixes-5.0.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..cad880c5 --- /dev/null +++ b/patches/packages/libXfixes-5.0.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXfixes: libXfixes (client library for the Xfixes extension) +libXfixes: +libXfixes: libXfixes is part of X11. +libXfixes: +libXfixes: For more information about the X.Org Foundation (the providers of the +libXfixes: X.Org implementation of the X Window System), see their website: +libXfixes: +libXfixes: http://www.x.org +libXfixes: +libXfixes: +libXfixes: diff --git a/patches/packages/libXfont-1.4.7-x86_64-2_slack14.1.txt b/patches/packages/libXfont-1.4.7-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..fd4ecec9 --- /dev/null +++ b/patches/packages/libXfont-1.4.7-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +libXfont: libXfont (library for legacy X11 font system) +libXfont: +libXfont: libXfont provides the core of the legacy X11 font system, handling the +libXfont: index files (fonts.dir, fonts.alias, fonts.scale), the various font +libXfont: file formats, and rasterizing them. It is used by the X servers, the +libXfont: X Font Server (xfs), and some font utilities (bdftopcf for instance), +libXfont: but should not be used by normal X11 clients. X11 clients access fonts +libXfont: via either the new API's in libXft, or the legacy API's in libX11. +libXfont: +libXfont: +libXfont: diff --git a/patches/packages/libXi-1.7.8-x86_64-1_slack14.1.txt b/patches/packages/libXi-1.7.8-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..f8ef8ec2 --- /dev/null +++ b/patches/packages/libXi-1.7.8-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXi: libXi (library for the X Input Extension) +libXi: +libXi: libXi is part of X11. +libXi: +libXi: For more information about the X.Org Foundation (the providers of the +libXi: X.Org implementation of the X Window System), see their website: +libXi: +libXi: http://www.x.org +libXi: +libXi: +libXi: diff --git a/patches/packages/libXrandr-1.5.1-x86_64-1_slack14.1.txt b/patches/packages/libXrandr-1.5.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7025c9ef --- /dev/null +++ b/patches/packages/libXrandr-1.5.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXrandr: libXrandr (X Resize, Rotate and Reflection extension library) +libXrandr: +libXrandr: libXrandr is part of X11. +libXrandr: +libXrandr: For more information about the X.Org Foundation (the providers of the +libXrandr: X.Org implementation of the X Window System), see their website: +libXrandr: +libXrandr: http://www.x.org +libXrandr: +libXrandr: +libXrandr: diff --git a/patches/packages/libXrender-0.9.10-x86_64-1_slack14.1.txt b/patches/packages/libXrender-0.9.10-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..254411dd --- /dev/null +++ b/patches/packages/libXrender-0.9.10-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXrender: libXrender (library for the Render Extension to the X11 protocol) +libXrender: +libXrender: libXrender is part of X11. +libXrender: +libXrender: For more information about the X.Org Foundation (the providers of the +libXrender: X.Org implementation of the X Window System), see their website: +libXrender: +libXrender: http://www.x.org +libXrender: +libXrender: +libXrender: diff --git a/patches/packages/libXres-1.2.0-x86_64-1_slack14.1.txt b/patches/packages/libXres-1.2.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..6abe3e3d --- /dev/null +++ b/patches/packages/libXres-1.2.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXres: libXres (X-Resource extension client library) +libXres: +libXres: libXres is part of X11. +libXres: +libXres: For more information about the X.Org Foundation (the providers of the +libXres: X.Org implementation of the X Window System), see their website: +libXres: +libXres: http://www.x.org +libXres: +libXres: +libXres: diff --git a/patches/packages/libXtst-1.2.3-x86_64-1_slack14.1.txt b/patches/packages/libXtst-1.2.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..b44d139f --- /dev/null +++ b/patches/packages/libXtst-1.2.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXtst: libXtst (client library for the XTEST & RECORD extensions) +libXtst: +libXtst: libXtst is part of X11. +libXtst: +libXtst: For more information about the X.Org Foundation (the providers of the +libXtst: X.Org implementation of the X Window System), see their website: +libXtst: +libXtst: http://www.x.org +libXtst: +libXtst: +libXtst: diff --git a/patches/packages/libXv-1.0.11-x86_64-1_slack14.1.txt b/patches/packages/libXv-1.0.11-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..57e51905 --- /dev/null +++ b/patches/packages/libXv-1.0.11-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXv: libXv (library for the X Video (Xv) extension to the X Window System) +libXv: +libXv: libXv is part of X11. +libXv: +libXv: For more information about the X.Org Foundation (the providers of the +libXv: X.Org implementation of the X Window System), see their website: +libXv: +libXv: http://www.x.org +libXv: +libXv: +libXv: diff --git a/patches/packages/libXvMC-1.0.10-x86_64-1_slack14.1.txt b/patches/packages/libXvMC-1.0.10-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..b23d9bd2 --- /dev/null +++ b/patches/packages/libXvMC-1.0.10-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libXvMC: libXvMC (X.Org X11 libXvMC runtime library) +libXvMC: +libXvMC: libXvMC is part of X11. +libXvMC: +libXvMC: For more information about the X.Org Foundation (the providers of the +libXvMC: X.Org implementation of the X Window System), see their website: +libXvMC: +libXvMC: http://www.x.org +libXvMC: +libXvMC: +libXvMC: diff --git a/patches/packages/libarchive-3.2.1-x86_64-1_slack14.1.txt b/patches/packages/libarchive-3.2.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..159b033a --- /dev/null +++ b/patches/packages/libarchive-3.2.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libarchive: libarchive (archive reading library) +libarchive: +libarchive: Libarchive is a programming library that can create and read +libarchive: several different streaming archive formats, including most +libarchive: popular TAR variants and several CPIO formats. It can also +libarchive: write SHAR archives. +libarchive: +libarchive: Homepage: http://libarchive.org +libarchive: +libarchive: +libarchive: diff --git a/patches/packages/libevent-2.0.22-x86_64-1_slack14.1.txt b/patches/packages/libevent-2.0.22-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..29b2f288 --- /dev/null +++ b/patches/packages/libevent-2.0.22-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libevent: libevent (event loop library) +libevent: +libevent: libevent is meant to replace the event loop found in event driven +libevent: network servers. An application just needs to call event_dispatch() +libevent: and then add or remove events dynamically without having to change the +libevent: event loop. The libevent API provides a mechanism to execute a +libevent: callback function when a specific event occurs on a file descriptor or +libevent: after a timeout has been reached. +libevent: +libevent: Homepage: http://libevent.org +libevent: diff --git a/patches/packages/libgcrypt-1.5.6-x86_64-1_slack14.1.txt b/patches/packages/libgcrypt-1.5.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..079f2133 --- /dev/null +++ b/patches/packages/libgcrypt-1.5.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libgcrypt: libgcrypt (General purpose crypto library) +libgcrypt: +libgcrypt: Libgcrypt is a general purpose crypto library based on the code +libgcrypt: used in GnuPG. +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: diff --git a/patches/packages/libidn-1.34-x86_64-1_slack14.1.txt b/patches/packages/libidn-1.34-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..86ffee4f --- /dev/null +++ b/patches/packages/libidn-1.34-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libidn: libidn (GNU Internationalized Domain Name library) +libidn: +libidn: GNU Libidn is an implementation of the Stringprep, Punycode and IDNA +libidn: specifications defined by the IETF Internationalized Domain Names +libidn: (IDN) working group, used for internationalized domain names. +libidn: +libidn: +libidn: +libidn: +libidn: +libidn: diff --git a/patches/packages/libiodbc-3.52.8-x86_64-1_slack14.1.txt b/patches/packages/libiodbc-3.52.8-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..cc761507 --- /dev/null +++ b/patches/packages/libiodbc-3.52.8-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libiodbc: libiodbc (Independent Open DataBase Connectivity) +libiodbc: +libiodbc: iODBC is the acronym for Independent Open DataBase Connectivity, +libiodbc: an Open Source platform independent implementation of both the ODBC +libiodbc: and X/Open specifications. It allows for developing solutions +libiodbc: that are language, platform and database independent. +libiodbc: +libiodbc: +libiodbc: +libiodbc: Homepage: http://iodbc.org/ +libiodbc: diff --git a/patches/packages/libjpeg-v8a-x86_64-2_slack14.1.txt b/patches/packages/libjpeg-v8a-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..5b4a1f09 --- /dev/null +++ b/patches/packages/libjpeg-v8a-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +libjpeg: libjpeg (Independent JPEG Group's JPEG software) +libjpeg: +libjpeg: Software to implement JPEG image compression and decompression. JPEG +libjpeg: (pronounced 'jay-peg') is a standardized compression method for +libjpeg: full-color and gray-scale images. JPEG is intended for compressing +libjpeg: 'real-world' scenes; cartoons and other non-realistic images are not +libjpeg: its strong suit. JPEG is lossy, however, on typical images of +libjpeg: real-world scenes, very good compression levels can be obtained with +libjpeg: no visible change, and amazingly high compression levels are possible +libjpeg: if you can tolerate a low-quality image. +libjpeg: diff --git a/patches/packages/libpcap-1.8.1-x86_64-1_slack14.1.txt b/patches/packages/libpcap-1.8.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..c8c985f3 --- /dev/null +++ b/patches/packages/libpcap-1.8.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libpcap: libpcap (packet capture library) +libpcap: +libpcap: libpcap is a library for user-level packet capture. libpcap provides +libpcap: a portable framework for low-level network monitoring. Applications +libpcap: include network statistics collection, security monitoring, network +libpcap: debugging, etc. The tcpdump utility uses libpcap. +libpcap: +libpcap: Project homepage: http://www.tcpdump.org +libpcap: +libpcap: +libpcap: diff --git a/patches/packages/libpng-1.4.20-x86_64-1_slack14.1.txt b/patches/packages/libpng-1.4.20-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..3d0deb67 --- /dev/null +++ b/patches/packages/libpng-1.4.20-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libpng: libpng (Portable Network Graphics library) +libpng: +libpng: PNG (Portable Network Graphics) is an extensible file format for the +libpng: lossless, portable, well-compressed storage of raster images. PNG +libpng: provides a patent-free replacement for GIF and can also replace many +libpng: common uses of TIFF. Indexed-color, grayscale, and truecolor images +libpng: are supported, plus an optional alpha channel. Sample depths range +libpng: from 1 to 16 bits. +libpng: +libpng: +libpng: diff --git a/patches/packages/libsndfile-1.0.26-x86_64-1_slack14.1.txt b/patches/packages/libsndfile-1.0.26-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..ce6d9604 --- /dev/null +++ b/patches/packages/libsndfile-1.0.26-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libsndfile: libsndfile (C library for reading and writing wav files) +libsndfile: +libsndfile: Libsndfile is a C library for reading and writing files containing +libsndfile: sampled sound (such as MS Windows WAV and Apple/SGI AIFF format). +libsndfile: +libsndfile: Homepage: http://www.mega-nerd.com/libsndfile/ +libsndfile: +libsndfile: +libsndfile: +libsndfile: +libsndfile: diff --git a/patches/packages/libsoup-2.42.2-x86_64-2_slack14.1.txt b/patches/packages/libsoup-2.42.2-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..45e21741 --- /dev/null +++ b/patches/packages/libsoup-2.42.2-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +libsoup: libsoup (an HTTP client/server library) +libsoup: +libsoup: Soup is an HTTP client/server library implementation in C. It uses +libsoup: GObjects and the glib main loop to integrate well with GTK+ +libsoup: applications, and has a synchronous API suitable for use in threaded +libsoup: applications. +libsoup: +libsoup: +libsoup: +libsoup: +libsoup: diff --git a/patches/packages/libssh-0.7.3-x86_64-1_slack14.1.txt b/patches/packages/libssh-0.7.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..89e201c5 --- /dev/null +++ b/patches/packages/libssh-0.7.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libssh: libssh (library implementing ssh protocols) +libssh: +libssh: libssh is a mulitplatform C library implementing the SSHv2 and SSHv1 +libssh: protocol on client and server side. With libssh, you can remotely +libssh: execute programs, transfer files, and use a secure and transparent +libssh: tunnel for your remote applications. +libssh: +libssh: Homepage: http://www.libssh.org/ +libssh: +libssh: +libssh: diff --git a/patches/packages/libtasn1-3.6-x86_64-1_slack14.1.txt b/patches/packages/libtasn1-3.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..20e57f4e --- /dev/null +++ b/patches/packages/libtasn1-3.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libtasn1: libtasn1 (ASN.1 library) +libtasn1: +libtasn1: Libtasn1 is the GNU ASN.1 library. Abstract Syntax Notation One +libtasn1: (ASN.1) is a standard and flexible notation that describes rules and +libtasn1: structures for representing, encoding, transmitting, and decoding +libtasn1: data in telecommunications and computer networking. +libtasn1: +libtasn1: Libtasn1 was written by Fabio Fiorina. +libtasn1: +libtasn1: +libtasn1: diff --git a/patches/packages/libvorbis-1.3.6-x86_64-1_slack14.1.txt b/patches/packages/libvorbis-1.3.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..aeddb637 --- /dev/null +++ b/patches/packages/libvorbis-1.3.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libvorbis: libvorbis (Ogg Vorbis library) +libvorbis: +libvorbis: This library supports the Vorbis General Audio Compression Codec +libvorbis: (commonly known as Ogg Vorbis). Ogg Vorbis is a fully open, +libvorbis: non-proprietary, patent-and-royalty-free, general-purpose compressed +libvorbis: audio format for audio and music at fixed and variable bitrates. +libvorbis: +libvorbis: The libvorbis library requires libao and libogg. You'll find some +libvorbis: basic tools for creating and using Ogg Vorbis files in the +libvorbis: vorbis-tools package. +libvorbis: diff --git a/patches/packages/libwmf-0.2.8.4-x86_64-6_slack14.1.txt b/patches/packages/libwmf-0.2.8.4-x86_64-6_slack14.1.txt new file mode 100644 index 00000000..9ce901b8 --- /dev/null +++ b/patches/packages/libwmf-0.2.8.4-x86_64-6_slack14.1.txt @@ -0,0 +1,11 @@ +libwmf: libwmf (WMF graphics format library) +libwmf: +libwmf: libwmf is a library for interpreting metafile images and either +libwmf: displaying them using X or converting them to standard formats such +libwmf: as PNG, JPEG, PS, EPS and SVG. +libwmf: +libwmf: +libwmf: +libwmf: +libwmf: +libwmf: diff --git a/patches/packages/libxcb-1.11.1-x86_64-2_slack14.1.txt b/patches/packages/libxcb-1.11.1-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..cc9d7054 --- /dev/null +++ b/patches/packages/libxcb-1.11.1-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +libxcb: libxcb (X protocol C-language Binding) +libxcb: +libxcb: The XCB library provides an interface to the X Window System protocol +libxcb: which is fully capable of replacing Xlib. In fact, libX11 makes use +libxcb: of libxcb as much as possible. :-) Porting to XCB has several +libxcb: advantages such as a smaller memory footprint, latency hiding, direct +libxcb: protocol access, and improved thread support. +libxcb: +libxcb: +libxcb: +libxcb: diff --git a/patches/packages/libxml2-2.9.5-x86_64-1_slack14.1.txt b/patches/packages/libxml2-2.9.5-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..806c9765 --- /dev/null +++ b/patches/packages/libxml2-2.9.5-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libxml2: libxml2 (XML parser library) +libxml2: +libxml2: Libxml2 is the XML C parser library and toolkit. XML itself is a +libxml2: metalanguage to design markup languages -- i.e. a text language where +libxml2: structures are added to the content using extra "markup" information +libxml2: enclosed between angle brackets. HTML is the most well-known markup +libxml2: language. Though the library is written in C, a variety of language +libxml2: bindings make it available in other environments. +libxml2: +libxml2: +libxml2: diff --git a/patches/packages/libxslt-1.1.29-x86_64-1_slack14.1.txt b/patches/packages/libxslt-1.1.29-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..561c005a --- /dev/null +++ b/patches/packages/libxslt-1.1.29-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libxslt: libxslt (XML transformation library) +libxslt: +libxslt: XSLT support for libxml2. (XSLT is a language used for transforming +libxslt: XML documents) +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: diff --git a/patches/packages/libyaml-0.1.6-x86_64-1_slack14.1.txt b/patches/packages/libyaml-0.1.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..0d9e6c94 --- /dev/null +++ b/patches/packages/libyaml-0.1.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +libyaml: libyaml (YAML parser, written in C) +libyaml: +libyaml: YAML Ain't Markup Language. It is a human friendly data serialization +libyaml: standard for all programming languages. +libyaml: +libyaml: Homepage: http://pyyaml.org/wiki/LibYAML +libyaml: +libyaml: +libyaml: +libyaml: +libyaml: diff --git a/patches/packages/linux-3.10.107/kernel-generic-3.10.107-x86_64-2.txt b/patches/packages/linux-3.10.107/kernel-generic-3.10.107-x86_64-2.txt new file mode 100644 index 00000000..b99e5509 --- /dev/null +++ b/patches/packages/linux-3.10.107/kernel-generic-3.10.107-x86_64-2.txt @@ -0,0 +1,11 @@ +kernel-generic: kernel-generic (a general purpose SMP Linux kernel) +kernel-generic: +kernel-generic: This is a Linux kernel with built-in support for most disk +kernel-generic: controllers. To use filesystems, or to load support for a SCSI or +kernel-generic: other controller, then you'll need to load one or more kernel +kernel-generic: modules using an initial ramdisk, or initrd. For more information +kernel-generic: about creating an initrd, see the README.initrd file in the /boot +kernel-generic: directory. +kernel-generic: +kernel-generic: SMP is "Symmetric multiprocessing", or multiple CPU/core support. +kernel-generic: diff --git a/patches/packages/linux-3.10.107/kernel-headers-3.10.107-x86-2.txt b/patches/packages/linux-3.10.107/kernel-headers-3.10.107-x86-2.txt new file mode 100644 index 00000000..27b46a0e --- /dev/null +++ b/patches/packages/linux-3.10.107/kernel-headers-3.10.107-x86-2.txt @@ -0,0 +1,11 @@ +kernel-headers: kernel-headers (Linux kernel include files) +kernel-headers: +kernel-headers: These are the include files from the Linux kernel. +kernel-headers: +kernel-headers: You'll need these to compile most system software for Linux. +kernel-headers: +kernel-headers: +kernel-headers: +kernel-headers: +kernel-headers: +kernel-headers: diff --git a/patches/packages/linux-3.10.107/kernel-huge-3.10.107-x86_64-2.txt b/patches/packages/linux-3.10.107/kernel-huge-3.10.107-x86_64-2.txt new file mode 100644 index 00000000..95357007 --- /dev/null +++ b/patches/packages/linux-3.10.107/kernel-huge-3.10.107-x86_64-2.txt @@ -0,0 +1,11 @@ +kernel-huge: kernel-huge (a fully-loaded SMP Linux kernel) +kernel-huge: +kernel-huge: This is a Linux kernel with built-in support for most disk +kernel-huge: controllers. If you're looking for a more stripped down kernel +kernel-huge: (this one contains everything but the kitchen sink ;-), then install +kernel-huge: the kernel-generic in the /boot directory along with an initrd to +kernel-huge: load support for your boot device and filesystem. For instructions +kernel-huge: on the initrd, see README.initrd in the /boot directory. +kernel-huge: +kernel-huge: SMP is "Symmetric multiprocessing", or multiple CPU/core support. +kernel-huge: diff --git a/patches/packages/linux-3.10.107/kernel-modules-3.10.107-x86_64-2.txt b/patches/packages/linux-3.10.107/kernel-modules-3.10.107-x86_64-2.txt new file mode 100644 index 00000000..56067d43 --- /dev/null +++ b/patches/packages/linux-3.10.107/kernel-modules-3.10.107-x86_64-2.txt @@ -0,0 +1,11 @@ +kernel-modules: kernel-modules (Linux kernel modules) +kernel-modules: +kernel-modules: A kernel module is a piece of object code that can be dynamically +kernel-modules: loaded into the Linux kernel to provide new kernel functions. Most of +kernel-modules: these modules provide support for devices such as CD-ROM drives, tape +kernel-modules: drives, and ethernet cards. You can choose which modules to load by +kernel-modules: editing /etc/rc.d/rc.modules. +kernel-modules: +kernel-modules: +kernel-modules: +kernel-modules: diff --git a/patches/packages/linux-3.10.107/kernel-source-3.10.107-noarch-2.txt b/patches/packages/linux-3.10.107/kernel-source-3.10.107-noarch-2.txt new file mode 100644 index 00000000..536c99c6 --- /dev/null +++ b/patches/packages/linux-3.10.107/kernel-source-3.10.107-noarch-2.txt @@ -0,0 +1,11 @@ +kernel-source: kernel-source (Linux kernel source) +kernel-source: +kernel-source: Source code for Linus Torvalds' Linux kernel. +kernel-source: +kernel-source: This is the complete source code for the Linux kernel. +kernel-source: +kernel-source: This kernel has been prepatched for the BlueBorne (Bluetooth L2CAP) +kernel-source: security issue (CVE-2017-1000251), as well as an issue with the +kernel-source: unix_dgram_sendmsg routine that could cause Samba to lock up. +kernel-source: +kernel-source: diff --git a/patches/packages/llvm-3.3-x86_64-3_slack14.1.txt b/patches/packages/llvm-3.3-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..3877ee22 --- /dev/null +++ b/patches/packages/llvm-3.3-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +llvm: llvm (LLVM compiler toolkit) +llvm: +llvm: Low Level Virtual Machine is a toolkit for the construction of highly +llvm: optimized compilers, optimizers, and runtime environments. +llvm: +llvm: This package also includes the clang frontend for the C family of +llvm: languages: C, C++, Objective-C, and Objective-C++ +llvm: +llvm: +llvm: Homepage: http://llvm.org/ +llvm: diff --git a/patches/packages/loudmouth-1.5.3-x86_64-1_slack14.1.txt b/patches/packages/loudmouth-1.5.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..f7799109 --- /dev/null +++ b/patches/packages/loudmouth-1.5.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +loudmouth: loudmouth (XMPP C programming library) +loudmouth: +loudmouth: Loudmouth is a lightweight and easy-to-use C library for programming +loudmouth: with the Jabber protocol. It is designed to be easy to get started +loudmouth: with, and yet extensible enough to allow you to do anything that the +loudmouth: Jabber protocol allows. +loudmouth: +loudmouth: loudmouth home: https://github.com/mcabber/loudmouth +loudmouth: +loudmouth: +loudmouth: diff --git a/patches/packages/lynx-2.8.8rel.2-x86_64-1_slack14.1.txt b/patches/packages/lynx-2.8.8rel.2-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..925b5830 --- /dev/null +++ b/patches/packages/lynx-2.8.8rel.2-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +lynx: Lynx (text mode browser) +lynx: +lynx: Lynx is a distributed hypertext browser with full World Wide Web +lynx: capabilities. Lynx can be used to access information on the World +lynx: Wide Web, or to build information systems intended primarily for local +lynx: access. For example, Lynx has been used to build several Campus Wide +lynx: Information Systems (CWIS). +lynx: +lynx: Lynx's authors include Lou Montulli, Garrett Blythe, Craig Lavender, +lynx: Michael Grobe, and Charles Rezac. +lynx: diff --git a/patches/packages/mailx-12.5-x86_64-2_slack14.1.txt b/patches/packages/mailx-12.5-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..5ae7aa79 --- /dev/null +++ b/patches/packages/mailx-12.5-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +mailx: mailx (a simple mail client) +mailx: +mailx: Mailx is derived from Berkeley Mail and is intended provide the +mailx: functionality of the POSIX mailx command with additional support +mailx: for MIME, IMAP, POP3, SMTP, and S/MIME. It provides enhanced +mailx: features for interactive use, such as caching and disconnected +mailx: operation for IMAP, message threading, scoring, and filtering. +mailx: It is also usable as a mail batch language, both for sending +mailx: and receiving mail. +mailx: +mailx: The maintainer and primary developer of mailx is Gunnar Ritter. diff --git a/patches/packages/mariadb-5.5.60-x86_64-1_slack14.1.txt b/patches/packages/mariadb-5.5.60-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..6c42fc57 --- /dev/null +++ b/patches/packages/mariadb-5.5.60-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mariadb: mariadb (Drop-in replacement for the MySQL Database Server) +mariadb: +mariadb: MariaDB is a backward compatible, drop-in replacement branch of the +mariadb: MySQL(R) Database Server. It includes all major open source storage +mariadb: engines, including the Aria storage engine. +mariadb: +mariadb: Homepage: http://mariadb.org/ +mariadb: +mariadb: +mariadb: +mariadb: diff --git a/patches/packages/mcabber-1.0.5-x86_64-1_slack14.1.txt b/patches/packages/mcabber-1.0.5-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..b88d33ff --- /dev/null +++ b/patches/packages/mcabber-1.0.5-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mcabber: mcabber (Jabber console client) +mcabber: +mcabber: mcabber is a small Jabber console client for Linux, maintained by +mcabber: Mikael Berthe. Mcabber includes features such as SSL support, +mcabber: multi-user chat (MUC), history logging, commands completion, and +mcabber: external actions triggers. +mcabber: +mcabber: mcabber project home is: http://www.lilotux.net/~mikael/mcabber/ +mcabber: +mcabber: +mcabber: diff --git a/patches/packages/mercurial-4.3.1-x86_64-1_slack14.1.txt b/patches/packages/mercurial-4.3.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..74728542 --- /dev/null +++ b/patches/packages/mercurial-4.3.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mercurial: mercurial (a distributed source management system) +mercurial: +mercurial: Mercurial is a cross-platform, distributed source management tool for +mercurial: software developers. It is written in Python, with a binary diff +mercurial: implementation written in C. Its major features include high- +mercurial: performance; serverless, fully distributed collaborative development; +mercurial: robust handling of both plain text and binary files; advanced +mercurial: branching and merging capabilities; and full source code available +mercurial: under the terms of the LGPL. +mercurial: +mercurial: Mercurial was written by Matt Mackall and other contributors. diff --git a/patches/packages/minicom-2.7.1-x86_64-1_slack14.1.txt b/patches/packages/minicom-2.7.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..ec008506 --- /dev/null +++ b/patches/packages/minicom-2.7.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +minicom: minicom (communications package) +minicom: +minicom: Minicom - a full featured menu-driven communications package similar +minicom: to the DOS program 'Telix'. Also includes sz/rz - utilities used to +minicom: upload and download files using the Zmodem protocol. +minicom: +minicom: Homepage: http://alioth.debian.org/projects/minicom +minicom: +minicom: +minicom: +minicom: diff --git a/patches/packages/mkinitrd-1.4.10-x86_64-1_slack14.1.txt b/patches/packages/mkinitrd-1.4.10-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..ac8d3a74 --- /dev/null +++ b/patches/packages/mkinitrd-1.4.10-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mkinitrd: mkinitrd (make an initial ramdisk) +mkinitrd: +mkinitrd: mkinitrd is a script to create an initial ramdisk that is loaded at +mkinitrd: the same time as the kernel. The initial ramdisk may be responsible +mkinitrd: for loading kernel modules (such a filesystem or SCSI controller +mkinitrd: module) that are needed to mount the root filesystem. +mkinitrd: +mkinitrd: The "initrd" is implemented as an initramfs. See the kernel +mkinitrd: documentation for more information on this, if you are interested. +mkinitrd: +mkinitrd: diff --git a/patches/packages/mozilla-firefox-45.9.0esr-x86_64-1_slack14.1.txt b/patches/packages/mozilla-firefox-45.9.0esr-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..1d399dbf --- /dev/null +++ b/patches/packages/mozilla-firefox-45.9.0esr-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mozilla-firefox: mozilla-firefox (Mozilla Firefox Web browser) +mozilla-firefox: +mozilla-firefox: This project is a redesign of the Mozilla browser component written +mozilla-firefox: using the XUL user interface language. Firefox empowers you to +mozilla-firefox: browse faster, more safely and more efficiently than with any other +mozilla-firefox: browser. +mozilla-firefox: +mozilla-firefox: Visit the Mozilla Firefox project online: +mozilla-firefox: http://www.mozilla.org/projects/firefox/ +mozilla-firefox: +mozilla-firefox: diff --git a/patches/packages/mozilla-nss-3.31.1-x86_64-1_slack14.1.txt b/patches/packages/mozilla-nss-3.31.1-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..9d2fe708 --- /dev/null +++ b/patches/packages/mozilla-nss-3.31.1-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mozilla-nss: mozilla-nss (Network Security Services) +mozilla-nss: +mozilla-nss: Network Security Services (NSS) is a set of libraries designed to +mozilla-nss: support cross-platform development of security-enabled client and +mozilla-nss: server applications. Applications built with NSS can support +mozilla-nss: SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, +mozilla-nss: X.509 v3 certificates, and other security standards. +mozilla-nss: +mozilla-nss: +mozilla-nss: Read http://www.mozilla.org/projects/security/pki/nss/overview.html +mozilla-nss: diff --git a/patches/packages/mozilla-thunderbird-45.8.0-x86_64-1_slack14.1.txt b/patches/packages/mozilla-thunderbird-45.8.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..79d02252 --- /dev/null +++ b/patches/packages/mozilla-thunderbird-45.8.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +mozilla-thunderbird: mozilla-thunderbird (Mozilla Thunderbird mail application) +mozilla-thunderbird: +mozilla-thunderbird: Mozilla Thunderbird is a redesign of the Mozilla mail component +mozilla-thunderbird: written using the XUL user interface language. Thunderbird makes +mozilla-thunderbird: emailing safer, faster, and easier than ever before with the +mozilla-thunderbird: industry's best implementations of features such as intelligent spam +mozilla-thunderbird: filters, built-in RSS reader, quick search, and much more. +mozilla-thunderbird: +mozilla-thunderbird: Visit the Mozilla Thunderbird project online: +mozilla-thunderbird: http://www.mozilla.org/projects/thunderbird/ +mozilla-thunderbird: diff --git a/patches/packages/mutt-1.5.23-x86_64-2_slack14.1.txt b/patches/packages/mutt-1.5.23-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..fdad157c --- /dev/null +++ b/patches/packages/mutt-1.5.23-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +mutt: Mutt (the Mutt mail user agent) +mutt: +mutt: Mutt is a small but very powerful text-based MIME mail client. Mutt +mutt: is highly configurable, and is well suited to the mail power user with +mutt: advanced features like key bindings, keyboard macros, mail threading, +mutt: regular expression searches and a powerful pattern matching language +mutt: for selecting groups of messages. +mutt: +mutt: +mutt: +mutt: diff --git a/patches/packages/ntp-4.2.8p11-x86_64-1_slack14.1.txt b/patches/packages/ntp-4.2.8p11-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..128dd5c6 --- /dev/null +++ b/patches/packages/ntp-4.2.8p11-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +ntp: ntp (Network Time Protocol daemon) +ntp: +ntp: The Network Time Protocol (NTP) is used to synchronize the time of a +ntp: computer client or server to another server or reference time source, +ntp: such as a radio or satellite receiver or modem. It provides client +ntp: accuracies typically within a millisecond on LANs and up to a few tens +ntp: of milliseconds on WANs relative to a primary server synchronized to +ntp: Coordinated Universal Time (UTC) via a Global Positioning Service +ntp: (GPS) receiver, for example. +ntp: +ntp: diff --git a/patches/packages/openssh-7.4p1-x86_64-2_slack14.1.txt b/patches/packages/openssh-7.4p1-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..65f39171 --- /dev/null +++ b/patches/packages/openssh-7.4p1-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +openssh: openssh (Secure Shell daemon and clients) +openssh: +openssh: ssh (Secure Shell) is a program for logging into a remote machine and +openssh: for executing commands on a remote machine. It is intended to replace +openssh: rlogin and rsh, and provide secure encrypted communications between +openssh: two untrusted hosts over an insecure network. sshd (SSH Daemon) is +openssh: the daemon program for ssh. OpenSSH is based on the last free version +openssh: of Tatu Ylonen's SSH, further enhanced and cleaned up by Aaron +openssh: Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt, and +openssh: Dug Song. It has a homepage at http://www.openssh.com/ +openssh: diff --git a/patches/packages/openssl-1.0.1u-x86_64-1_slack14.1.txt b/patches/packages/openssl-1.0.1u-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..26048b4f --- /dev/null +++ b/patches/packages/openssl-1.0.1u-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +openssl: openssl (Secure Sockets Layer toolkit) +openssl: +openssl: The OpenSSL certificate management tool and the shared libraries that +openssl: provide various encryption and decryption algorithms and protocols. +openssl: +openssl: This product includes software developed by the OpenSSL Project for +openssl: use in the OpenSSL Toolkit (http://www.openssl.org). This product +openssl: includes cryptographic software written by Eric Young +openssl: (eay@cryptsoft.com). This product includes software written by Tim +openssl: Hudson (tjh@cryptsoft.com). +openssl: diff --git a/patches/packages/openssl-solibs-1.0.1u-x86_64-1_slack14.1.txt b/patches/packages/openssl-solibs-1.0.1u-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..2811c662 --- /dev/null +++ b/patches/packages/openssl-solibs-1.0.1u-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +openssl-solibs: openssl-solibs (OpenSSL shared libraries) +openssl-solibs: +openssl-solibs: These shared libraries provide encryption routines required by +openssl-solibs: programs such as openssh, bind, sendmail, and many others. +openssl-solibs: +openssl-solibs: This product includes software developed by the OpenSSL Project for +openssl-solibs: use in the OpenSSL Toolkit (http://www.openssl.org). This product +openssl-solibs: includes cryptographic software written by Eric Young +openssl-solibs: (eay@cryptsoft.com). This product includes software written by Tim +openssl-solibs: Hudson (tjh@cryptsoft.com). +openssl-solibs: diff --git a/patches/packages/openvpn-2.4.6-x86_64-1_slack14.1.txt b/patches/packages/openvpn-2.4.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..73bb76e0 --- /dev/null +++ b/patches/packages/openvpn-2.4.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +openvpn: openvpn (secure IP tunnel daemon) +openvpn: +openvpn: OpenVPN is a full-featured SSL VPN which can accommodate a wide range +openvpn: of configurations, including remote access, site-to-site VPNs, WiFi +openvpn: security, and enterprise-scale remote access with load balancing, +openvpn: failover, and fine-grained access-controls. +openvpn: +openvpn: OpenVPN's home on the net is: http://openvpn.net +openvpn: +openvpn: +openvpn: diff --git a/patches/packages/patch-2.7.6-x86_64-1_slack14.1.txt b/patches/packages/patch-2.7.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..0120ae50 --- /dev/null +++ b/patches/packages/patch-2.7.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +patch: patch (apply a diff file to an original file or files) +patch: +patch: Patch is a utility used to apply diffs (or patches) to files, which +patch: are usually source code. +patch: +patch: Larry Wall wrote the original version of patch. Paul Eggert removed +patch: patch's arbitrary limits; added support for binary files, setting +patch: file times, and deleting files; and made it conform better to POSIX. +patch: Other contributors include Wayne Davison, who added unidiff support, +patch: and David MacKenzie, who added configuration and backup support. +patch: diff --git a/patches/packages/pcre-8.39-x86_64-1_slack14.1.txt b/patches/packages/pcre-8.39-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..70553664 --- /dev/null +++ b/patches/packages/pcre-8.39-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +pcre: pcre (Perl-compatible regular expression library) +pcre: +pcre: The PCRE library is a set of functions that implement regular +pcre: expression pattern matching using the same syntax and semantics as +pcre: Perl 5, with just a few differences (documented in the man page). +pcre: +pcre: +pcre: +pcre: +pcre: +pcre: diff --git a/patches/packages/php-5.6.36-x86_64-1_slack14.1.txt b/patches/packages/php-5.6.36-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..e771b5f3 --- /dev/null +++ b/patches/packages/php-5.6.36-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +php: php (HTML-embedded scripting language) +php: +php: PHP is an HTML-embedded scripting language. It shares syntax +php: characteristics with C, Java, and Perl. The primary objective behind +php: this language is to make a fast and easy-to-use scripting language +php: for dynamic web sites. +php: +php: More information can be found online at http://www.php.net/ +php: +php: +php: diff --git a/patches/packages/pidgin-2.12.0-x86_64-1_slack14.1.txt b/patches/packages/pidgin-2.12.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..1eb97f00 --- /dev/null +++ b/patches/packages/pidgin-2.12.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +pidgin: pidgin (GTK+ instant messaging program) +pidgin: +pidgin: Pidgin allows you to talk to anyone using a variety of messaging +pidgin: protocols, including AIM (Oscar and TOC), ICQ, IRC, Yahoo!, MSN +pidgin: Messenger, Jabber, Gadu-Gadu, Napster, and Zephyr. These protocols +pidgin: are implemented using a modular, easy to use design. To use a +pidgin: protocol, just load the plugin for it. +pidgin: +pidgin: For more info, see: http://www.pidgin.im +pidgin: +pidgin: diff --git a/patches/packages/ppp-2.4.5-x86_64-3_slack14.1.txt b/patches/packages/ppp-2.4.5-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..1c0d758c --- /dev/null +++ b/patches/packages/ppp-2.4.5-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +ppp: ppp (Point-to-Point Protocol) +ppp: +ppp: The Point-to-Point Protocol (PPP) provides a method for transmitting +ppp: data over serial links. It's commonly used for connecting to the +ppp: Internet using a modem. This package includes the PPP daemon (pppd), +ppp: which negotiates with the peer to establish the link and sets up the +ppp: ppp network interface, and pppsetup, an easy-to-use utility for +ppp: setting up your PPP daemon. +ppp: +ppp: +ppp: diff --git a/patches/packages/proftpd-1.3.5e-x86_64-1_slack14.1.txt b/patches/packages/proftpd-1.3.5e-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7053edf3 --- /dev/null +++ b/patches/packages/proftpd-1.3.5e-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +proftpd: proftpd (FTP server daemon) +proftpd: +proftpd: ProFTPD is the Professional File Transfer Protocol (FTP) server +proftpd: daemon. ProFTPD grew out of the desire to have a secure and +proftpd: configurable FTP server, and out of a significant admiration of the +proftpd: Apache web server. +proftpd: +proftpd: +proftpd: +proftpd: +proftpd: diff --git a/patches/packages/python-2.7.15-x86_64-1_slack14.1.txt b/patches/packages/python-2.7.15-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..047c1bd4 --- /dev/null +++ b/patches/packages/python-2.7.15-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +python: python (object-oriented interpreted programming language) +python: +python: Python is an interpreted, interactive, object-oriented programming +python: language that combines remarkable power with very clear syntax. +python: Python's basic power can be extended with your own modules written in +python: C or C++. Python is also adaptable as an extension language for +python: existing applications. +python: +python: +python: +python: diff --git a/patches/packages/qt-4.8.7-x86_64-1_slack14.1.txt b/patches/packages/qt-4.8.7-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..3b2da199 --- /dev/null +++ b/patches/packages/qt-4.8.7-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +qt: Qt (a multi-platform C++ graphical user interface toolkit) +qt: +qt: Qt is a complete and well-developed object-oriented framework for +qt: developing graphical user interface (GUI) applications using C++. +qt: +qt: Homepage: http://qt-project.org/ +qt: +qt: +qt: +qt: +qt: diff --git a/patches/packages/randrproto-1.5.0-noarch-1_slack14.1.txt b/patches/packages/randrproto-1.5.0-noarch-1_slack14.1.txt new file mode 100644 index 00000000..f2807263 --- /dev/null +++ b/patches/packages/randrproto-1.5.0-noarch-1_slack14.1.txt @@ -0,0 +1,11 @@ +randrproto: randrproto (C prototypes for RandR) +randrproto: +randrproto: RandR is the X11 Resize and Rotate Extension +randrproto: +randrproto: +randrproto: +randrproto: +randrproto: +randrproto: +randrproto: +randrproto: diff --git a/patches/packages/rsync-3.1.3-x86_64-1_slack14.1.txt b/patches/packages/rsync-3.1.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7565757a --- /dev/null +++ b/patches/packages/rsync-3.1.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +rsync: rsync (remote file sync) +rsync: +rsync: rsync is a replacement for rcp that has many more features. It +rsync: uses the "rsync algorithm" which provides a very fast method for +rsync: bringing remote files into sync. It does this by sending just the +rsync: differences in the files across the link, without requiring that both +rsync: sets of files are present at one of the ends of the link beforehand. +rsync: rsync was written by Andrew Tridgell and Paul Mackerras. +rsync: +rsync: Homepage: http://rsync.samba.org +rsync: diff --git a/patches/packages/ruby-1.9.3_p484-x86_64-1_slack14.1.txt b/patches/packages/ruby-1.9.3_p484-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..265efadf --- /dev/null +++ b/patches/packages/ruby-1.9.3_p484-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +ruby: ruby (Interpreted object-oriented scripting language) +ruby: +ruby: Ruby is an interpreted scripting language for quick and easy +ruby: object-oriented programming. It has many features to process text +ruby: files and to do system management tasks (as in Perl). It is simple, +ruby: straight-forward, and extensible. +ruby: +ruby: Visit the Ruby project online at http://www.ruby-lang.org/ +ruby: +ruby: +ruby: diff --git a/patches/packages/rxvt-2.7.10-x86_64-5_slack14.1.txt b/patches/packages/rxvt-2.7.10-x86_64-5_slack14.1.txt new file mode 100644 index 00000000..21fc353f --- /dev/null +++ b/patches/packages/rxvt-2.7.10-x86_64-5_slack14.1.txt @@ -0,0 +1,11 @@ +rxvt: rxvt (terminal emulator) +rxvt: +rxvt: rxvt is a color vt102 terminal emulator intended as an xterm +rxvt: replacement for users who do not require features such as Tektronix +rxvt: 4014 emulation and toolkit-style configurability. As a result, rxvt +rxvt: uses much less memory -- a significant advantage on a machine serving +rxvt: many X sessions. Also included is rclock, an analog clock for X. +rxvt: +rxvt: +rxvt: +rxvt: diff --git a/patches/packages/samba-4.4.16-x86_64-3_slack14.1.txt b/patches/packages/samba-4.4.16-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..f4b2ff06 --- /dev/null +++ b/patches/packages/samba-4.4.16-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +samba: samba (CIFS file and print server) +samba: +samba: Samba is a CIFS file and print server for CIFS clients. It allows +samba: you to make file space or printers on a Samba host available to CIFS +samba: clients (such as PCs running Windows). +samba: +samba: If you have any Windows file servers, you may be able to replace them +samba: or supplement them with Samba. One of Samba's big strengths is +samba: integration, so you can use it to tie together your Linux hosts and +samba: Windows PC clients. +samba: diff --git a/patches/packages/seamonkey-2.46-x86_64-3_slack14.1.txt b/patches/packages/seamonkey-2.46-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..da07187a --- /dev/null +++ b/patches/packages/seamonkey-2.46-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +seamonkey: SeaMonkey (an open-source web browser suite) +seamonkey: +seamonkey: The SeaMonkey browser suite. SeaMonkey features a state-of-the-art +seamonkey: web browser and powerful email client, as well as a WYSIWYG web page +seamonkey: composer and a feature-rich IRC chat client. +seamonkey: +seamonkey: +seamonkey: +seamonkey: Visit the SeaMonkey project at this URL: +seamonkey: http://www.mozilla.org/projects/seamonkey/ +seamonkey: diff --git a/patches/packages/seamonkey-solibs-2.46-x86_64-3_slack14.1.txt b/patches/packages/seamonkey-solibs-2.46-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..830b825d --- /dev/null +++ b/patches/packages/seamonkey-solibs-2.46-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +seamonkey-solibs: seamonkey-solibs (Shared libraries from Seamonkey) +seamonkey-solibs: +seamonkey-solibs: This package contains a subset of the shared libraries from Seamonkey +seamonkey-solibs: to provide runtime support for various programs. +seamonkey-solibs: This package is built from the Seamonkey sources and is provided +seamonkey-solibs: as a standalone runtime package for people who do not want to install +seamonkey-solibs: the entire seamonkey package (as for server use). +seamonkey-solibs: +seamonkey-solibs: This package is runtime only. The include files and other files for +seamonkey-solibs: development can be found in the seamonkey package. +seamonkey-solibs: diff --git a/patches/packages/sendmail-8.14.9-x86_64-1_slack14.1.txt b/patches/packages/sendmail-8.14.9-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..7498d7c9 --- /dev/null +++ b/patches/packages/sendmail-8.14.9-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +sendmail: sendmail (mail transfer agent) +sendmail: +sendmail: Eric Allman's mail transport agent. The _Unix System Administration +sendmail: Handbook_ calls sendmail 'The most complex and complete mail delivery +sendmail: system in common use...' +sendmail: +sendmail: Ready-made configuration files are included for systems connected by +sendmail: TCP/IP (with or without a nameserver) and for systems using UUCP. +sendmail: +sendmail: The procmail package is required to handle local mail delivery. +sendmail: diff --git a/patches/packages/sendmail-cf-8.14.9-noarch-1_slack14.1.txt b/patches/packages/sendmail-cf-8.14.9-noarch-1_slack14.1.txt new file mode 100644 index 00000000..da73ab70 --- /dev/null +++ b/patches/packages/sendmail-cf-8.14.9-noarch-1_slack14.1.txt @@ -0,0 +1,11 @@ +sendmail-cf: sendmail-cf (configuration files for sendmail) +sendmail-cf: +sendmail-cf: These files are used to create sendmail.cf configuration files. The +sendmail-cf: m4 macro processor is also required in order to make use of these +sendmail-cf: files. +sendmail-cf: +sendmail-cf: The files and documentation in /usr/share/sendmail should make it +sendmail-cf: possible to support virtually any mail configuration. NOTE: You +sendmail-cf: probably won't need this package if you're planning to use one of the +sendmail-cf: sendmail.cf samples included in the sendmail package. +sendmail-cf: diff --git a/patches/packages/shadow-4.1.5.1-x86_64-3_slack14.1.txt b/patches/packages/shadow-4.1.5.1-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..31744f55 --- /dev/null +++ b/patches/packages/shadow-4.1.5.1-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +shadow: shadow (shadow password suite) +shadow: +shadow: This set of login related programs utilizes an alternate, non-readable +shadow: file to contain the actual encrypted passwords. This is presumed to +shadow: increase system security by increasing the difficulty with which +shadow: system crackers obtain encrypted passwords. It was written by +shadow: Julianne Frances Haugh and the Linux port is maintained by Tomasz +shadow: Kloczko. +shadow: +shadow: This package provides 'login', which is needed to log into the system. +shadow: diff --git a/patches/packages/stunnel-5.35-x86_64-2_slack14.1.txt b/patches/packages/stunnel-5.35-x86_64-2_slack14.1.txt new file mode 100644 index 00000000..2e5c70ca --- /dev/null +++ b/patches/packages/stunnel-5.35-x86_64-2_slack14.1.txt @@ -0,0 +1,11 @@ +stunnel: stunnel (Universal SSL tunnel) +stunnel: +stunnel: The stunnel program is designed to work as an SSL encryption wrapper +stunnel: between remote client and local (inetd-startable) or remote servers. +stunnel: The goal is to facilitate SSL encryption and authentication for +stunnel: non-SSL-aware programs. +stunnel: +stunnel: stunnel can be used to add SSL functionality to commonly used inetd +stunnel: daemons like POP-2, POP-3 and IMAP servers without any changes in the +stunnel: programs' code. +stunnel: diff --git a/patches/packages/subversion-1.7.22-x86_64-3_slack14.1.txt b/patches/packages/subversion-1.7.22-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..7b438689 --- /dev/null +++ b/patches/packages/subversion-1.7.22-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +subversion: subversion (a version control system) +subversion: +subversion: Subversion is a version control system which allows you to keep old +subversion: versions of files and directories (usually source code), and keep a +subversion: log of who, when, and why changes occurred, similar to other such +subversion: systems like CVS, RCS or SCCS. Subversion keeps all the information +subversion: to permit extracting previous versions of those files at any time. +subversion: +subversion: For more information about the Subversion project, visit: +subversion: http://subversion.apache.org +subversion: diff --git a/patches/packages/sudo-1.8.20p2-x86_64-1_slack14.1.txt b/patches/packages/sudo-1.8.20p2-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..1f1087d7 --- /dev/null +++ b/patches/packages/sudo-1.8.20p2-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +sudo: sudo (give limited root privileges to certain users) +sudo: +sudo: 'sudo' is a command that allows users to execute some commands as +sudo: root. The /etc/sudoers file (edited with 'visudo') specifies which +sudo: users have access to sudo and which commands they can run. 'sudo' +sudo: logs all its activities to /var/log/ so the system administrator +sudo: can keep an eye on things. +sudo: +sudo: +sudo: +sudo: diff --git a/patches/packages/tcpdump-4.9.2-x86_64-1_slack14.1.txt b/patches/packages/tcpdump-4.9.2-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..cee0ef1a --- /dev/null +++ b/patches/packages/tcpdump-4.9.2-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +tcpdump: tcpdump (network monitoring tool) +tcpdump: +tcpdump: Tcpdump is a tool for network monitoring and data acquisition. You +tcpdump: can use it to dump information on all the packets on a network that +tcpdump: match a boolean expression. Tcpdump uses libpcap, a system +tcpdump: independent interface for user-level packet capture. +tcpdump: +tcpdump: Project homepage: http://www.tcpdump.org +tcpdump: +tcpdump: +tcpdump: diff --git a/patches/packages/udisks-1.0.5-x86_64-1_slack14.1.txt b/patches/packages/udisks-1.0.5-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..9701b8e3 --- /dev/null +++ b/patches/packages/udisks-1.0.5-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +udisks: udisks (storage device daemon) +udisks: +udisks: The udisks project provides a storage daemon that implements D-Bus +udisks: interfaces that can be used to query and manipulate storage devices. +udisks: +udisks: It also includes a command-line tool, udisks(1), that can be used to +udisks: query and control the daemon. +udisks: +udisks: Homepage: http://www.freedesktop.org/wiki/Software/udisks +udisks: +udisks: diff --git a/patches/packages/udisks2-2.1.3-x86_64-1_slack14.1.txt b/patches/packages/udisks2-2.1.3-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..4c223f4f --- /dev/null +++ b/patches/packages/udisks2-2.1.3-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +udisks2: udisks2 (storage device daemon v2) +udisks2: +udisks2: The udisks project provides a storage daemon that implements D-Bus +udisks2: interfaces that can be used to query and manipulate storage devices. +udisks2: +udisks2: It also includes a command-line tool, udisks(1), that can be used to +udisks2: query and control the daemon. +udisks2: +udisks2: Homepage: http://www.freedesktop.org/wiki/Software/udisks +udisks2: +udisks2: diff --git a/patches/packages/vim-7.4.399-x86_64-1_slack14.1.txt b/patches/packages/vim-7.4.399-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..3fef1b8d --- /dev/null +++ b/patches/packages/vim-7.4.399-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +vim: vim (Vi IMproved) +vim: +vim: Vim is an almost compatible version of the UNIX editor vi. Many new +vim: features have been added: multi level undo, command line history, +vim: filename completion, block operations, and more. +vim: +vim: Vim's development is led by Bram Moolenaar. +vim: +vim: This package also contains the Exuberant Ctags program +vim: written by Darren Hiebert. +vim: diff --git a/patches/packages/vim-gvim-7.4.399-x86_64-1_slack14.1.txt b/patches/packages/vim-gvim-7.4.399-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..bf6a1956 --- /dev/null +++ b/patches/packages/vim-gvim-7.4.399-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +vim-gvim: vim-gvim (gvim, the X/GTK2 enabled version of vim) +vim-gvim: +vim-gvim: Gvim is a graphical version of vim. Vim is an almost compatible +vim-gvim: version of the UNIX editor vi. Many new features have been added, +vim-gvim: such as multi level undo, command line history, filename completion, +vim-gvim: block operations, and more. +vim-gvim: +vim-gvim: The main vim package in the AP series is required to use this package. +vim-gvim: +vim-gvim: Vim's development is led by Bram Moolenaar. +vim-gvim: diff --git a/patches/packages/wget-1.19.5-x86_64-1_slack14.1.txt b/patches/packages/wget-1.19.5-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..cd0faad0 --- /dev/null +++ b/patches/packages/wget-1.19.5-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +wget: wget (a non-interactive network retriever) +wget: +wget: GNU Wget is a free network utility to retrieve files from the +wget: World Wide Web using HTTP and FTP, the two most widely used Internet +wget: protocols. It works non-interactively, thus enabling work in the +wget: background after having logged off. +wget: +wget: The author of Wget is Hrvoje Niksic <hniksic@srce.hr>. +wget: +wget: +wget: diff --git a/patches/packages/wpa_supplicant-2.6-x86_64-1_slack14.1.txt b/patches/packages/wpa_supplicant-2.6-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..3c64dd12 --- /dev/null +++ b/patches/packages/wpa_supplicant-2.6-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +wpa_supplicant: wpa_supplicant (WPA/WPA2/IEEE 802.1X Supplicant) +wpa_supplicant: +wpa_supplicant: wpa_supplicant is a WPA Supplicant for Linux with support for WPA and +wpa_supplicant: WPA2 (IEEE 802.11i / RSN). Supplicant is the IEEE 802.1X/WPA +wpa_supplicant: component that is used in the client stations. It implements key +wpa_supplicant: negotiation with a WPA Authenticator and it controls the roaming and +wpa_supplicant: IEEE 802.11 authentication/association of the wlan driver. +wpa_supplicant: +wpa_supplicant: More info: http://hostap.epitest.fi/wpa_supplicant/ +wpa_supplicant: +wpa_supplicant: diff --git a/patches/packages/xcb-proto-1.11-x86_64-1_slack14.1.txt b/patches/packages/xcb-proto-1.11-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..df6cd924 --- /dev/null +++ b/patches/packages/xcb-proto-1.11-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +xcb-proto: xcb-proto (X protocol C-language Binding protocol descriptions) +xcb-proto: +xcb-proto: xcb-proto provides the XML-XCB protocol descriptions that libxcb +xcb-proto: uses to generate the majority of its code and API. We provide them +xcb-proto: separately from libxcb to allow reuse by other projects, such as +xcb-proto: additional language bindings, protocol dissectors, or documentation +xcb-proto: generators. +xcb-proto: +xcb-proto: +xcb-proto: +xcb-proto: diff --git a/patches/packages/xextproto-7.3.0-x86_64-1_slack14.1.txt b/patches/packages/xextproto-7.3.0-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..40d18943 --- /dev/null +++ b/patches/packages/xextproto-7.3.0-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +xextproto: xextproto (C prototypes for X Protocol Extensions) +xextproto: +xextproto: xextproto is part of X11. +xextproto: +xextproto: For more information about the X.Org Foundation (the providers of the +xextproto: X.Org implementation of the X Window System), see their website: +xextproto: +xextproto: http://www.x.org +xextproto: +xextproto: +xextproto: diff --git a/patches/packages/xfce4-weather-plugin-0.8.10-x86_64-1_slack14.1.txt b/patches/packages/xfce4-weather-plugin-0.8.10-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..fa3bc626 --- /dev/null +++ b/patches/packages/xfce4-weather-plugin-0.8.10-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +xfce4-weather-plugin: xfce4-weather-plugin (weather plugin for the Xfce panel) +xfce4-weather-plugin: +xfce4-weather-plugin: The weather plugin displays current weather conditions and forecasts. +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: +xfce4-weather-plugin: diff --git a/patches/packages/xorg-server-1.14.3-x86_64-6_slack14.1.txt b/patches/packages/xorg-server-1.14.3-x86_64-6_slack14.1.txt new file mode 100644 index 00000000..1ebe1b27 --- /dev/null +++ b/patches/packages/xorg-server-1.14.3-x86_64-6_slack14.1.txt @@ -0,0 +1,11 @@ +xorg-server: xorg-server (The Xorg server, the core of the X Window System) +xorg-server: +xorg-server: Xorg is a full featured X server that was originally designed for UNIX +xorg-server: and UNIX-like operating systems running on Intel x86 hardware. It now +xorg-server: runs on a wider range of hardware and OS platforms. This work was +xorg-server: derived by the X.Org Foundation from the XFree86 Project's XFree86 +xorg-server: 4.4rc2 release. The XFree86 release was originally derived from X386 +xorg-server: 1.2 by Thomas Roell which was contributed to X11R5 by Snitily Graphics +xorg-server: Consulting Service. +xorg-server: +xorg-server: The home page for the X project is: http://www.x.org diff --git a/patches/packages/xorg-server-xephyr-1.14.3-x86_64-6_slack14.1.txt b/patches/packages/xorg-server-xephyr-1.14.3-x86_64-6_slack14.1.txt new file mode 100644 index 00000000..2ffb35f6 --- /dev/null +++ b/patches/packages/xorg-server-xephyr-1.14.3-x86_64-6_slack14.1.txt @@ -0,0 +1,11 @@ +xorg-server-xephyr: xorg-server-xephyr (Improved nested X server/client) +xorg-server-xephyr: +xorg-server-xephyr: Xephyr is a nested X-Client like Xnest, but with some additional +xorg-server-xephyr: features like XRender support. +xorg-server-xephyr: +xorg-server-xephyr: +xorg-server-xephyr: +xorg-server-xephyr: +xorg-server-xephyr: +xorg-server-xephyr: +xorg-server-xephyr: diff --git a/patches/packages/xorg-server-xnest-1.14.3-x86_64-6_slack14.1.txt b/patches/packages/xorg-server-xnest-1.14.3-x86_64-6_slack14.1.txt new file mode 100644 index 00000000..31dc1e78 --- /dev/null +++ b/patches/packages/xorg-server-xnest-1.14.3-x86_64-6_slack14.1.txt @@ -0,0 +1,11 @@ +xorg-server-xnest: xorg-server-xnest (a nested X server) +xorg-server-xnest: +xorg-server-xnest: Xnest is an experimental nested server for X that acts as both a +xorg-server-xnest: client and a server. Xnest is a client of the real server which +xorg-server-xnest: manages windows and graphics requests on its behalf. Xnest is a +xorg-server-xnest: server to its own clients. Xnest manages windows and graphics +xorg-server-xnest: requests on their behalf. To these clients Xnest appears to be a +xorg-server-xnest: conventional server. +xorg-server-xnest: +xorg-server-xnest: +xorg-server-xnest: diff --git a/patches/packages/xorg-server-xvfb-1.14.3-x86_64-6_slack14.1.txt b/patches/packages/xorg-server-xvfb-1.14.3-x86_64-6_slack14.1.txt new file mode 100644 index 00000000..3a7122df --- /dev/null +++ b/patches/packages/xorg-server-xvfb-1.14.3-x86_64-6_slack14.1.txt @@ -0,0 +1,11 @@ +xorg-server-xvfb: xorg-server-xvfb (virtual framebuffer X server) +xorg-server-xvfb: +xorg-server-xvfb: Xvfb is an X server that can run on machines with no display hardware +xorg-server-xvfb: and no physical input devices. It emulates a dumb framebuffer using +xorg-server-xvfb: virtual memory. The primary use of this server is intended to be +xorg-server-xvfb: server testing. The mfb or cfb code for any depth can be exercised +xorg-server-xvfb: with this server without the need for real hardware that supports the +xorg-server-xvfb: desired depths. A secondary use is testing clients against unusual +xorg-server-xvfb: depths and screen configurations. +xorg-server-xvfb: +xorg-server-xvfb: diff --git a/patches/packages/xproto-7.0.29-noarch-1_slack14.1.txt b/patches/packages/xproto-7.0.29-noarch-1_slack14.1.txt new file mode 100644 index 00000000..b4397153 --- /dev/null +++ b/patches/packages/xproto-7.0.29-noarch-1_slack14.1.txt @@ -0,0 +1,11 @@ +xproto: xproto (C prototypes for X Window System Core Protocol) +xproto: +xproto: xproto is part of X11. +xproto: +xproto: For more information about the X.Org Foundation (the providers of the +xproto: X.Org implementation of the X Window System), see their website: +xproto: +xproto: http://www.x.org +xproto: +xproto: +xproto: diff --git a/patches/packages/xscreensaver-5.38-x86_64-1_slack14.1.txt b/patches/packages/xscreensaver-5.38-x86_64-1_slack14.1.txt new file mode 100644 index 00000000..62dcff51 --- /dev/null +++ b/patches/packages/xscreensaver-5.38-x86_64-1_slack14.1.txt @@ -0,0 +1,11 @@ +xscreensaver: xscreensaver (a screen saver and locker for X) +xscreensaver: +xscreensaver: A modular screen saver and locker for the X Window System. Highly +xscreensaver: customizable: allows the use of any program that can draw on the +xscreensaver: root window as a display mode. More than 100 display modes are +xscreensaver: included in this package. +xscreensaver: +xscreensaver: Homepage: http://www.jwz.org/xscreensaver +xscreensaver: +xscreensaver: +xscreensaver: diff --git a/patches/packages/yptools-2.14-x86_64-3_slack14.1.txt b/patches/packages/yptools-2.14-x86_64-3_slack14.1.txt new file mode 100644 index 00000000..b6fce72c --- /dev/null +++ b/patches/packages/yptools-2.14-x86_64-3_slack14.1.txt @@ -0,0 +1,11 @@ +yptools: yptools (NIS servers and clients) +yptools: +yptools: NIS stands for Network Information Service. NIS is usually used to +yptools: provide /etc/passwd and /etc/group information throughout the network. +yptools: Most Sun-based networks run NIS, and Linux machines can take full +yptools: advantage of existing NIS service or provide NIS service themselves. +yptools: +yptools: +yptools: +yptools: +yptools: diff --git a/patches/source/MPlayer/MPlayer.SlackBuild b/patches/source/MPlayer/MPlayer.SlackBuild new file mode 100755 index 00000000..0eb4bb10 --- /dev/null +++ b/patches/source/MPlayer/MPlayer.SlackBuild @@ -0,0 +1,488 @@ +#!/bin/sh +# $Id: MPlayer.SlackBuild,v 1.27 2012/07/01 13:07:08 root Exp root $ +# Copyright 2006, 2007, 2008, 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL +# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA +# All rights reserved. +# +# Permission to use, copy, modify, and distribute this software for +# any purpose with or without fee is hereby granted, provided that +# the above copyright notice and this permission notice appear in all +# copies. +# +# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# ----------------------------------------------------------------------------- +# +# Slackware SlackBuild script +# =========================== +# By: Eric Hameleers <alien@slackware.com> +# For: MPlayer +# Descr: a movie player for LINUX +# URL: http://www.mplayerhq.hu/ +# Needs: +# Changelog: +# 1.0rc1-1: 05/Nov/2006 by Eric Hameleers <alien@slackware.com> +# * Initial build. +# 1.0rc1-2: 07/Nov/2006 by Eric Hameleers <alien@slackware.com> +# * Removed MPlayer's internal libdvdcss code from the build, so +# that MPlayer no longer plays encrypted DVD's by default (and the +# package is now safe to upload to public repositories). +# If it is allowed in your country, you can either install +# libdvdcss (which is picked up automatically by MPlayer), or +# rebuild MPlayer yourself using this SlackBuild - and set the +# variable REMOVECSS="no" first (see further down). +# Use this commandline if you can't or won't modify the script: +# REMOVECSS="no" ./MPlayer.SlackBuild +# 1.0rc1-3: 08/Nov/2006 by Eric Hameleers <alien@slackware.com> +# * Install the mplayer.conf into correct location '/etc/mplayer/' +# 1.0rc1-4: 15/mar/2007 by Eric Hameleers <alien@slackware.com> +# * Differentiate between versions of X11 (modular X has another +# install-prefix); update default skin; enable mplayer menu; +# add security fix +# 1.0rc1-5: 07/jun/2007 by Eric Hameleers <alien@slackware.com> +# * Add security fix. +# 1.0rc2-1: 09/oct/2007 by Eric Hameleers <alien@slackware.com> +# * New version. +# 1.0rc2-2: 01/feb/2008 by Eric Hameleers <alien@slackware.com> +# * Apply 4 security fixes. +# 1.0rc2-3: 10/mar/2008 by Eric Hameleers <alien@slackware.com> +# * Apply a patch that allows compilation against the ivtv driver +# in the 2.6.24.x kernels. +# r28148-1: 14/dec/2008 by Eric Hameleers <alien@slackware.com> +# * Build SVN snapshot - remove support for *all* patented or +# questionable software if "USE_PATENTS" is set to "NO" - think +# of DECSS dvd decryption code, and mp3/aac/amr audio encoders. +# r28929-1: 10/mar/2009 by Eric Hameleers <alien@slackware.com> +# * Update. +# r29301-1: 12/may/2009 by Eric Hameleers <alien@slackware.com> +# * Update. +# r29301-1: 12/may/2009 by Eric Hameleers <alien@slackware.com> +# * Update. +# 20100926-1: 26/sep/2010 by Eric Hameleers <alien@slackware.com> +# * Slackware has MPlayer now of course, but it does not hurt +# to have a full-featured binary package available. The 1.0rc3 +# was released recently but I prefer to build a snapshot. +# 20110624-1: 24/jun/2011 by Eric Hameleers <alien@slackware.com> +# * Provide an up-to-date snapshot to be used in conjunction +# with UMPlayer (a MPlayer GUI). New MPlayer source requires +# a separate ffmpeg download. +# 20120514-1: 14/may/2012 by volkerdi@slackware.com +# * Update. +# 1.1_20120701-1: 28/jun/2012 by alien@slackware.com +# * Update to the 1.1 branch (essentially this is MPlayer-1.1 but +# I like to check it out of SVN). +# 1.1_20130819-1: 19/aug/2013 by volkerdi@slackware.com +# * Update to the latest 1.1 branch, and the same ffmpeg that was +# shipped with the 1.1.1 tarball. The official 1.1.1 release +# did not start a new repo branch, so this is the latest. +# 20150308-1: 09/mar/2015 by pprkut@slackware.com +# * Update to latest version from trunk, together with ffmpeg 2.6, +# which was released roughly around that date as well. +# 20140403-1: 03/apr/2015 by volkerdi@slackware.com +# * Update to latest version from trunk and ffmpeg-2.6.1. +# +# Run 'sh MPlayer.SlackBuild' to build a Slackware package. +# The package (.txz) plus descriptive .txt file are created in /tmp . +# Install using 'installpkg'. +# +# ----------------------------------------------------------------------------- + +# Set initial variables: + +PRGNAM=MPlayer +VERSION=${VERSION:-20160125} +BRANCH=${BRANCH:-1.2} # leave empty if you want to build MPlayer trunk +FFMPEG=${FFMPEG:-2.8.5} +BUILD=${BUILD:-1_slack14.1} +TAG=${TAG:-} +NUMJOBS=${NUMJOBS:-" -j7 "} + +# Show the branch version in the package name if we build from a branch: +[ -n "$BRANCH" ] && PKGVERSION=${BRANCH}_${VERSION} || PKGVERSION=${VERSION} + +DOCS="AUTHORS Changelog Copyright LICENSE README VERSION DOCS/HTML DOCS/tech" + +# MPlayer repository characteristics: +MPURI="svn://svn.mplayerhq.hu/mplayer/" +if [ -n "$BRANCH" ]; then + MPBRANCH="branches/$BRANCH" +else + MPBRANCH="trunk" +fi + +FFURI=git://git.videolan.org/ffmpeg.git + +DEFSKIN=${DEFSKIN:-"Blue"} # Download more skins at the following url: +SKINVER=${SKINVER:-"1.11"} # http://www.mplayerhq.hu/design7/dload.html + +# Available languages: all cs de en es fr hu it pl ru zh_CN +LANGUAGES="en,de,es,fr" + +# Automatically determine the architecture we're building on: +MARCH=$( uname -m ) +if [ -z "$ARCH" ]; then + case "$MARCH" in + i?86) export ARCH=i486 ;; + armv7hl) export ARCH=$MARCH ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$MARCH ;; + esac +fi + +if [ "$ARCH" = "x86_64" ]; then + LIBDIRSUFFIX="64" + # --enable-runtime-cpudetection is supported only for x86, x86_64, and PPC + EXTRACONFIGUREOPTIONS="--enable-runtime-cpudetection" +elif [ "$ARCH" = "i486" -o \ + "$ARCH" = "i586" -o \ + "$ARCH" = "i686" ]; then + LIBDIRSUFFIX="" + EXTRACONFIGUREOPTIONS="--enable-runtime-cpudetection" +else + LIBDIRSUFFIX="" + EXTRACONFIGUREOPTIONS="" +fi + +# Where the WIN32 codecs are expectedfor instance +CODECSDIR=/usr/lib${LIBDIRSUFFIX}/codecs + +# --------------------------------------------------------------------------- +# -- PATENT ALERT! -- +# MPLayer can be built with MP3 (lame) and AMR audio encoders +# (needed for FLV and .3GP videos) but these libraries are 'contaminated' +# with patents from Fraunhofer and GGP. +# Also, the AAC encoder has patent issues. +# You can build these patended algorithms into ffmpeg, and if you are an +# ordinary end user, no one will bother you for using them. +# For the binaries based on this SlackBuild that I distribute, it is a +# different story. I am not allowed to distribute binary packages that +# incorporate patented code. So here you go. My Slackware package was +# built with "USE_PATENTS=NO" i.e. without using +# the lame mp3, faac, AMR and dvdcss libraries. +# --------------------------------------------------------------------------- +USE_PATENTS=${USE_PATENTS:-"NO"} + +# MPlayer will try to use one of the TrueType fonts present on the target +# system for it's On Screen Display (OSD) font. +# Slackware 11.0 ships with the Vera and DejaVu fonts, you may want to add +# more fonts to this list. The first font found will be used by creating a +# symbolic link "/usr/share/mplayer/subfont.ttf" to it. +# The use of bitmapped fonts is considered deprecated, but you can still use +# those if you want. Read http://www.mplayerhq.hu/DOCS/HTML/en/fonts-osd.html +# if you want to know more about OSD font configuration. +OSDFONTS="LiberationSans-Regular.ttf \ + Arialuni.ttf arial.ttf \ + DejaVuSans.ttf Vera.ttf" + +# Where do we look for sources? +SRCDIR=$(cd $(dirname $0); pwd) + +SOURCE[0]="$SRCDIR/${PRGNAM}-${VERSION}.tar.xz" +SRCURL[0]="" + +# The default skin to use (we need to add at least one) +SOURCE[1]="$SRCDIR/${DEFSKIN}-${SKINVER}.tar.bz2" +SRCURL[1]="http://www.mplayerhq.hu/MPlayer/skins/${DEFSKIN}-${SKINVER}.tar.bz2" + +# Ffmpeg needs to be checked out separately now: +SOURCE[2]="$SRCDIR/ffmpeg-${FFMPEG}.tar.xz" +SRCURL[2]="" + +# Use the src_checkout() function if no downloadable tarball exists. +# This function checks out sources from SVN/CVS and creates a tarball of them. +src_checkout() { + # Param #1 : index in the SOURCE[] array. + # Param #2 : full path to where SOURCE[$1] tarball should be created. + # Determine the tarball extension: + PEXT=$(echo "${2}" | sed -r -e 's/.*[^.].(tar.xz|tar.gz|tar.bz2|tgz).*/\1/') + case "$PEXT" in + "tar.xz") TARCOMP="J" ;; + "tar.gz") TARCOMP="z" ;; + "tgz") TARCOMP="z" ;; + "tar.bz2") TARCOMP="j" ;; + *) echo "Archive can only have extension 'tar.xz', '.tar.gz' '.tar.bz2' or '.tgz'" ; exit 1 ;; + esac + case ${1} in + 0) # mplayer + if [ "$(echo ${VERSION}|cut -c1)" == 'r' ]; then # revision instead of date + echo "Only supported VERSION is a date - yyyymmdd - or 'HEAD'" + else + REV="{${VERSION}}" + fi + mkdir MPlayer-${VERSION} \ + && cd MPlayer-${VERSION} \ + && svn checkout --revision $REV ${MPURI}/${MPBRANCH} . \ + && svn propget svn:externals | sed -e 's/[[:space:]].*$//g' | xargs svn up --revision $REV \ + && chown -R root:root . \ + && cd .. \ + && tar --exclude-vcs -${TARCOMP}cf ${2} MPlayer-${VERSION} + rm -rf MPlayer-${VERSION} + ;; + 2) # ffmpeg-${FFMPEG} + mkdir ffmpeg_temp_checkout_$$ \ + && cd ffmpeg_temp_checkout_$$ + echo "Checking out tag n$FFMPEG from '$FFURI':" + git clone ${FFURI} ffmpeg \ + && cd ffmpeg \ + && git checkout n$FFMPEG \ + && cd .. + chown -R root:root . \ + && tar --exclude-vcs -${TARCOMP}cf ${2} ffmpeg + cd .. + rm -rf ffmpeg_temp_checkout_$$ + ;; + *) # Do nothing + ;; + esac +} + +# Place to build (TMP) package (PKG) and output (OUTPUT) the program: +TMP=${TMP:-/tmp/build} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +## +## --- with a little luck, you won't have to edit below this point --- ## +## + +# Exit the script on errors: +set -e +trap 'echo "$0 FAILED at line $LINENO!" | tee $OUTPUT/error-${PRGNAM}.log' ERR +# Catch unitialized variables: +set -u +P1=${1:-1} + +# Create working directories: +mkdir -p $TMP/tmp-$PRGNAM # location to build the source +rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build +mkdir -p $PKG # place for the package to be built +rm -rf $PKG/* # erase old package's contents +mkdir -p $OUTPUT # place for the package to be saved + +# Source file availability: +for (( i = 0; i < ${#SOURCE[*]}; i++ )) ; do + if ! [ -f ${SOURCE[$i]} ]; then + echo "Source '$(basename ${SOURCE[$i]})' not available yet..." + # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT + [ -w "$SRCDIR" ] || SOURCE[$i]="$OUTPUT/$(basename ${SOURCE[$i]})" + if ! [ "x${SRCURL[$i]}" == "x" ]; then + echo "Will download file to $(dirname $SOURCE[$i])" + wget -nv -T 20 -O "${SOURCE[$i]}" "${SRCURL[$i]}" || true + if [ $? -ne 0 -o ! -s "${SOURCE[$i]}" ]; then + echo "Downloading '$(basename ${SOURCE[$i]})' failed.. aborting the build." + mv -f "${SOURCE[$i]}" "${SOURCE[$i]}".FAIL + exit 1 + fi + else + # Try if we have a SVN/CVS download routine for ${SOURCE[$i]} + echo "Will checkout sources to $(dirname $SOURCE[$i])" + src_checkout $i "${SOURCE[$i]}" 2>&1 > $OUTPUT/checkout-$(basename ${SOURCE[$i]}).log + fi + if [ ! -f "${SOURCE[$i]}" -o ! -s "${SOURCE[$i]}" ]; then + echo "File '$(basename ${SOURCE[$i]})' not available.. aborting the build." + exit 1 + fi + fi +done + +if [ "$P1" == "--download" ]; then + echo "Download complete." + exit 0 +fi + +# --- PACKAGE BUILDING --- + +echo "++" +echo "|| $PRGNAM-$VERSION" +echo "++" + +cd $TMP/tmp-$PRGNAM +echo "Extracting the source archive(s) for $PRGNAM..." +tar -xvf ${SOURCE[0]} + +cd ${PRGNAM}-${VERSION} + # remove MPlayer's copy of libswscale + rm -rf ffmpeg + + # Extract the ffmpeg source inside the MPlayer directory: + tar -xvf ${SOURCE[2]} + + # in case we build with an official tarball + if [ -e "ffmpeg-$FFMPEG" ]; then + mv "ffmpeg-$FFMPEG" ffmpeg + fi + +cd .. + +chown -R root:root * +chmod -R u+w,go+r-w,a+X-s * +cd ${PRGNAM}-${VERSION} + +# Determine what X we're running (the modular X returns the prefix +# in the next command, while older versions stay silent): +XPREF=$(pkg-config --variable=prefix x11) || true +[ "$XPREF" == "" ] && XPREF='/usr/X11R6' + +# Remove support for patent encumbered and possibly illegal code: +if [ "$USE_PATENTS" != "YES" ]; then + DO_PATENTED="--disable-mp3lame --disable-mp3lame-lavc \ + --disable-libopencore_amrnb \ + --disable-libopencore_amrwb" +else + DO_PATENTED="" +fi + +echo Building ... +# MPlayer wants to automatically determine compiler flags, +# so we don't provide CFLAGS. +./configure \ + --prefix=/usr \ + --mandir=/usr/man \ + --confdir=/etc/mplayer \ + --enable-gui \ + --enable-menu \ + --disable-arts \ + --disable-bitmap-font \ + --codecsdir=${CODECSDIR} \ + --language="${LANGUAGES}" \ + ${EXTRACONFIGUREOPTIONS} \ + ${DO_PATENTED} \ + 2>&1 | tee $OUTPUT/configure-${PRGNAM}.log +# So that MPlayer does not report "UNKNOWN" as it's version: +if [ ! -f VERSION ]; then + echo $VERSION > VERSION +fi +make $NUMJOBS 2>&1 | tee $OUTPUT/make-${PRGNAM}.log +make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PRGNAM}.log + +# Build the html documentation (not all languages are available): +if [ "$LANGUAGES" = "all" ]; then + # make html-chunked + make html-single +else + for i in $(echo $LANGUAGES | tr , ' ') ; do + # make html-chunked-$i ; + make html-single-$i ; + done +fi + +# Prepare the configfile: +mkdir -p $PKG/etc/mplayer +cp etc/example.conf $PKG/etc/mplayer/mplayer.conf.new + +# Install our default skin: +cd $PKG/usr/share/mplayer/skins +tar -xvf ${SOURCE[1]} +chown -R root:root * +chmod -R u+w,go+r-w,a+X-s * +ln -s ${DEFSKIN} default +cd - + +# Add this to the doinst.sh: +mkdir -p $PKG/install +cat <<EOINS >> $PKG/install/doinst.sh +# Handle the incoming configuration files: +config() { + for infile in \$1; do + NEW="\$infile" + OLD="\`dirname \$NEW\`/\`basename \$NEW .new\`" + # If there's no config file by that name, mv it over: + if [ ! -r \$OLD ]; then + mv \$NEW \$OLD + elif [ "\`cat \$OLD | md5sum\`" = "\`cat \$NEW | md5sum\`" ]; then + # toss the redundant copy + rm \$NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... + done +} + +# Installing a bitmap font is considered deprecated; use a TTF font instead. +# We try to link to an installed TTF font at install time. +# Configure a default TrueType font to use for the OSD : +if [ ! -f usr/share/mplayer/subfont.ttf ]; then + for font in ${OSDFONTS}; do + if [ -f .${XPREF}/lib${LIBDIRSUFFIX}/X11/fonts/TTF/\${font} ]; then + ( cd usr/share/mplayer/ + ln -sf ${XPREF}/lib${LIBDIRSUFFIX}/X11/fonts/TTF/\${font} subfont.ttf + ) + break + fi + done +fi + +# Prepare the new configuration file +config etc/mplayer/mplayer.conf.new + +# Update the desktop database: +if [ -x usr/bin/update-desktop-database ]; then + chroot . /usr/bin/update-desktop-database usr/share/applications 1> /dev/null 2> /dev/null +fi + +# Update hicolor theme cache: +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x usr/bin/gtk-update-icon-cache ]; then + chroot . /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi + +# Update the mime database: +if [ -x usr/bin/update-mime-database ]; then + chroot . /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1 +fi + +EOINS + +# Add documentation: +mkdir -p $PKG/usr/doc/$PRGNAM-$PKGVERSION +cp -a $DOCS $PKG/usr/doc/$PRGNAM-$PKGVERSION || true +cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$PKGVERSION/$PRGNAM.SlackBuild +mv $PKG/usr/doc/$PRGNAM-$PKGVERSION/HTML $PKG/usr/doc/$PRGNAM-$PKGVERSION/html +# Save a sample of all configuration files: +for i in etc/*.conf ; do + cp $i $PKG/usr/doc/$PRGNAM-$PKGVERSION/$(basename $i)-sample +done +# Save a transcript of all configured options for this specific build: +if [ -n $OUTPUT/configure-${PRGNAM}.log ]; then + cat $OUTPUT/configure-${PRGNAM}.log \ + | sed -n "/^Config files successfully generated/,/^'config.h' and 'config.mak' contain your configuration options./p" \ + > $PKG/usr/doc/$PRGNAM-$PKGVERSION/${PRGNAM}.configuration +fi +find $PKG/usr/doc -type f -exec chmod 644 {} \; + +# Compress the man page(s): +if [ -d $PKG/usr/man ]; then + find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \; + for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done +fi + +# Strip binaries: +( find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) + +# Add a package description: +mkdir -p $PKG/install +cat $SRCDIR/slack-desc > $PKG/install/slack-desc +if [ -f $SRCDIR/doinst.sh ]; then + cat $SRCDIR/doinst.sh >> $PKG/install/doinst.sh +fi + +# Build the package: +cd $PKG +makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${PKGVERSION}-${ARCH}-${BUILD}${TAG}.txz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log +cd $OUTPUT +md5sum ${PRGNAM}-${PKGVERSION}-${ARCH}-${BUILD}${TAG}.txz > ${PRGNAM}-${PKGVERSION}-${ARCH}-${BUILD}${TAG}.txz.md5 +cd - +cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${PKGVERSION}-${ARCH}-${BUILD}${TAG}.txt + diff --git a/patches/source/MPlayer/slack-desc b/patches/source/MPlayer/slack-desc new file mode 100644 index 00000000..033b4170 --- /dev/null +++ b/patches/source/MPlayer/slack-desc @@ -0,0 +1,20 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +MPlayer: MPlayer (Linux movie player) +MPlayer: +MPlayer: MPlayer is a movie player for Linux. It plays most MPEG, VOB, AVI, +MPlayer: Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, +MPlayer: YUV4MPEG, FILM, RoQ, PVA files, supported by many native, XAnim, +MPlayer: and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, +MPlayer: DivX 3/4/5 and even WMV movies, too (without the avifile library). +MPlayer: MPlayer supports 10 types of subtitles formats: VobSub, +MPlayer: MicroDVD, SubRip, SubViewer, Sami, VPlayer, RT, SSA, AQTitle, MPsub. +MPlayer: +MPlayer: Homepage for MPLayer is http://www.mplayerhq.hu/ + diff --git a/patches/source/apr-util/apr-util.SlackBuild b/patches/source/apr-util/apr-util.SlackBuild new file mode 100755 index 00000000..c3c8c866 --- /dev/null +++ b/patches/source/apr-util/apr-util.SlackBuild @@ -0,0 +1,124 @@ +#!/bin/sh + +# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +VERSION=${VERSION:-$(echo apr-util-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1_slack14.1} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +NUMJOBS=${NUMJOBS:-" -j7 "} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-apr-util + +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf apr-util-$VERSION +tar xvf $CWD/apr-util-$VERSION.tar.bz2 || exit 1 +cd apr-util-$VERSION + +# For now, this isn't working with svn (here, anyway) and is probably +# more trouble than it's worth. Could be a grey area in regards to +# licensing, too -- the Apache people say it's fine for third parties +# to link this and distribute the result, but there are usually some +# differing opinions when it comes to this sort of thing... +#( cd dbd ; lftpget http://apache.webthing.com/svn/apache/apr/apr_dbd_mysql.c ) +# --with-mysql=/usr \ +# + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --with-apr=/usr \ + --with-dbm=db44 \ + --with-berkeley-db \ + --disable-util-dso \ + --without-gdbm \ + --with-ldap \ + --disable-static \ + --without-sqlite2 \ + --build=$ARCH-slackware-linux + +make $NUMJOBS || make || exit 1 +make dox || exit 1 +make install DESTDIR=$PKG + +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +mkdir -p $PKG/usr/doc/apr-util-$VERSION +cp -a \ + INSTALL.MySQL LICENSE NOTICE \ + $PKG/usr/doc/apr-util-$VERSION + +# If there's a CHANGES file, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r CHANGES ]; then + DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) + cat CHANGES | head -n 1000 > $DOCSDIR/CHANGES + touch -r CHANGES $DOCSDIR/CHANGES +fi + +# This just seems like way too much stuff... +#mv docs/dox/html $PKG/usr/doc/apr-util-$VERSION + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/apr-util-$VERSION-$ARCH-$BUILD.txz + diff --git a/patches/source/apr-util/apr-util.url b/patches/source/apr-util/apr-util.url new file mode 100644 index 00000000..7bdef9de --- /dev/null +++ b/patches/source/apr-util/apr-util.url @@ -0,0 +1,2 @@ +http://www.apache.org/dist/apr/apr-util-1.5.3.tar.bz2 +http://www.apache.org/dist/apr/apr-util-1.5.3.tar.bz2.asc diff --git a/patches/source/apr-util/slack-desc b/patches/source/apr-util/slack-desc new file mode 100644 index 00000000..cec19063 --- /dev/null +++ b/patches/source/apr-util/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +apr-util: apr-util (Apache Portable Runtime utilities) +apr-util: +apr-util: The mission of the Apache Portable Runtime (APR) is to provide a +apr-util: free library of C data structures and routines, forming a system +apr-util: portability layer to as many operating systems as possible. +apr-util: +apr-util: This package contains additional utility interfaces for APR; +apr-util: including support for XML, LDAP, database interfaces, URI parsing, +apr-util: and more. +apr-util: +apr-util: diff --git a/patches/source/apr/apr.SlackBuild b/patches/source/apr/apr.SlackBuild new file mode 100755 index 00000000..34b7de76 --- /dev/null +++ b/patches/source/apr/apr.SlackBuild @@ -0,0 +1,110 @@ +#!/bin/sh + +# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +VERSION=${VERSION:-$(echo apr-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1_slack14.1} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +NUMJOBS=${NUMJOBS:-" -j7 "} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-apr + +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf apr-$VERSION +tar xvf $CWD/apr-$VERSION.tar.bz2 || exit 1 +cd apr-$VERSION + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --with-installbuilddir=/usr/lib${LIBDIRSUFFIX}/apr-${VERSION}/build-1 \ + --disable-static \ + --with-devrandom=/dev/urandom \ + --build=$ARCH-slackware-linux + +make $NUMJOBS || make || exit 1 +make dox || exit 1 +make install DESTDIR=$PKG || exit 1 + +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +mkdir -p $PKG/usr/doc/apr-$VERSION +cp -a \ + LICENSE NOTICE README* \ + $PKG/usr/doc/apr-$VERSION + +# If there's a CHANGES file, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r CHANGES ]; then + DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) + cat CHANGES | head -n 1000 > $DOCSDIR/CHANGES + touch -r CHANGES $DOCSDIR/CHANGES +fi + +# This just seems like way too much stuff... +#mv docs/dox/html $PKG/usr/doc/apr-$VERSION + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/apr-$VERSION-$ARCH-$BUILD.txz + diff --git a/patches/source/apr/apr.url b/patches/source/apr/apr.url new file mode 100644 index 00000000..7ef8d775 --- /dev/null +++ b/patches/source/apr/apr.url @@ -0,0 +1,2 @@ +http://www.apache.org/dist/apr/apr-1.5.0.tar.bz2 +http://www.apache.org/dist/apr/apr-1.5.0.tar.bz2.asc diff --git a/patches/source/apr/slack-desc b/patches/source/apr/slack-desc new file mode 100644 index 00000000..2e52660d --- /dev/null +++ b/patches/source/apr/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +apr: apr (Apache Portable Runtime) +apr: +apr: The mission of the Apache Portable Runtime (APR) is to provide a +apr: free library of C data structures and routines, forming a system +apr: portability layer to as many operating systems as possible. +apr: +apr: +apr: +apr: +apr: +apr: diff --git a/patches/source/bash/bash-4.2-patches/bash42-001 b/patches/source/bash/bash-4.2-patches/bash42-001 new file mode 100644 index 00000000..547aaa06 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-001 @@ -0,0 +1,78 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-001 + +Bug-Reported-by: Juergen Daubert <jue@jue.li> +Bug-Reference-ID: <20110214175132.GA19813@jue.netz> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00125.html + +Bug-Description: + +When running in Posix mode, bash does not correctly expand the right-hand +side of a double-quoted word expansion containing single quotes. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2011-01-02 16:12:51.000000000 -0500 +--- subst.c 2011-02-19 00:00:00.000000000 -0500 +*************** +*** 1380,1387 **** + + /* The handling of dolbrace_state needs to agree with the code in parse.y: +! parse_matched_pair() */ +! dolbrace_state = 0; +! if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) +! dolbrace_state = (flags & SX_POSIXEXP) ? DOLBRACE_QUOTE : DOLBRACE_PARAM; + + i = *sindex; +--- 1380,1389 ---- + + /* The handling of dolbrace_state needs to agree with the code in parse.y: +! parse_matched_pair(). The different initial value is to handle the +! case where this function is called to parse the word in +! ${param op word} (SX_WORD). */ +! dolbrace_state = (flags & SX_WORD) ? DOLBRACE_WORD : DOLBRACE_PARAM; +! if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && (flags & SX_POSIXEXP)) +! dolbrace_state = DOLBRACE_QUOTE; + + i = *sindex; +*************** +*** 7177,7181 **** + /* Extract the contents of the ${ ... } expansion + according to the Posix.2 rules. */ +! value = extract_dollar_brace_string (string, &sindex, quoted, (c == '%' || c == '#') ? SX_POSIXEXP : 0); + if (string[sindex] == RBRACE) + sindex++; +--- 7181,7185 ---- + /* Extract the contents of the ${ ... } expansion + according to the Posix.2 rules. */ +! value = extract_dollar_brace_string (string, &sindex, quoted, (c == '%' || c == '#' || c =='/' || c == '^' || c == ',' || c ==':') ? SX_POSIXEXP|SX_WORD : SX_WORD); + if (string[sindex] == RBRACE) + sindex++; +*** ../bash-4.2-patched/subst.h 2010-12-02 20:21:29.000000000 -0500 +--- subst.h 2011-02-16 21:12:09.000000000 -0500 +*************** +*** 57,60 **** +--- 57,61 ---- + #define SX_ARITHSUB 0x0080 /* extracting $(( ... )) (currently unused) */ + #define SX_POSIXEXP 0x0100 /* extracting new Posix pattern removal expansions in extract_dollar_brace_string */ ++ #define SX_WORD 0x0200 /* extracting word in ${param op word} */ + + /* Remove backslashes which are quoting backquotes from STRING. Modifies +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 0 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 1 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-002 b/patches/source/bash/bash-4.2-patches/bash42-002 new file mode 100644 index 00000000..077c7e0f --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-002 @@ -0,0 +1,60 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-002 + +Bug-Reported-by: Clark J. Wang <dearvoid@gmail.com> +Bug-Reference-ID: <AANLkTimGbW7aC4E5infXP6ku5WPci4t=xVc+L1SyHqrD@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00157.html + +Bug-Description: + +The readline vi-mode `cc', `dd', and `yy' commands failed to modify the +entire line. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/readline/vi_mode.c 2010-11-20 19:51:39.000000000 -0500 +--- lib/readline/vi_mode.c 2011-02-17 20:24:25.000000000 -0500 +*************** +*** 1115,1119 **** + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (0); + } + #if defined (READLINE_CALLBACKS) +--- 1115,1119 ---- + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (vidomove_dispatch (m)); + } + #if defined (READLINE_CALLBACKS) +*** ../bash-4.2-patched/lib/readline/callback.c 2010-06-06 12:18:58.000000000 -0400 +--- lib/readline/callback.c 2011-02-17 20:43:28.000000000 -0500 +*************** +*** 149,152 **** +--- 149,155 ---- + /* Should handle everything, including cleanup, numeric arguments, + and turning off RL_STATE_VIMOTION */ ++ if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0) ++ _rl_internal_char_cleanup (); ++ + return; + } +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 1 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 2 + + #endif /* _PATCHLEVEL_H_ */ + diff --git a/patches/source/bash/bash-4.2-patches/bash42-003 b/patches/source/bash/bash-4.2-patches/bash42-003 new file mode 100644 index 00000000..c488e96b --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-003 @@ -0,0 +1,318 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-003 + +Bug-Reported-by: Clark J. Wang <dearvoid@gmail.com> +Bug-Reference-ID: <AANLkTikZ_rVV-frR8Fh0PzhXnMKnm5XsUR-F3qtPPs5G@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00136.html + +Bug-Description: + +When using the pattern replacement and pattern removal word expansions, bash +miscalculates the possible match length in the presence of an unescaped left +bracket without a closing right bracket, resulting in a failure to match +the pattern. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/glob/gmisc.c 2011-02-05 16:11:17.000000000 -0500 +--- lib/glob/gmisc.c 2011-02-18 23:53:42.000000000 -0500 +*************** +*** 78,83 **** + size_t wmax; + { +! wchar_t wc, *wbrack; +! int matlen, t, in_cclass, in_collsym, in_equiv; + + if (*wpat == 0) +--- 78,83 ---- + size_t wmax; + { +! wchar_t wc; +! int matlen, bracklen, t, in_cclass, in_collsym, in_equiv; + + if (*wpat == 0) +*************** +*** 119,123 **** + case L'[': + /* scan for ending `]', skipping over embedded [:...:] */ +! wbrack = wpat; + wc = *wpat++; + do +--- 119,123 ---- + case L'[': + /* scan for ending `]', skipping over embedded [:...:] */ +! bracklen = 1; + wc = *wpat++; + do +*************** +*** 125,140 **** + if (wc == 0) + { +! matlen += wpat - wbrack - 1; /* incremented below */ +! break; + } + else if (wc == L'\\') + { +! wc = *wpat++; +! if (*wpat == 0) +! break; + } + else if (wc == L'[' && *wpat == L':') /* character class */ + { + wpat++; + in_cclass = 1; + } +--- 125,148 ---- + if (wc == 0) + { +! wpat--; /* back up to NUL */ +! matlen += bracklen; +! goto bad_bracket; + } + else if (wc == L'\\') + { +! /* *wpat == backslash-escaped character */ +! bracklen++; +! /* If the backslash or backslash-escape ends the string, +! bail. The ++wpat skips over the backslash escape */ +! if (*wpat == 0 || *++wpat == 0) +! { +! matlen += bracklen; +! goto bad_bracket; +! } + } + else if (wc == L'[' && *wpat == L':') /* character class */ + { + wpat++; ++ bracklen++; + in_cclass = 1; + } +*************** +*** 142,145 **** +--- 150,154 ---- + { + wpat++; ++ bracklen++; + in_cclass = 0; + } +*************** +*** 147,152 **** + { + wpat++; + if (*wpat == L']') /* right bracket can appear as collating symbol */ +! wpat++; + in_collsym = 1; + } +--- 156,165 ---- + { + wpat++; ++ bracklen++; + if (*wpat == L']') /* right bracket can appear as collating symbol */ +! { +! wpat++; +! bracklen++; +! } + in_collsym = 1; + } +*************** +*** 154,157 **** +--- 167,171 ---- + { + wpat++; ++ bracklen++; + in_collsym = 0; + } +*************** +*** 159,164 **** + { + wpat++; + if (*wpat == L']') /* right bracket can appear as equivalence class */ +! wpat++; + in_equiv = 1; + } +--- 173,182 ---- + { + wpat++; ++ bracklen++; + if (*wpat == L']') /* right bracket can appear as equivalence class */ +! { +! wpat++; +! bracklen++; +! } + in_equiv = 1; + } +*************** +*** 166,174 **** +--- 184,196 ---- + { + wpat++; ++ bracklen++; + in_equiv = 0; + } ++ else ++ bracklen++; + } + while ((wc = *wpat++) != L']'); + matlen++; /* bracket expression can only match one char */ ++ bad_bracket: + break; + } +*************** +*** 214,219 **** + size_t max; + { +! char c, *brack; +! int matlen, t, in_cclass, in_collsym, in_equiv; + + if (*pat == 0) +--- 236,241 ---- + size_t max; + { +! char c; +! int matlen, bracklen, t, in_cclass, in_collsym, in_equiv; + + if (*pat == 0) +*************** +*** 255,259 **** + case '[': + /* scan for ending `]', skipping over embedded [:...:] */ +! brack = pat; + c = *pat++; + do +--- 277,281 ---- + case '[': + /* scan for ending `]', skipping over embedded [:...:] */ +! bracklen = 1; + c = *pat++; + do +*************** +*** 261,276 **** + if (c == 0) + { +! matlen += pat - brack - 1; /* incremented below */ +! break; + } + else if (c == '\\') + { +! c = *pat++; +! if (*pat == 0) +! break; + } + else if (c == '[' && *pat == ':') /* character class */ + { + pat++; + in_cclass = 1; + } +--- 283,306 ---- + if (c == 0) + { +! pat--; /* back up to NUL */ +! matlen += bracklen; +! goto bad_bracket; + } + else if (c == '\\') + { +! /* *pat == backslash-escaped character */ +! bracklen++; +! /* If the backslash or backslash-escape ends the string, +! bail. The ++pat skips over the backslash escape */ +! if (*pat == 0 || *++pat == 0) +! { +! matlen += bracklen; +! goto bad_bracket; +! } + } + else if (c == '[' && *pat == ':') /* character class */ + { + pat++; ++ bracklen++; + in_cclass = 1; + } +*************** +*** 278,281 **** +--- 308,312 ---- + { + pat++; ++ bracklen++; + in_cclass = 0; + } +*************** +*** 283,288 **** + { + pat++; + if (*pat == ']') /* right bracket can appear as collating symbol */ +! pat++; + in_collsym = 1; + } +--- 314,323 ---- + { + pat++; ++ bracklen++; + if (*pat == ']') /* right bracket can appear as collating symbol */ +! { +! pat++; +! bracklen++; +! } + in_collsym = 1; + } +*************** +*** 290,293 **** +--- 325,329 ---- + { + pat++; ++ bracklen++; + in_collsym = 0; + } +*************** +*** 295,300 **** + { + pat++; + if (*pat == ']') /* right bracket can appear as equivalence class */ +! pat++; + in_equiv = 1; + } +--- 331,340 ---- + { + pat++; ++ bracklen++; + if (*pat == ']') /* right bracket can appear as equivalence class */ +! { +! pat++; +! bracklen++; +! } + in_equiv = 1; + } +*************** +*** 302,310 **** +--- 342,354 ---- + { + pat++; ++ bracklen++; + in_equiv = 0; + } ++ else ++ bracklen++; + } + while ((c = *pat++) != ']'); + matlen++; /* bracket expression can only match one char */ ++ bad_bracket: + break; + } +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 2 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 3 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-004 b/patches/source/bash/bash-4.2-patches/bash42-004 new file mode 100644 index 00000000..fe29f82c --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-004 @@ -0,0 +1,53 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-004 + +Bug-Reported-by: Mike Frysinger <vapier@gentoo.org> +Bug-Reference-ID: <201102182106.17834.vapier@gentoo.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00222.html + +Bug-Description: + +When used in contexts where word splitting and quote removal were not +performed, such as pattern removal or pattern substitution, empty strings +(either literal or resulting from quoted variables that were unset or +null) were not matched correctly, resulting in failure. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2011-01-02 16:12:51.000000000 -0500 +--- subst.c 2011-02-18 22:30:13.000000000 -0500 +*************** +*** 3373,3379 **** + if (string == 0 || *string == '\0') + return (WORD_LIST *)NULL; + +! td.flags = 0; + td.word = string; + tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at); + return (tresult); +--- 3373,3379 ---- + if (string == 0 || *string == '\0') + return (WORD_LIST *)NULL; + +! td.flags = W_NOSPLIT2; /* no splitting, remove "" and '' */ + td.word = string; + tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at); + return (tresult); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 3 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 4 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-005 b/patches/source/bash/bash-4.2-patches/bash42-005 new file mode 100644 index 00000000..3ca9fc1d --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-005 @@ -0,0 +1,131 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-005 + +Bug-Reported-by: Dennis Williamson <dennistwilliamson@gmail.com> +Bug-Reference-ID: <AANLkTikDbEV5rnbPc0zOfmZfBcg0xGetzLLzK+KjRiNa@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00147.html + +Bug-Description: + +Systems that use tzset() to set the local timezone require the TZ variable +to be in the environment. Bash must make sure the environment has been +modified with any updated value for TZ before calling tzset(). This +affects prompt string expansions and the `%T' printf conversion specification +on systems that do not allow bash to supply a replacement for getenv(3). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/variables.h 2010-12-02 20:22:01.000000000 -0500 +--- variables.h 2011-02-19 19:57:12.000000000 -0500 +*************** +*** 314,317 **** +--- 314,318 ---- + extern void sort_variables __P((SHELL_VAR **)); + ++ extern int chkexport __P((char *)); + extern void maybe_make_export_env __P((void)); + extern void update_export_env_inplace __P((char *, int, char *)); +*** ../bash-4.2-patched/variables.c 2011-01-24 20:07:48.000000000 -0500 +--- variables.c 2011-02-19 20:04:50.000000000 -0500 +*************** +*** 3654,3657 **** +--- 3654,3673 ---- + } + ++ int ++ chkexport (name) ++ char *name; ++ { ++ SHELL_VAR *v; ++ ++ v = find_variable (name); ++ if (exported_p (v)) ++ { ++ array_needs_making = 1; ++ maybe_make_export_env (); ++ return 1; ++ } ++ return 0; ++ } ++ + void + maybe_make_export_env () +*************** +*** 4215,4219 **** + { "TEXTDOMAINDIR", sv_locale }, + +! #if defined (HAVE_TZSET) && defined (PROMPT_STRING_DECODE) + { "TZ", sv_tz }, + #endif +--- 4231,4235 ---- + { "TEXTDOMAINDIR", sv_locale }, + +! #if defined (HAVE_TZSET) + { "TZ", sv_tz }, + #endif +*************** +*** 4559,4568 **** + #endif /* HISTORY */ + +! #if defined (HAVE_TZSET) && defined (PROMPT_STRING_DECODE) + void + sv_tz (name) + char *name; + { +! tzset (); + } + #endif +--- 4575,4585 ---- + #endif /* HISTORY */ + +! #if defined (HAVE_TZSET) + void + sv_tz (name) + char *name; + { +! if (chkexport (name)) +! tzset (); + } + #endif +*** ../bash-4.2-patched/parse.y 2011-01-02 15:48:11.000000000 -0500 +--- parse.y 2011-02-19 20:05:00.000000000 -0500 +*************** +*** 5136,5139 **** +--- 5136,5142 ---- + /* Make the current time/date into a string. */ + (void) time (&the_time); ++ #if defined (HAVE_TZSET) ++ sv_tz ("TZ"); /* XXX -- just make sure */ ++ #endif + tm = localtime (&the_time); + +*** ../bash-4.2-patched/builtins/printf.def 2010-11-23 10:02:55.000000000 -0500 +--- builtins/printf.def 2011-02-19 20:05:04.000000000 -0500 +*************** +*** 466,469 **** +--- 466,472 ---- + else + secs = arg; ++ #if defined (HAVE_TZSET) ++ sv_tz ("TZ"); /* XXX -- just make sure */ ++ #endif + tm = localtime (&secs); + n = strftime (timebuf, sizeof (timebuf), timefmt, tm); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 4 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 5 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-006 b/patches/source/bash/bash-4.2-patches/bash42-006 new file mode 100644 index 00000000..be6e49c7 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-006 @@ -0,0 +1,46 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-006 + +Bug-Reported-by: Allan McRae <allan@archlinux.org> +Bug-Reference-ID: <4D6D0D0B.50908@archlinux.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00001.html + +Bug-Description: + +A problem with bash42-005 caused it to dump core if TZ was unset. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/variables.c 2011-02-25 12:07:41.000000000 -0500 +--- variables.c 2011-03-01 10:13:04.000000000 -0500 +*************** +*** 3661,3665 **** + + v = find_variable (name); +! if (exported_p (v)) + { + array_needs_making = 1; +--- 3661,3665 ---- + + v = find_variable (name); +! if (v && exported_p (v)) + { + array_needs_making = 1; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 5 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 6 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-007 b/patches/source/bash/bash-4.2-patches/bash42-007 new file mode 100644 index 00000000..d16156e2 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-007 @@ -0,0 +1,46 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-007 + +Bug-Reported-by: Matthias Klose <doko@debian.org> +Bug-Reference-ID: <4D6FD2AC.1010500@debian.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00015.html + +Bug-Description: + +When used in contexts where word splitting and quote removal were not +performed, such as case statement word expansion, empty strings +(either literal or resulting from quoted variables that were unset or +null) were not expanded correctly, resulting in failure. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2011-02-25 12:03:58.000000000 -0500 +--- subst.c 2011-03-03 14:08:23.000000000 -0500 +*************** +*** 4609,4614 **** +--- 4611,4617 ---- + if (ifs_firstc == 0) + #endif + word->flags |= W_NOSPLIT; ++ word->flags |= W_NOSPLIT2; + result = call_expand_word_internal (word, quoted, 0, (int *)NULL, (int *)NULL); + expand_no_split_dollar_star = 0; + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 6 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 7 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-008 b/patches/source/bash/bash-4.2-patches/bash42-008 new file mode 100644 index 00000000..631abbdf --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-008 @@ -0,0 +1,74 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-008 + +Bug-Reported-by: Doug McMahon <mc2man@optonline.net> +Bug-Reference-ID: <1299441211.2535.11.camel@doug-XPS-M1330> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00050.html + +Bug-Description: + +Bash-4.2 does not attempt to save the shell history on receipt of a +terminating signal that is handled synchronously. Unfortunately, the +`close' button on most X11 terminal emulators sends SIGHUP, which +kills the shell. + +This is a very small patch to save the history in the case that an +interactive shell receives a SIGHUP or SIGTERM while in readline and +reading a command. + +The next version of bash will do this differently. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/sig.c Tue Nov 23 08:21:22 2010 +--- sig.c Tue Mar 8 21:28:32 2011 +*************** +*** 47,50 **** +--- 47,51 ---- + #if defined (READLINE) + # include "bashline.h" ++ # include <readline/readline.h> + #endif + +*************** +*** 63,66 **** +--- 64,68 ---- + extern int history_lines_this_session; + #endif ++ extern int no_line_editing; + + extern void initialize_siglist (); +*************** +*** 506,510 **** + #if defined (HISTORY) + /* XXX - will inhibit history file being written */ +! history_lines_this_session = 0; + #endif + terminate_immediately = 0; +--- 508,515 ---- + #if defined (HISTORY) + /* XXX - will inhibit history file being written */ +! # if defined (READLINE) +! if (interactive_shell == 0 || interactive == 0 || (sig != SIGHUP && sig != SIGTERM) || no_line_editing || (RL_ISSTATE (RL_STATE_READCMD) == 0)) +! # endif +! history_lines_this_session = 0; + #endif + terminate_immediately = 0; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 7 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 8 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-009 b/patches/source/bash/bash-4.2-patches/bash42-009 new file mode 100644 index 00000000..83a7e2c7 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-009 @@ -0,0 +1,82 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-009 + +Bug-Reported-by: <piuma@piumalab.org> +Bug-Reference-ID: <4DAAC0DB.7060606@piumalab.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-04/msg00075.html + +Bug-Description: + +Under certain circumstances, running `fc -l' two times in succession with a +relative history offset at the end of the history will result in an incorrect +calculation of the last history entry and a seg fault. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/fc.def 2010-05-30 18:25:38.000000000 -0400 +--- builtins/fc.def 2011-04-19 15:46:17.000000000 -0400 +*************** +*** 305,309 **** + + /* XXX */ +! if (saved_command_line_count > 0 && i == last_hist && hlist[last_hist] == 0) + while (last_hist >= 0 && hlist[last_hist] == 0) + last_hist--; +--- 305,309 ---- + + /* XXX */ +! if (i == last_hist && hlist[last_hist] == 0) + while (last_hist >= 0 && hlist[last_hist] == 0) + last_hist--; +*************** +*** 476,480 **** + { + int sign, n, clen, rh; +! register int i, j; + register char *s; + +--- 476,480 ---- + { + int sign, n, clen, rh; +! register int i, j, last_hist; + register char *s; + +*************** +*** 496,500 **** + calculation as if it were on. */ + rh = remember_on_history || ((subshell_environment & SUBSHELL_COMSUB) && enable_history_list); +! i -= rh + hist_last_line_added; + + /* No specification defaults to most recent command. */ +--- 496,508 ---- + calculation as if it were on. */ + rh = remember_on_history || ((subshell_environment & SUBSHELL_COMSUB) && enable_history_list); +! last_hist = i - rh - hist_last_line_added; +! +! if (i == last_hist && hlist[last_hist] == 0) +! while (last_hist >= 0 && hlist[last_hist] == 0) +! last_hist--; +! if (last_hist < 0) +! return (-1); +! +! i = last_hist; + + /* No specification defaults to most recent command. */ +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 8 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 9 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-010 b/patches/source/bash/bash-4.2-patches/bash42-010 new file mode 100644 index 00000000..e408abd6 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-010 @@ -0,0 +1,61 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-010 + +Bug-Reported-by: Mike Frysinger <vapier@gentoo.org> +Bug-Reference-ID: <201104122356.20160.vapier@gentoo.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-04/msg00058.html + +Bug-Description: + +Bash did not correctly print/reproduce here documents attached to commands +inside compound commands such as arithmetic for loops and user-specified +subshells. This affected the execution of such commands inside a shell +function when the function definition is saved and later restored using +`.' or `eval'. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/print_cmd.c 2010-05-30 18:34:08.000000000 -0400 +--- print_cmd.c 2011-04-14 10:43:18.000000000 -0400 +*************** +*** 316,319 **** +--- 317,321 ---- + skip_this_indent++; + make_command_string_internal (command->value.Subshell->command); ++ PRINT_DEFERRED_HEREDOCS (""); + cprintf (" )"); + break; +*************** +*** 593,596 **** +--- 606,610 ---- + indentation += indentation_amount; + make_command_string_internal (arith_for_command->action); ++ PRINT_DEFERRED_HEREDOCS (""); + semicolon (); + indentation -= indentation_amount; +*************** +*** 654,657 **** +--- 668,672 ---- + + make_command_string_internal (group_command->command); ++ PRINT_DEFERRED_HEREDOCS (""); + + if (inside_function_def) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 9 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 10 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-011 b/patches/source/bash/bash-4.2-patches/bash42-011 new file mode 100644 index 00000000..26fdf65f --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-011 @@ -0,0 +1,46 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-011 + +Bug-Reported-by: "David Parks" <davidparks21@yahoo.com> +Bug-Reference-ID: <014101cc82c6$46ac1540$d4043fc0$@com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-10/msg00031.html + +Bug-Description: + +Overwriting a value in an associative array causes the memory allocated to +store the key on the second and subsequent assignments to leak. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/assoc.c 2009-08-05 20:19:40.000000000 -0400 +--- assoc.c 2011-10-04 20:23:07.000000000 -0400 +*************** +*** 78,81 **** +--- 78,86 ---- + if (b == 0) + return -1; ++ /* If we are overwriting an existing element's value, we're not going to ++ use the key. Nothing in the array assignment code path frees the key ++ string, so we can free it here to avoid a memory leak. */ ++ if (b->key != key) ++ free (key); + FREE (b->data); + b->data = value ? savestring (value) : (char *)0; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 10 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 11 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-012 b/patches/source/bash/bash-4.2-patches/bash42-012 new file mode 100644 index 00000000..70f0a56b --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-012 @@ -0,0 +1,151 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-012 + +Bug-Reported-by: Rui Santos <rsantos@grupopie.com> +Bug-Reference-ID: <4E04C6D0.2020507@grupopie.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00079.html + +Bug-Description: + +When calling the parser to recursively parse a command substitution within +an arithmetic expansion, the shell overwrote the saved shell input line and +associated state, resulting in a garbled command. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/parse.y 2011-02-26 19:19:05.000000000 -0500 +--- parse.y 2011-06-24 20:08:22.000000000 -0400 +*************** +*** 3843,3846 **** +--- 3849,3853 ---- + { + sh_parser_state_t ps; ++ sh_input_line_state_t ls; + int orig_ind, nc, sflags; + char *ret, *s, *ep, *ostring; +*************** +*** 3850,3857 **** +--- 3857,3866 ---- + ostring = string; + ++ /*itrace("xparse_dolparen: size = %d shell_input_line = `%s'", shell_input_line_size, shell_input_line);*/ + sflags = SEVAL_NONINT|SEVAL_NOHIST|SEVAL_NOFREE; + if (flags & SX_NOLONGJMP) + sflags |= SEVAL_NOLONGJMP; + save_parser_state (&ps); ++ save_input_line_state (&ls); + + /*(*/ +*************** +*** 3862,3865 **** +--- 3871,3876 ---- + restore_parser_state (&ps); + reset_parser (); ++ /* reset_parser clears shell_input_line and associated variables */ ++ restore_input_line_state (&ls); + if (interactive) + token_to_read = 0; +*************** +*** 5909,5912 **** +--- 5920,5929 ---- + ps->echo_input_at_read = echo_input_at_read; + ++ ps->token = token; ++ ps->token_buffer_size = token_buffer_size; ++ /* Force reallocation on next call to read_token_word */ ++ token = 0; ++ token_buffer_size = 0; ++ + return (ps); + } +*************** +*** 5950,5953 **** +--- 5967,6006 ---- + expand_aliases = ps->expand_aliases; + echo_input_at_read = ps->echo_input_at_read; ++ ++ FREE (token); ++ token = ps->token; ++ token_buffer_size = ps->token_buffer_size; ++ } ++ ++ sh_input_line_state_t * ++ save_input_line_state (ls) ++ sh_input_line_state_t *ls; ++ { ++ if (ls == 0) ++ ls = (sh_input_line_state_t *)xmalloc (sizeof (sh_input_line_state_t)); ++ if (ls == 0) ++ return ((sh_input_line_state_t *)NULL); ++ ++ ls->input_line = shell_input_line; ++ ls->input_line_size = shell_input_line_size; ++ ls->input_line_len = shell_input_line_len; ++ ls->input_line_index = shell_input_line_index; ++ ++ /* force reallocation */ ++ shell_input_line = 0; ++ shell_input_line_size = shell_input_line_len = shell_input_line_index = 0; ++ } ++ ++ void ++ restore_input_line_state (ls) ++ sh_input_line_state_t *ls; ++ { ++ FREE (shell_input_line); ++ shell_input_line = ls->input_line; ++ shell_input_line_size = ls->input_line_size; ++ shell_input_line_len = ls->input_line_len; ++ shell_input_line_index = ls->input_line_index; ++ ++ set_line_mbstate (); + } + +*** ../bash-4.2-patched/shell.h 2011-01-06 22:16:55.000000000 -0500 +--- shell.h 2011-06-24 19:12:25.000000000 -0400 +*************** +*** 137,140 **** +--- 139,145 ---- + int *token_state; + ++ char *token; ++ int token_buffer_size; ++ + /* input line state -- line number saved elsewhere */ + int input_line_terminator; +*************** +*** 167,171 **** +--- 172,186 ---- + } sh_parser_state_t; + ++ typedef struct _sh_input_line_state_t { ++ char *input_line; ++ int input_line_index; ++ int input_line_size; ++ int input_line_len; ++ } sh_input_line_state_t; ++ + /* Let's try declaring these here. */ + extern sh_parser_state_t *save_parser_state __P((sh_parser_state_t *)); + extern void restore_parser_state __P((sh_parser_state_t *)); ++ ++ extern sh_input_line_state_t *save_input_line_state __P((sh_input_line_state_t *)); ++ extern void restore_input_line_state __P((sh_input_line_state_t *)); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 11 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 12 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-013 b/patches/source/bash/bash-4.2-patches/bash42-013 new file mode 100644 index 00000000..5bb186b3 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-013 @@ -0,0 +1,52 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-013 + +Bug-Reported-by: Marten Wikstrom <marten.wikstrom@keystream.se> +Bug-Reference-ID: <BANLkTikKECAh94ZEX68iQvxYuPeEM_xoSQ@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-05/msg00049.html + +Bug-Description: + +An off-by-one error caused the shell to skip over CTLNUL characters, +which are used internally to mark quoted null strings. The effect +was to have stray 0x7f characters left after expanding words like +""""""""aa. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2011-03-06 14:11:11.000000000 -0500 +--- subst.c 2011-05-11 11:23:33.000000000 -0400 +*************** +*** 3707,3711 **** + } + else if (string[i] == CTLNUL) +! i++; + + prev_i = i; +--- 3710,3717 ---- + } + else if (string[i] == CTLNUL) +! { +! i++; +! continue; +! } + + prev_i = i; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 12 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 13 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-014 b/patches/source/bash/bash-4.2-patches/bash42-014 new file mode 100644 index 00000000..a43271c3 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-014 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-014 + +Bug-Reported-by: Shawn Bohrer <sbohrer@rgmadvisors.com> +Bug-Reference-ID: <20110504152320.6E8F28130527@dev1.rgmadvisors.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-05/msg00018.html + +Bug-Description: + +The regular expression matching operator did not correctly match +expressions with an embedded ^A. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/pathexp.c 2010-08-13 23:21:57.000000000 -0400 +--- pathexp.c 2011-05-05 16:40:58.000000000 -0400 +*************** +*** 197,201 **** + if ((qflags & QGLOB_FILENAME) && pathname[i+1] == '/') + continue; +! if ((qflags & QGLOB_REGEXP) && ere_char (pathname[i+1]) == 0) + continue; + temp[j++] = '\\'; +--- 197,201 ---- + if ((qflags & QGLOB_FILENAME) && pathname[i+1] == '/') + continue; +! if (pathname[i+1] != CTLESC && (qflags & QGLOB_REGEXP) && ere_char (pathname[i+1]) == 0) + continue; + temp[j++] = '\\'; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 13 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 14 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-015 b/patches/source/bash/bash-4.2-patches/bash42-015 new file mode 100644 index 00000000..86558738 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-015 @@ -0,0 +1,81 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-015 + +Bug-Reported-by: <dnade.ext@orange-ftgroup.com> +Bug-Reference-ID: <728_1312188080_4E3666B0_728_118711_1_3B5D3E0F95CC5C478D6500CDCE8B691F7AAAA4AA3D@PUEXCB2B.nanterre.francetelecom.fr> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-08/msg00000.html + +Bug-Description: + +When in a context where arithmetic evaluation is not taking place, the +evaluator should not check for division by 0. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/expr.c 2010-12-21 11:12:13.000000000 -0500 +--- expr.c 2011-08-02 20:58:28.000000000 -0400 +*************** +*** 477,480 **** +--- 481,492 ---- + if (special) + { ++ if ((op == DIV || op == MOD) && value == 0) ++ { ++ if (noeval == 0) ++ evalerror (_("division by 0")); ++ else ++ value = 1; ++ } ++ + switch (op) + { +*************** +*** 483,493 **** + break; + case DIV: +- if (value == 0) +- evalerror (_("division by 0")); + lvalue /= value; + break; + case MOD: +- if (value == 0) +- evalerror (_("division by 0")); + lvalue %= value; + break; +--- 495,501 ---- +*************** +*** 805,809 **** + + if (((op == DIV) || (op == MOD)) && (val2 == 0)) +! evalerror (_("division by 0")); + + if (op == MUL) +--- 813,822 ---- + + if (((op == DIV) || (op == MOD)) && (val2 == 0)) +! { +! if (noeval == 0) +! evalerror (_("division by 0")); +! else +! val2 = 1; +! } + + if (op == MUL) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 14 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 15 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-016 b/patches/source/bash/bash-4.2-patches/bash42-016 new file mode 100644 index 00000000..46025888 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-016 @@ -0,0 +1,46 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-016 + +Bug-Reported-by: Martin von Gagern <Martin.vGagern@gmx.net> +Bug-Reference-ID: <4E43AD9E.8060501@gmx.net> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-08/msg00141.html + +Bug-Description: + +Bash should not check for mail while executing the `eval' builtin. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/parse.y Fri Feb 25 12:07:41 2011 +--- parse.y Thu Aug 11 19:02:26 2011 +*************** +*** 2500,2504 **** + is the mail alarm reset; nothing takes place in check_mail () + except the checking of mail. Please don't change this. */ +! if (prompt_is_ps1 && time_to_check_mail ()) + { + check_mail (); +--- 2498,2502 ---- + is the mail alarm reset; nothing takes place in check_mail () + except the checking of mail. Please don't change this. */ +! if (prompt_is_ps1 && parse_and_execute_level == 0 && time_to_check_mail ()) + { + check_mail (); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 15 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 16 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-017 b/patches/source/bash/bash-4.2-patches/bash42-017 new file mode 100644 index 00000000..010ed1e5 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-017 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-017 + +Bug-Reported-by: Curtis Doty <Curtis@GreenKey.net> +Bug-Reference-ID: <20110621035324.A4F70849F59@mx1.iParadigms.net> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00053.html + +Bug-Description: + +Using `read -a foo' where foo was an already-declared associative array +caused the shell to die with a segmentation fault. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/read.def 2011-01-04 11:43:36.000000000 -0500 +--- builtins/read.def 2011-06-21 10:31:02.000000000 -0400 +*************** +*** 643,646 **** +--- 642,651 ---- + return EXECUTION_FAILURE; /* readonly or noassign */ + } ++ if (assoc_p (var)) ++ { ++ builtin_error (_("%s: cannot convert associative to indexed array"), arrayname); ++ xfree (input_string); ++ return EXECUTION_FAILURE; /* existing associative array */ ++ } + array_flush (array_cell (var)); + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 16 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 17 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-018 b/patches/source/bash/bash-4.2-patches/bash42-018 new file mode 100644 index 00000000..5d11dce1 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-018 @@ -0,0 +1,74 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-018 + +Bug-Reported-by: Thomas Cort <tcort@minix3.org> +Bug-Reference-ID: <BANLkTik-ebGGw3k_1YtB=RyfV1bsqdxC_g@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00110.html + +Bug-Description: + +Bash fails to compile unless JOB_CONTROL is defined. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/execute_cmd.c 2011-02-09 17:32:25.000000000 -0500 +--- execute_cmd.c 2011-11-06 15:12:48.000000000 -0500 +*************** +*** 2197,2200 **** +--- 2315,2319 ---- + cmd->flags |= CMD_IGNORE_RETURN; + ++ #if defined (JOB_CONTROL) + lastpipe_flag = 0; + begin_unwind_frame ("lastpipe-exec"); +*************** +*** 2216,2228 **** + add_unwind_protect (lastpipe_cleanup, lastpipe_jid); + } +! cmd->flags |= CMD_LASTPIPE; + } + if (prev >= 0) + add_unwind_protect (close, prev); + + exec_result = execute_command_internal (cmd, asynchronous, prev, pipe_out, fds_to_close); + + if (lstdin > 0) + restore_stdin (lstdin); + + if (prev >= 0) +--- 2335,2351 ---- + add_unwind_protect (lastpipe_cleanup, lastpipe_jid); + } +! if (cmd) +! cmd->flags |= CMD_LASTPIPE; + } + if (prev >= 0) + add_unwind_protect (close, prev); ++ #endif + + exec_result = execute_command_internal (cmd, asynchronous, prev, pipe_out, fds_to_close); + ++ #if defined (JOB_CONTROL) + if (lstdin > 0) + restore_stdin (lstdin); ++ #endif + + if (prev >= 0) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 17 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 18 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-019 b/patches/source/bash/bash-4.2-patches/bash42-019 new file mode 100644 index 00000000..5fce40ae --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-019 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-019 + +Bug-Reported-by: Diego Augusto Molina <diegoaugustomolina@gmail.com> +Bug-Reference-ID: <CAGOxLdHcSQu3ck9Qy3pRjj_NBU5tAPSAvNm-95-nLQ9Szwb6aA@mail.gmail.com> +Bug-Reference-URL: lists.gnu.org/archive/html/bug-bash/2011-09/msg00047.html + +Bug-Description: + +Using `declare' with attributes and an invalid array variable name or +assignment reference resulted in a segmentation fault instead of a +declaration error. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/declare.def 2010-05-30 18:25:21.000000000 -0400 +--- builtins/declare.def 2011-09-15 15:20:20.000000000 -0400 +*************** +*** 514,517 **** +--- 514,522 ---- + var = assign_array_element (name, value, 0); /* XXX - not aflags */ + *subscript_start = '\0'; ++ if (var == 0) /* some kind of assignment error */ ++ { ++ assign_error++; ++ NEXT_VARIABLE (); ++ } + } + else if (simple_array_assign) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 18 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 19 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-020 b/patches/source/bash/bash-4.2-patches/bash42-020 new file mode 100644 index 00000000..a1dd0443 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-020 @@ -0,0 +1,60 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-020 + +Bug-Reported-by: Vincent Sheffer <vince.sheffer@apisphere.com> +Bug-Reference-ID: <F13C1C4F-C44C-4071-BFED-4BB6D13CF92F@apisphere.com> +Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2011-08/msg00000.html + +Bug-Description: + +The shared object helper script needs to be updated for Mac OS X 10.7 +(Lion, darwin11). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/support/shobj-conf 2009-10-28 09:20:21.000000000 -0400 +--- support/shobj-conf 2011-08-27 13:25:23.000000000 -0400 +*************** +*** 158,162 **** + + # Darwin/MacOS X +! darwin[89]*|darwin10*) + SHOBJ_STATUS=supported + SHLIB_STATUS=supported +--- 172,176 ---- + + # Darwin/MacOS X +! darwin[89]*|darwin1[012]*) + SHOBJ_STATUS=supported + SHLIB_STATUS=supported +*************** +*** 187,191 **** + + case "${host_os}" in +! darwin[789]*|darwin10*) SHOBJ_LDFLAGS='' + SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' + ;; +--- 201,205 ---- + + case "${host_os}" in +! darwin[789]*|darwin1[012]*) SHOBJ_LDFLAGS='' + SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' + ;; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 19 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 20 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-021 b/patches/source/bash/bash-4.2-patches/bash42-021 new file mode 100644 index 00000000..b6153c78 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-021 @@ -0,0 +1,61 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-021 + +Bug-Reported-by: Dan Douglas <ormaaj@gmail.com> +Bug-Reference-ID: <4585554.nZWb4q7YoZ@smorgbox> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-12/msg00084.html + +Bug-Description: + +Using `read -N' to assign values to an array can result in NUL values being +assigned to some array elements. These values cause seg faults when referenced +later. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/read.def 2011-11-21 18:03:38.000000000 -0500 +--- builtins/read.def 2011-12-19 19:52:12.000000000 -0500 +*************** +*** 738,742 **** + } + else +! var = bind_read_variable (varname, t); + } + else +--- 775,779 ---- + } + else +! var = bind_read_variable (varname, t ? t : ""); + } + else +*************** +*** 799,803 **** + } + else +! var = bind_read_variable (list->word->word, input_string); + + if (var) +--- 836,840 ---- + } + else +! var = bind_read_variable (list->word->word, input_string ? input_string : ""); + + if (var) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 20 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 21 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-022 b/patches/source/bash/bash-4.2-patches/bash42-022 new file mode 100644 index 00000000..0067b133 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-022 @@ -0,0 +1,61 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-022 + +Bug-Reported-by: Gregory Margo <gmargo@pacbell.net> +Bug-Reference-ID: <20110727174529.GA3333@pacbell.net> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-07/msg00102.html + +Bug-Description: + +The return value from lseek is `off_t'. This can cause corrupted return +values when the file offset is greater than 2**31 - 1. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/sh/zread.c Mon Mar 2 08:54:45 2009 +--- lib/sh/zread.c Thu Jul 28 18:16:53 2011 +*************** +*** 161,166 **** + int fd; + { +! off_t off; +! int r; + + off = lused - lind; +--- 161,165 ---- + int fd; + { +! off_t off, r; + + off = lused - lind; +*************** +*** 169,173 **** + r = lseek (fd, -off, SEEK_CUR); + +! if (r >= 0) + lused = lind = 0; + } +--- 168,172 ---- + r = lseek (fd, -off, SEEK_CUR); + +! if (r != -1) + lused = lind = 0; + } +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 21 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 22 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-023 b/patches/source/bash/bash-4.2-patches/bash42-023 new file mode 100644 index 00000000..4f204efb --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-023 @@ -0,0 +1,62 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-023 + +Bug-Reported-by: Ewan Mellor <Ewan.Mellor@eu.citrix.com> +Bug-Reference-ID: <6005BE083BF501439A84DC3523BAC82DC4B964FD12@LONPMAILBOX01.citrite.net> +Bug-Reference-URL: + +Bug-Description: + +Under some circumstances, an exit trap triggered by a bad substitution +error when errexit is enabled will cause the shell to exit with an +incorrect exit status (0). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2011-11-21 12:04:38.000000000 -0500 +--- subst.c 2012-02-08 13:36:28.000000000 -0500 +*************** +*** 7275,7278 **** +--- 7281,7285 ---- + case '\0': + bad_substitution: ++ last_command_exit_value = EXECUTION_FAILURE; + report_error (_("%s: bad substitution"), string ? string : "??"); + FREE (value); +*** ../bash-4.2-patched/error.c 2009-08-21 22:31:31.000000000 -0400 +--- error.c 2012-02-25 15:54:40.000000000 -0500 +*************** +*** 201,205 **** + va_end (args); + if (exit_immediately_on_error) +! exit_shell (1); + } + +--- 201,209 ---- + va_end (args); + if (exit_immediately_on_error) +! { +! if (last_command_exit_value == 0) +! last_command_exit_value = 1; +! exit_shell (last_command_exit_value); +! } + } + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 22 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 23 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-024 b/patches/source/bash/bash-4.2-patches/bash42-024 new file mode 100644 index 00000000..b7b1158b --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-024 @@ -0,0 +1,45 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-024 + +Bug-Reported-by: Jim Avera <james_avera@yahoo.com> +Bug-Reference-ID: <4F29E07A.80405@yahoo.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-02/msg00001.html + +Bug-Description: + +When `printf -v' is used to set an array element, the format string contains +`%b', and the corresponding argument is the empty string, the buffer used +to store the value to be assigned can be NULL, which results in NUL being +assigned to the array element. This causes a seg fault when it's used later. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/printf.def 2011-02-25 12:07:41.000000000 -0500 +--- builtins/printf.def 2012-02-02 08:37:12.000000000 -0500 +*************** +*** 256,259 **** +--- 257,262 ---- + { + vflag = 1; ++ if (vbsize == 0) ++ vbuf = xmalloc (vbsize = 16); + vblen = 0; + if (vbuf) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 23 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 24 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-025 b/patches/source/bash/bash-4.2-patches/bash42-025 new file mode 100644 index 00000000..34ac3430 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-025 @@ -0,0 +1,143 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-025 + +Bug-Reported-by: Bill Gradwohl <bill@ycc.com> +Bug-Reference-ID: <CAFyvKis-UfuOWr5THBRKh=vYHDoKEEgdW8hN1RviTuYQ00Lu5A@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/help-bash/2012-03/msg00078.html + +Bug-Description: + +When used in a shell function, `declare -g -a array=(compound assignment)' +creates a local variable instead of a global one. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/command.h 2010-08-02 19:36:51.000000000 -0400 +--- command.h 2012-04-01 12:38:35.000000000 -0400 +*************** +*** 98,101 **** +--- 98,102 ---- + #define W_ASSIGNASSOC 0x400000 /* word looks like associative array assignment */ + #define W_ARRAYIND 0x800000 /* word is an array index being expanded */ ++ #define W_ASSNGLOBAL 0x1000000 /* word is a global assignment to declare (declare/typeset -g) */ + + /* Possible values for subshell_environment */ +*** ../bash-4.2-patched/execute_cmd.c 2011-11-21 18:03:41.000000000 -0500 +--- execute_cmd.c 2012-04-01 12:42:03.000000000 -0400 +*************** +*** 3581,3585 **** + WORD_LIST *w; + struct builtin *b; +! int assoc; + + if (words == 0) +--- 3581,3585 ---- + WORD_LIST *w; + struct builtin *b; +! int assoc, global; + + if (words == 0) +*************** +*** 3587,3591 **** + + b = 0; +! assoc = 0; + + for (w = words; w; w = w->next) +--- 3587,3591 ---- + + b = 0; +! assoc = global = 0; + + for (w = words; w; w = w->next) +*************** +*** 3604,3607 **** +--- 3604,3609 ---- + if (assoc) + w->word->flags |= W_ASSIGNASSOC; ++ if (global) ++ w->word->flags |= W_ASSNGLOBAL; + #endif + } +*************** +*** 3609,3613 **** + /* Note that we saw an associative array option to a builtin that takes + assignment statements. This is a bit of a kludge. */ +! else if (w->word->word[0] == '-' && strchr (w->word->word, 'A')) + { + if (b == 0) +--- 3611,3618 ---- + /* Note that we saw an associative array option to a builtin that takes + assignment statements. This is a bit of a kludge. */ +! else if (w->word->word[0] == '-' && (strchr (w->word->word+1, 'A') || strchr (w->word->word+1, 'g'))) +! #else +! else if (w->word->word[0] == '-' && strchr (w->word->word+1, 'g')) +! #endif + { + if (b == 0) +*************** +*** 3619,3626 **** + words->word->flags |= W_ASSNBLTIN; + } +! if (words->word->flags & W_ASSNBLTIN) + assoc = 1; + } +- #endif + } + +--- 3624,3632 ---- + words->word->flags |= W_ASSNBLTIN; + } +! if ((words->word->flags & W_ASSNBLTIN) && strchr (w->word->word+1, 'A')) + assoc = 1; ++ if ((words->word->flags & W_ASSNBLTIN) && strchr (w->word->word+1, 'g')) ++ global = 1; + } + } + +*** ../bash-4.2-patched/subst.c 2012-03-11 17:35:13.000000000 -0400 +--- subst.c 2012-04-01 12:38:35.000000000 -0400 +*************** +*** 367,370 **** +--- 367,375 ---- + fprintf (stderr, "W_ASSNBLTIN%s", f ? "|" : ""); + } ++ if (f & W_ASSNGLOBAL) ++ { ++ f &= ~W_ASSNGLOBAL; ++ fprintf (stderr, "W_ASSNGLOBAL%s", f ? "|" : ""); ++ } + if (f & W_COMPASSIGN) + { +*************** +*** 2804,2808 **** + else if (assign_list) + { +! if (word->flags & W_ASSIGNARG) + aflags |= ASS_MKLOCAL; + if (word->flags & W_ASSIGNASSOC) +--- 2809,2813 ---- + else if (assign_list) + { +! if ((word->flags & W_ASSIGNARG) && (word->flags & W_ASSNGLOBAL) == 0) + aflags |= ASS_MKLOCAL; + if (word->flags & W_ASSIGNASSOC) + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 24 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 25 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-026 b/patches/source/bash/bash-4.2-patches/bash42-026 new file mode 100644 index 00000000..e15d7480 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-026 @@ -0,0 +1,58 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-026 + +Bug-Reported-by: Greg Wooledge <wooledg@eeg.ccf.org> +Bug-Reference-ID: <20120425180443.GO22241@eeg.ccf.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-04/msg00172.html + +Bug-Description: + +The `lastpipe' option does not behave correctly on machines where the +open file limit is less than 256. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/execute_cmd.c 2011-11-21 12:04:47.000000000 -0500 +--- execute_cmd.c 2012-04-26 11:09:30.000000000 -0400 +*************** +*** 2206,2210 **** + if (lastpipe_opt && job_control == 0 && asynchronous == 0 && pipe_out == NO_PIPE && prev > 0) + { +! lstdin = move_to_high_fd (0, 0, 255); + if (lstdin > 0) + { +--- 2325,2329 ---- + if (lastpipe_opt && job_control == 0 && asynchronous == 0 && pipe_out == NO_PIPE && prev > 0) + { +! lstdin = move_to_high_fd (0, 1, -1); + if (lstdin > 0) + { +*************** +*** 2252,2256 **** +--- 2371,2377 ---- + } + ++ #if defined (JOB_CONTROL) + discard_unwind_frame ("lastpipe-exec"); ++ #endif + + return (exec_result); + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 25 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 26 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-027 b/patches/source/bash/bash-4.2-patches/bash42-027 new file mode 100644 index 00000000..c0c5d3f8 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-027 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-027 + +Bug-Reported-by: Mike Frysinger <vapier@gentoo.org> +Bug-Reference-ID: <201204211243.30163.vapier@gentoo.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-04/msg00134.html + +Bug-Description: + +When the `extglob' shell option is enabled, pattern substitution does not +work correctly in the presence of multibyte characters. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2012-03-11 17:52:57.000000000 -0400 +--- subst.c 2012-04-22 16:19:10.000000000 -0400 +*************** +*** 4167,4171 **** + #if defined (EXTENDED_GLOB) + if (extended_glob) +! simple |= (wpat[1] != L'(' || (wpat[0] != L'*' && wpat[0] != L'?' && wpat[0] != L'+' && wpat[0] != L'!' && wpat[0] != L'@')); /*)*/ + #endif + +--- 4167,4171 ---- + #if defined (EXTENDED_GLOB) + if (extended_glob) +! simple &= (wpat[1] != L'(' || (wpat[0] != L'*' && wpat[0] != L'?' && wpat[0] != L'+' && wpat[0] != L'!' && wpat[0] != L'@')); /*)*/ + #endif + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 26 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 27 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-028 b/patches/source/bash/bash-4.2-patches/bash42-028 new file mode 100644 index 00000000..fa3be3b4 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-028 @@ -0,0 +1,52 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-028 + +Bug-Reported-by: Mark Edgar <medgar123@gmail.com> +Bug-Reference-ID: <CABHMh_3d+ZgO_zaEtYXPwK4P7tC0ghZ4g=Ue_TRpsEMf5YDsqw@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-03/msg00109.html + +Bug-Description: + +When using a word expansion for which the right hand side is evaluated, +certain expansions of quoted null strings include spurious ^? characters. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2012-03-11 17:35:13.000000000 -0400 +--- subst.c 2012-03-20 19:30:13.000000000 -0400 +*************** +*** 5810,5813 **** +--- 5810,5823 ---- + if (qdollaratp && ((hasdol && quoted) || l->next)) + *qdollaratp = 1; ++ /* If we have a quoted null result (QUOTED_NULL(temp)) and the word is ++ a quoted null (l->next == 0 && QUOTED_NULL(l->word->word)), the ++ flags indicate it (l->word->flags & W_HASQUOTEDNULL), and the ++ expansion is quoted (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) ++ (which is more paranoia than anything else), we need to return the ++ quoted null string and set the flags to indicate it. */ ++ if (l->next == 0 && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) && QUOTED_NULL(temp) && QUOTED_NULL(l->word->word) && (l->word->flags & W_HASQUOTEDNULL)) ++ { ++ w->flags |= W_HASQUOTEDNULL; ++ } + dispose_words (l); + } + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 27 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 28 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-029 b/patches/source/bash/bash-4.2-patches/bash42-029 new file mode 100644 index 00000000..c51704ca --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-029 @@ -0,0 +1,524 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-029 + +Bug-Reported-by: "Michael Kalisz" <michael@kalisz.homelinux.net> +Bug-Reference-ID: <50241.78.69.11.112.1298585641.squirrel@kalisz.homelinux.net> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00274.html + +Bug-Description: + +Bash-4.2 tries to leave completed directory names as the user typed them, +without expanding them to a full pathname. One effect of this is that +shell variables used in pathnames being completed (e.g., $HOME) are left +unchanged, but the `$' is quoted by readline because it is a special +character to the shell. + +This patch introduces two things: + +1. A new shell option, `direxpand', which, if set, attempts to emulate the + bash-4.1 behavior of expanding words to full pathnames during + completion; +2. A set of heuristics that reduce the number of times special characters + such as `$' are quoted when the directory name is not expanded. + +Patch (apply with `patch -p0'): + +diff -NrC 2 ../bash-4.2-patched/bashline.c ./bashline.c +*** ../bash-4.2-patched/bashline.c 2011-01-16 15:32:47.000000000 -0500 +--- ./bashline.c 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 122,125 **** +--- 122,128 ---- + static int bash_push_line __P((void)); + ++ static rl_icppfunc_t *save_directory_hook __P((void)); ++ static void reset_directory_hook __P((rl_icppfunc_t *)); ++ + static void cleanup_expansion_error __P((void)); + static void maybe_make_readline_line __P((char *)); +*************** +*** 244,251 **** +--- 247,261 ---- + int dircomplete_spelling = 0; + ++ /* Expand directory names during word/filename completion. */ ++ int dircomplete_expand = 0; ++ int dircomplete_expand_relpath = 0; ++ + static char *bash_completer_word_break_characters = " \t\n\"'@><=;|&(:"; + static char *bash_nohostname_word_break_characters = " \t\n\"'><=;|&(:"; + /* )) */ + ++ static const char *default_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!:{~"; /*}*/ ++ static char *custom_filename_quote_characters = 0; ++ + static rl_hook_func_t *old_rl_startup_hook = (rl_hook_func_t *)NULL; + +*************** +*** 502,506 **** + /* Tell the completer that we might want to follow symbolic links or + do other expansion on directory names. */ +! rl_directory_rewrite_hook = bash_directory_completion_hook; + + rl_filename_rewrite_hook = bash_filename_rewrite_hook; +--- 512,516 ---- + /* Tell the completer that we might want to follow symbolic links or + do other expansion on directory names. */ +! set_directory_hook (); + + rl_filename_rewrite_hook = bash_filename_rewrite_hook; +*************** +*** 530,534 **** + + /* characters that need to be quoted when appearing in filenames. */ +! rl_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!:{~"; /*}*/ + + rl_filename_quoting_function = bash_quote_filename; +--- 540,544 ---- + + /* characters that need to be quoted when appearing in filenames. */ +! rl_filename_quote_characters = default_filename_quote_characters; + + rl_filename_quoting_function = bash_quote_filename; +*************** +*** 565,570 **** + rl_attempted_completion_function = attempt_shell_completion; + rl_completion_entry_function = NULL; +- rl_directory_rewrite_hook = bash_directory_completion_hook; + rl_ignore_some_completions_function = filename_completion_ignore; + } + +--- 575,582 ---- + rl_attempted_completion_function = attempt_shell_completion; + rl_completion_entry_function = NULL; + rl_ignore_some_completions_function = filename_completion_ignore; ++ rl_filename_quote_characters = default_filename_quote_characters; ++ ++ set_directory_hook (); + } + +*************** +*** 1280,1283 **** +--- 1292,1298 ---- + rl_ignore_some_completions_function = filename_completion_ignore; + ++ rl_filename_quote_characters = default_filename_quote_characters; ++ set_directory_hook (); ++ + /* Determine if this could be a command word. It is if it appears at + the start of the line (ignoring preceding whitespace), or if it +*************** +*** 1592,1595 **** +--- 1607,1616 ---- + else + { ++ if (dircomplete_expand && dot_or_dotdot (filename_hint)) ++ { ++ dircomplete_expand = 0; ++ set_directory_hook (); ++ dircomplete_expand = 1; ++ } + mapping_over = 4; + goto inner; +*************** +*** 1792,1795 **** +--- 1813,1819 ---- + inner: + val = rl_filename_completion_function (filename_hint, istate); ++ if (mapping_over == 4 && dircomplete_expand) ++ set_directory_hook (); ++ + istate = 1; + +*************** +*** 2694,2697 **** +--- 2718,2767 ---- + } + ++ /* Functions to save and restore the appropriate directory hook */ ++ /* This is not static so the shopt code can call it */ ++ void ++ set_directory_hook () ++ { ++ if (dircomplete_expand) ++ { ++ rl_directory_completion_hook = bash_directory_completion_hook; ++ rl_directory_rewrite_hook = (rl_icppfunc_t *)0; ++ } ++ else ++ { ++ rl_directory_rewrite_hook = bash_directory_completion_hook; ++ rl_directory_completion_hook = (rl_icppfunc_t *)0; ++ } ++ } ++ ++ static rl_icppfunc_t * ++ save_directory_hook () ++ { ++ rl_icppfunc_t *ret; ++ ++ if (dircomplete_expand) ++ { ++ ret = rl_directory_completion_hook; ++ rl_directory_completion_hook = (rl_icppfunc_t *)NULL; ++ } ++ else ++ { ++ ret = rl_directory_rewrite_hook; ++ rl_directory_rewrite_hook = (rl_icppfunc_t *)NULL; ++ } ++ ++ return ret; ++ } ++ ++ static void ++ restore_directory_hook (hookf) ++ rl_icppfunc_t *hookf; ++ { ++ if (dircomplete_expand) ++ rl_directory_completion_hook = hookf; ++ else ++ rl_directory_rewrite_hook = hookf; ++ } ++ + /* Handle symbolic link references and other directory name + expansions while hacking completion. This should return 1 if it modifies +*************** +*** 2703,2720 **** + { + char *local_dirname, *new_dirname, *t; +! int return_value, should_expand_dirname; + WORD_LIST *wl; + struct stat sb; + +! return_value = should_expand_dirname = 0; + local_dirname = *dirname; + +! if (mbschr (local_dirname, '$')) +! should_expand_dirname = 1; + else + { + t = mbschr (local_dirname, '`'); + if (t && unclosed_pair (local_dirname, strlen (local_dirname), "`") == 0) +! should_expand_dirname = 1; + } + +--- 2773,2801 ---- + { + char *local_dirname, *new_dirname, *t; +! int return_value, should_expand_dirname, nextch, closer; + WORD_LIST *wl; + struct stat sb; + +! return_value = should_expand_dirname = nextch = closer = 0; + local_dirname = *dirname; + +! if (t = mbschr (local_dirname, '$')) +! { +! should_expand_dirname = '$'; +! nextch = t[1]; +! /* Deliberately does not handle the deprecated $[...] arithmetic +! expansion syntax */ +! if (nextch == '(') +! closer = ')'; +! else if (nextch == '{') +! closer = '}'; +! else +! nextch = 0; +! } + else + { + t = mbschr (local_dirname, '`'); + if (t && unclosed_pair (local_dirname, strlen (local_dirname), "`") == 0) +! should_expand_dirname = '`'; + } + +*************** +*** 2740,2743 **** +--- 2821,2841 ---- + dispose_words (wl); + local_dirname = *dirname; ++ /* XXX - change rl_filename_quote_characters here based on ++ should_expand_dirname/nextch/closer. This is the only place ++ custom_filename_quote_characters is modified. */ ++ if (rl_filename_quote_characters && *rl_filename_quote_characters) ++ { ++ int i, j, c; ++ i = strlen (default_filename_quote_characters); ++ custom_filename_quote_characters = xrealloc (custom_filename_quote_characters, i+1); ++ for (i = j = 0; c = default_filename_quote_characters[i]; i++) ++ { ++ if (c == should_expand_dirname || c == nextch || c == closer) ++ continue; ++ custom_filename_quote_characters[j++] = c; ++ } ++ custom_filename_quote_characters[j] = '\0'; ++ rl_filename_quote_characters = custom_filename_quote_characters; ++ } + } + else +*************** +*** 2759,2762 **** +--- 2857,2871 ---- + } + ++ /* no_symbolic_links == 0 -> use (default) logical view of the file system. ++ local_dirname[0] == '.' && local_dirname[1] == '/' means files in the ++ current directory (./). ++ local_dirname[0] == '.' && local_dirname[1] == 0 means relative pathnames ++ in the current directory (e.g., lib/sh). ++ XXX - should we do spelling correction on these? */ ++ ++ /* This is test as it was in bash-4.2: skip relative pathnames in current ++ directory. Change test to ++ (local_dirname[0] != '.' || (local_dirname[1] && local_dirname[1] != '/')) ++ if we want to skip paths beginning with ./ also. */ + if (no_symbolic_links == 0 && (local_dirname[0] != '.' || local_dirname[1])) + { +*************** +*** 2764,2767 **** +--- 2873,2885 ---- + int len1, len2; + ++ /* If we have a relative path ++ (local_dirname[0] != '/' && local_dirname[0] != '.') ++ that is canonical after appending it to the current directory, then ++ temp1 = temp2+'/' ++ That is, ++ strcmp (temp1, temp2) == 0 ++ after adding a slash to temp2 below. It should be safe to not ++ change those. ++ */ + t = get_working_directory ("symlink-hook"); + temp1 = make_absolute (local_dirname, t); +*************** +*** 2798,2802 **** + } + } +! return_value |= STREQ (local_dirname, temp2) == 0; + free (local_dirname); + *dirname = temp2; +--- 2916,2928 ---- + } + } +! +! /* dircomplete_expand_relpath == 0 means we want to leave relative +! pathnames that are unchanged by canonicalization alone. +! *local_dirname != '/' && *local_dirname != '.' == relative pathname +! (consistent with general.c:absolute_pathname()) +! temp1 == temp2 (after appending a slash to temp2) means the pathname +! is not changed by canonicalization as described above. */ +! if (dircomplete_expand_relpath || ((local_dirname[0] != '/' && local_dirname[0] != '.') && STREQ (temp1, temp2) == 0)) +! return_value |= STREQ (local_dirname, temp2) == 0; + free (local_dirname); + *dirname = temp2; +*************** +*** 3003,3012 **** + orig_func = rl_completion_entry_function; + orig_attempt_func = rl_attempted_completion_function; +- orig_dir_func = rl_directory_rewrite_hook; + orig_ignore_func = rl_ignore_some_completions_function; + orig_rl_completer_word_break_characters = rl_completer_word_break_characters; + rl_completion_entry_function = rl_filename_completion_function; + rl_attempted_completion_function = (rl_completion_func_t *)NULL; +- rl_directory_rewrite_hook = (rl_icppfunc_t *)NULL; + rl_ignore_some_completions_function = filename_completion_ignore; + rl_completer_word_break_characters = " \t\n\"\'"; +--- 3129,3139 ---- + orig_func = rl_completion_entry_function; + orig_attempt_func = rl_attempted_completion_function; + orig_ignore_func = rl_ignore_some_completions_function; + orig_rl_completer_word_break_characters = rl_completer_word_break_characters; ++ ++ orig_dir_func = save_directory_hook (); ++ + rl_completion_entry_function = rl_filename_completion_function; + rl_attempted_completion_function = (rl_completion_func_t *)NULL; + rl_ignore_some_completions_function = filename_completion_ignore; + rl_completer_word_break_characters = " \t\n\"\'"; +*************** +*** 3016,3023 **** + rl_completion_entry_function = orig_func; + rl_attempted_completion_function = orig_attempt_func; +- rl_directory_rewrite_hook = orig_dir_func; + rl_ignore_some_completions_function = orig_ignore_func; + rl_completer_word_break_characters = orig_rl_completer_word_break_characters; + + return r; + } +--- 3143,3151 ---- + rl_completion_entry_function = orig_func; + rl_attempted_completion_function = orig_attempt_func; + rl_ignore_some_completions_function = orig_ignore_func; + rl_completer_word_break_characters = orig_rl_completer_word_break_characters; + ++ restore_directory_hook (orig_dir_func); ++ + return r; + } +diff -NrC 2 ../bash-4.2-patched/bashline.h ./bashline.h +*** ../bash-4.2-patched/bashline.h 2009-01-04 14:32:22.000000000 -0500 +--- ./bashline.h 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 34,41 **** +--- 34,46 ---- + extern int bash_re_edit __P((char *)); + ++ extern void bashline_set_event_hook __P((void)); ++ extern void bashline_reset_event_hook __P((void)); ++ + extern int bind_keyseq_to_unix_command __P((char *)); + + extern char **bash_default_completion __P((const char *, int, int, int, int)); + ++ void set_directory_hook __P((void)); ++ + /* Used by programmable completion code. */ + extern char *command_word_completion_function __P((const char *, int)); +diff -NrC 2 ../bash-4.2-patched/builtins/shopt.def ./builtins/shopt.def +*** ../bash-4.2-patched/builtins/shopt.def 2010-07-02 22:42:44.000000000 -0400 +--- ./builtins/shopt.def 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 62,65 **** +--- 62,69 ---- + #include "bashgetopt.h" + ++ #if defined (READLINE) ++ # include "../bashline.h" ++ #endif ++ + #if defined (HISTORY) + # include "../bashhist.h" +*************** +*** 95,99 **** + extern int no_empty_command_completion; + extern int force_fignore; +! extern int dircomplete_spelling; + + extern int enable_hostname_completion __P((int)); +--- 99,103 ---- + extern int no_empty_command_completion; + extern int force_fignore; +! extern int dircomplete_spelling, dircomplete_expand; + + extern int enable_hostname_completion __P((int)); +*************** +*** 122,125 **** +--- 126,133 ---- + #endif + ++ #if defined (READLINE) ++ static int shopt_set_complete_direxpand __P((char *, int)); ++ #endif ++ + static int shopt_login_shell; + static int shopt_compat31; +*************** +*** 151,154 **** +--- 159,163 ---- + { "compat41", &shopt_compat41, set_compatibility_level }, + #if defined (READLINE) ++ { "direxpand", &dircomplete_expand, shopt_set_complete_direxpand }, + { "dirspell", &dircomplete_spelling, (shopt_set_func_t *)NULL }, + #endif +*************** +*** 536,539 **** +--- 545,559 ---- + } + ++ #if defined (READLINE) ++ static int ++ shopt_set_complete_direxpand (option_name, mode) ++ char *option_name; ++ int mode; ++ { ++ set_directory_hook (); ++ return 0; ++ } ++ #endif ++ + #if defined (RESTRICTED_SHELL) + /* Don't allow the value of restricted_shell to be modified. */ +Binary files ../bash-4.2-patched/doc/._bashref.pdf and ./doc/._bashref.pdf differ +diff -NrC 2 ../bash-4.2-patched/doc/bash.1 ./doc/bash.1 +*** ../bash-4.2-patched/doc/bash.1 2011-01-16 15:31:39.000000000 -0500 +--- ./doc/bash.1 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 8949,8952 **** +--- 8949,8962 ---- + The default bash behavior remains as in previous versions. + .TP 8 ++ .B direxpand ++ If set, ++ .B bash ++ replaces directory names with the results of word expansion when performing ++ filename completion. This changes the contents of the readline editing ++ buffer. ++ If not set, ++ .B bash ++ attempts to preserve what the user typed. ++ .TP 8 + .B dirspell + If set, +diff -NrC 2 ../bash-4.2-patched/doc/bashref.texi ./doc/bashref.texi +*** ../bash-4.2-patched/doc/bashref.texi 2011-01-16 15:31:57.000000000 -0500 +--- ./doc/bashref.texi 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 4536,4539 **** +--- 4536,4546 ---- + The default Bash behavior remains as in previous versions. + ++ @item direxpand ++ If set, Bash ++ replaces directory names with the results of word expansion when performing ++ filename completion. This changes the contents of the readline editing ++ buffer. ++ If not set, Bash attempts to preserve what the user typed. ++ + @item dirspell + If set, Bash +diff -NrC 2 ../bash-4.2-patched/tests/shopt.right ./tests/shopt.right +*** ../bash-4.2-patched/tests/shopt.right 2010-07-02 23:36:30.000000000 -0400 +--- ./tests/shopt.right 2012-05-07 16:27:18.000000000 -0400 +*************** +*** 13,16 **** +--- 13,17 ---- + shopt -u compat40 + shopt -u compat41 ++ shopt -u direxpand + shopt -u dirspell + shopt -u dotglob +*************** +*** 69,72 **** +--- 70,74 ---- + shopt -u compat40 + shopt -u compat41 ++ shopt -u direxpand + shopt -u dirspell + shopt -u dotglob +*************** +*** 102,105 **** +--- 104,108 ---- + compat40 off + compat41 off ++ direxpand off + dirspell off + dotglob off +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 28 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 29 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-030 b/patches/source/bash/bash-4.2-patches/bash42-030 new file mode 100644 index 00000000..261a619b --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-030 @@ -0,0 +1,178 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-030 + +Bug-Reported-by: Roman Rakus <rrakus@redhat.com> +Bug-Reference-ID: <4D7DD91E.7040808@redhat.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00126.html + +Bug-Description: + +When attempting to glob strings in a multibyte locale, and those strings +contain invalid multibyte characters that cause mbsnrtowcs to return 0, +the globbing code loops infinitely. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/glob/xmbsrtowcs.c 2010-05-30 18:36:27.000000000 -0400 +--- lib/glob/xmbsrtowcs.c 2011-03-22 16:06:47.000000000 -0400 +*************** +*** 36,39 **** +--- 36,41 ---- + #if HANDLE_MULTIBYTE + ++ #define WSBUF_INC 32 ++ + #ifndef FREE + # define FREE(x) do { if (x) free (x); } while (0) +*************** +*** 149,153 **** + size_t wcnum; /* Number of wide characters in WSBUF */ + mbstate_t state; /* Conversion State */ +! size_t wcslength; /* Number of wide characters produced by the conversion. */ + const char *end_or_backslash; + size_t nms; /* Number of multibyte characters to convert at one time. */ +--- 151,155 ---- + size_t wcnum; /* Number of wide characters in WSBUF */ + mbstate_t state; /* Conversion State */ +! size_t n, wcslength; /* Number of wide characters produced by the conversion. */ + const char *end_or_backslash; + size_t nms; /* Number of multibyte characters to convert at one time. */ +*************** +*** 172,176 **** + tmp_p = p; + tmp_state = state; +! wcslength = mbsnrtowcs(NULL, &tmp_p, nms, 0, &tmp_state); + + /* Conversion failed. */ +--- 174,189 ---- + tmp_p = p; + tmp_state = state; +! +! if (nms == 0 && *p == '\\') /* special initial case */ +! nms = wcslength = 1; +! else +! wcslength = mbsnrtowcs (NULL, &tmp_p, nms, 0, &tmp_state); +! +! if (wcslength == 0) +! { +! tmp_p = p; /* will need below */ +! tmp_state = state; +! wcslength = 1; /* take a single byte */ +! } + + /* Conversion failed. */ +*************** +*** 187,191 **** + wchar_t *wstmp; + +! wsbuf_size = wcnum+wcslength+1; /* 1 for the L'\0' or the potential L'\\' */ + + wstmp = (wchar_t *) realloc (wsbuf, wsbuf_size * sizeof (wchar_t)); +--- 200,205 ---- + wchar_t *wstmp; + +! while (wsbuf_size < wcnum+wcslength+1) /* 1 for the L'\0' or the potential L'\\' */ +! wsbuf_size += WSBUF_INC; + + wstmp = (wchar_t *) realloc (wsbuf, wsbuf_size * sizeof (wchar_t)); +*************** +*** 200,207 **** + + /* Perform the conversion. This is assumed to return 'wcslength'. +! * It may set 'p' to NULL. */ +! mbsnrtowcs(wsbuf+wcnum, &p, nms, wsbuf_size-wcnum, &state); + +! wcnum += wcslength; + + if (mbsinit (&state) && (p != NULL) && (*p == '\\')) +--- 214,229 ---- + + /* Perform the conversion. This is assumed to return 'wcslength'. +! It may set 'p' to NULL. */ +! n = mbsnrtowcs(wsbuf+wcnum, &p, nms, wsbuf_size-wcnum, &state); + +! /* Compensate for taking single byte on wcs conversion failure above. */ +! if (wcslength == 1 && (n == 0 || n == (size_t)-1)) +! { +! state = tmp_state; +! p = tmp_p; +! wsbuf[wcnum++] = *p++; +! } +! else +! wcnum += wcslength; + + if (mbsinit (&state) && (p != NULL) && (*p == '\\')) +*************** +*** 231,236 **** + of DESTP and INDICESP are NULL. */ + +- #define WSBUF_INC 32 +- + size_t + xdupmbstowcs (destp, indicesp, src) +--- 253,256 ---- +*** ../bash-4.2-patched/lib/glob/glob.c 2009-11-14 18:39:30.000000000 -0500 +--- lib/glob/glob.c 2012-07-07 12:09:56.000000000 -0400 +*************** +*** 201,206 **** + size_t pat_n, dn_n; + + pat_n = xdupmbstowcs (&pat_wc, NULL, pat); +! dn_n = xdupmbstowcs (&dn_wc, NULL, dname); + + ret = 0; +--- 201,209 ---- + size_t pat_n, dn_n; + ++ pat_wc = dn_wc = (wchar_t *)NULL; ++ + pat_n = xdupmbstowcs (&pat_wc, NULL, pat); +! if (pat_n != (size_t)-1) +! dn_n = xdupmbstowcs (&dn_wc, NULL, dname); + + ret = 0; +*************** +*** 222,225 **** +--- 225,230 ---- + ret = 1; + } ++ else ++ ret = skipname (pat, dname, flags); + + FREE (pat_wc); +*************** +*** 267,272 **** + n = xdupmbstowcs (&wpathname, NULL, pathname); + if (n == (size_t) -1) +! /* Something wrong. */ +! return; + orig_wpathname = wpathname; + +--- 272,280 ---- + n = xdupmbstowcs (&wpathname, NULL, pathname); + if (n == (size_t) -1) +! { +! /* Something wrong. Fall back to single-byte */ +! udequote_pathname (pathname); +! return; +! } + orig_wpathname = wpathname; + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 29 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 30 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-031 b/patches/source/bash/bash-4.2-patches/bash42-031 new file mode 100644 index 00000000..419d4478 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-031 @@ -0,0 +1,80 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-031 + +Bug-Reported-by: Max Horn <max@quendi.de> +Bug-Reference-ID: <20CC5C60-07C3-4E41-9817-741E48D407C5@quendi.de> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2012-06/msg00005.html + +Bug-Description: + +A change between bash-4.1 and bash-4.2 to prevent the readline input hook +from being called too frequently had the side effect of causing delays +when reading pasted input on systems such as Mac OS X. This patch fixes +those delays while retaining the bash-4.2 behavior. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/readline/input.c 2010-05-30 18:33:01.000000000 -0400 +--- lib/readline/input.c 2012-06-25 21:08:42.000000000 -0400 +*************** +*** 410,414 **** + rl_read_key () + { +! int c; + + rl_key_sequence_length++; +--- 412,416 ---- + rl_read_key () + { +! int c, r; + + rl_key_sequence_length++; +*************** +*** 430,441 **** + while (rl_event_hook) + { +! if (rl_gather_tyi () < 0) /* XXX - EIO */ + { + rl_done = 1; + return ('\n'); + } + RL_CHECK_SIGNALS (); +- if (rl_get_char (&c) != 0) +- break; + if (rl_done) /* XXX - experimental */ + return ('\n'); +--- 432,447 ---- + while (rl_event_hook) + { +! if (rl_get_char (&c) != 0) +! break; +! +! if ((r = rl_gather_tyi ()) < 0) /* XXX - EIO */ + { + rl_done = 1; + return ('\n'); + } ++ else if (r == 1) /* read something */ ++ continue; ++ + RL_CHECK_SIGNALS (); + if (rl_done) /* XXX - experimental */ + return ('\n'); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 30 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 31 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-032 b/patches/source/bash/bash-4.2-patches/bash42-032 new file mode 100644 index 00000000..d4f25ca0 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-032 @@ -0,0 +1,75 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-032 + +Bug-Reported-by: Ruediger Kuhlmann <RKuhlmann@orga-systems.com> +Bug-Reference-ID: <OFDE975207.0C3622E5-ONC12579F3.00361A06-C12579F3.00365E39@orga-systems.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-05/msg00010.html + +Bug-Description: + +Bash-4.2 has problems with DEL characters in the expanded value of variables +used in the same quoted string as variables that expand to nothing. + +Patch (apply with `patch -p0'): + +*** ../bash-20120427/subst.c 2012-04-22 16:19:10.000000000 -0400 +--- subst.c 2012-05-07 16:06:35.000000000 -0400 +*************** +*** 8152,8155 **** +--- 8152,8163 ---- + dispose_word_desc (tword); + ++ /* Kill quoted nulls; we will add them back at the end of ++ expand_word_internal if nothing else in the string */ ++ if (had_quoted_null && temp && QUOTED_NULL (temp)) ++ { ++ FREE (temp); ++ temp = (char *)NULL; ++ } ++ + goto add_string; + break; +*************** +*** 8556,8560 **** + if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) + tword->flags |= W_QUOTED; +! if (had_quoted_null) + tword->flags |= W_HASQUOTEDNULL; + list = make_word_list (tword, (WORD_LIST *)NULL); +--- 8564,8568 ---- + if (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) + tword->flags |= W_QUOTED; +! if (had_quoted_null && QUOTED_NULL (istring)) + tword->flags |= W_HASQUOTEDNULL; + list = make_word_list (tword, (WORD_LIST *)NULL); +*************** +*** 8587,8591 **** + if (word->flags & W_NOEXPAND) + tword->flags |= W_NOEXPAND; +! if (had_quoted_null) + tword->flags |= W_HASQUOTEDNULL; /* XXX */ + list = make_word_list (tword, (WORD_LIST *)NULL); +--- 8595,8599 ---- + if (word->flags & W_NOEXPAND) + tword->flags |= W_NOEXPAND; +! if (had_quoted_null && QUOTED_NULL (istring)) + tword->flags |= W_HASQUOTEDNULL; /* XXX */ + list = make_word_list (tword, (WORD_LIST *)NULL); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 31 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 32 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-033 b/patches/source/bash/bash-4.2-patches/bash42-033 new file mode 100644 index 00000000..e58d7286 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-033 @@ -0,0 +1,57 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-033 + +Bug-Reported-by: David Leverton <levertond@googlemail.com> +Bug-Reference-ID: <4FCCE737.1060603@googlemail.com> +Bug-Reference-URL: + +Bug-Description: + +Bash uses a static buffer when expanding the /dev/fd prefix for the test +and conditional commands, among other uses, when it should use a dynamic +buffer to avoid buffer overflow. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/sh/eaccess.c 2011-01-08 20:50:10.000000000 -0500 +--- lib/sh/eaccess.c 2012-06-04 21:06:43.000000000 -0400 +*************** +*** 83,86 **** +--- 83,88 ---- + struct stat *finfo; + { ++ static char *pbuf = 0; ++ + if (*path == '\0') + { +*************** +*** 107,111 **** + On most systems, with the notable exception of linux, this is + effectively a no-op. */ +! char pbuf[32]; + strcpy (pbuf, DEV_FD_PREFIX); + strcat (pbuf, path + 8); +--- 109,113 ---- + On most systems, with the notable exception of linux, this is + effectively a no-op. */ +! pbuf = xrealloc (pbuf, sizeof (DEV_FD_PREFIX) + strlen (path + 8)); + strcpy (pbuf, DEV_FD_PREFIX); + strcat (pbuf, path + 8); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 32 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 33 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-034 b/patches/source/bash/bash-4.2-patches/bash42-034 new file mode 100644 index 00000000..e4f05e10 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-034 @@ -0,0 +1,46 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-034 + +Bug-Reported-by: "Davide Brini" <dave_br@gmx.com> +Bug-Reference-ID: <20120604164154.69781EC04B@imaps.oficinas.atrapalo.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-06/msg00030.html + +Bug-Description: + +In bash-4.2, the history code would inappropriately add a semicolon to +multi-line compound array assignments when adding them to the history. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/parse.y 2011-11-21 18:03:36.000000000 -0500 +--- parse.y 2012-06-07 12:48:47.000000000 -0400 +*************** +*** 4900,4905 **** +--- 4916,4924 ---- + return (current_command_line_count == 2 ? "\n" : ""); + } + ++ if (parser_state & PST_COMPASSIGN) ++ return (" "); ++ + /* First, handle some special cases. */ + /*(*/ + /* If we just read `()', assume it's a function definition, and don't +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 33 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 34 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-035 b/patches/source/bash/bash-4.2-patches/bash42-035 new file mode 100644 index 00000000..6f0be6f9 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-035 @@ -0,0 +1,66 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-035 + +Bug-Reported-by: Dan Douglas <ormaaj@gmail.com> +Bug-Reference-ID: <2766482.Ksm3GrSoYi@smorgbox> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-06/msg00071.html + +Bug-Description: + +When given a number of lines to read, `mapfile -n lines' reads one too many. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/mapfile.def 2010-05-29 22:09:47.000000000 -0400 +--- builtins/mapfile.def 2012-06-20 09:48:33.000000000 -0400 +*************** +*** 196,206 **** + interrupt_immediately++; + for (array_index = origin, line_count = 1; +! zgetline (fd, &line, &line_length, unbuffered_read) != -1; +! array_index++, line_count++) + { +- /* Have we exceeded # of lines to store? */ +- if (line_count_goal != 0 && line_count > line_count_goal) +- break; +- + /* Remove trailing newlines? */ + if (flags & MAPF_CHOP) +--- 196,202 ---- + interrupt_immediately++; + for (array_index = origin, line_count = 1; +! zgetline (fd, &line, &line_length, unbuffered_read) != -1; +! array_index++) + { + /* Remove trailing newlines? */ + if (flags & MAPF_CHOP) +*************** +*** 218,221 **** +--- 214,222 ---- + + bind_array_element (entry, array_index, line, 0); ++ ++ /* Have we exceeded # of lines to store? */ ++ line_count++; ++ if (line_count_goal != 0 && line_count > line_count_goal) ++ break; + } + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 34 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 35 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-036 b/patches/source/bash/bash-4.2-patches/bash42-036 new file mode 100644 index 00000000..73fac408 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-036 @@ -0,0 +1,92 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-036 + +Bug-Reported-by: gregrwm <backuppc-users@whitleymott.net> +Bug-Reference-ID: <CAD+dB9B4JG+qUwZBQUwiQmVt0j6NDn=DDTxr9R+nkA8DL4KLJA@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-05/msg00108.html + +Bug-Description: + +Bash-4.2 produces incorrect word splitting results when expanding +double-quoted $@ in the same string as and adjacent to other variable +expansions. The $@ should be split, the other expansions should not. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2012-05-02 12:02:33.000000000 -0400 +--- subst.c 2012-07-08 21:19:32.000000000 -0400 +*************** +*** 7923,7927 **** + /* State flags */ + int had_quoted_null; +! int has_dollar_at; + int tflag; + int pflags; /* flags passed to param_expand */ +--- 7923,7927 ---- + /* State flags */ + int had_quoted_null; +! int has_dollar_at, temp_has_dollar_at; + int tflag; + int pflags; /* flags passed to param_expand */ +*************** +*** 8128,8138 **** + *expanded_something = 1; + +! has_dollar_at = 0; + pflags = (word->flags & W_NOCOMSUB) ? PF_NOCOMSUB : 0; + if (word->flags & W_NOSPLIT2) + pflags |= PF_NOSPLIT2; + tword = param_expand (string, &sindex, quoted, expanded_something, +! &has_dollar_at, "ed_dollar_at, + &had_quoted_null, pflags); + + if (tword == &expand_wdesc_error || tword == &expand_wdesc_fatal) +--- 8128,8139 ---- + *expanded_something = 1; + +! temp_has_dollar_at = 0; + pflags = (word->flags & W_NOCOMSUB) ? PF_NOCOMSUB : 0; + if (word->flags & W_NOSPLIT2) + pflags |= PF_NOSPLIT2; + tword = param_expand (string, &sindex, quoted, expanded_something, +! &temp_has_dollar_at, "ed_dollar_at, + &had_quoted_null, pflags); ++ has_dollar_at += temp_has_dollar_at; + + if (tword == &expand_wdesc_error || tword == &expand_wdesc_fatal) +*************** +*** 8275,8281 **** + temp = (char *)NULL; + +! has_dollar_at = 0; + /* Need to get W_HASQUOTEDNULL flag through this function. */ +! list = expand_word_internal (tword, Q_DOUBLE_QUOTES, 0, &has_dollar_at, (int *)NULL); + + if (list == &expand_word_error || list == &expand_word_fatal) +--- 8276,8283 ---- + temp = (char *)NULL; + +! temp_has_dollar_at = 0; /* XXX */ + /* Need to get W_HASQUOTEDNULL flag through this function. */ +! list = expand_word_internal (tword, Q_DOUBLE_QUOTES, 0, &temp_has_dollar_at, (int *)NULL); +! has_dollar_at += temp_has_dollar_at; + + if (list == &expand_word_error || list == &expand_word_fatal) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 35 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 36 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-037 b/patches/source/bash/bash-4.2-patches/bash42-037 new file mode 100644 index 00000000..a12b8a7e --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-037 @@ -0,0 +1,112 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-037 + +Bug-Reported-by: Jakub Filak +Bug-Reference-ID: +Bug-Reference-URL: https://bugzilla.redhat.com/show_bug.cgi?id=813289 + +Bug-Description: + +Attempting to redo (using `.') the vi editing mode `cc', `dd', or `yy' +commands leads to an infinite loop. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/readline/vi_mode.c 2011-02-25 11:17:02.000000000 -0500 +--- lib/readline/vi_mode.c 2012-06-02 12:24:47.000000000 -0400 +*************** +*** 1235,1243 **** + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing) + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +--- 1297,1313 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing && _rl_vi_last_motion != 'd') /* `dd' is special */ + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing) /* handle redoing `dd' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*************** +*** 1317,1325 **** + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing) + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +--- 1387,1403 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing && _rl_vi_last_motion != 'c') /* `cc' is special */ + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing) /* handle redoing `cc' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*************** +*** 1378,1381 **** +--- 1456,1472 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing && _rl_vi_last_motion != 'y') /* `yy' is special */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ r = rl_domove_motion_callback (_rl_vimvcxt); ++ } ++ else if (vi_redoing) /* handle redoing `yy' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 36 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 37 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-038 b/patches/source/bash/bash-4.2-patches/bash42-038 new file mode 100644 index 00000000..411e4dd5 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-038 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-038 + +Bug-Reported-by: armandsl@gmail.com +Bug-Reference-ID: <20120822112810.8D14920040@windmill.latviatours.lv> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-08/msg00049.html + +Bug-Description: + +If a backslash-newline (which is removed) with no other input is given as +input to `read', the shell tries to dereference a null pointer and seg faults. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/read.def 2012-03-11 17:52:44.000000000 -0400 +--- builtins/read.def 2012-08-22 11:53:09.000000000 -0400 +*************** +*** 792,796 **** + #endif + +! if (saw_escape) + { + t = dequote_string (input_string); +--- 847,851 ---- + #endif + +! if (saw_escape && input_string && *input_string) + { + t = dequote_string (input_string); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 37 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 38 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-039 b/patches/source/bash/bash-4.2-patches/bash42-039 new file mode 100644 index 00000000..21457af1 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-039 @@ -0,0 +1,58 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-039 + +Bug-Reported-by: Dan Douglas <ormaaj@gmail.com> +Bug-Reference-ID: <1498458.MpVlmOXDB7@smorgbox> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-09/msg00008.html + +Bug-Description: + +Under certain circumstances, bash attempts to expand variables in arithmetic +expressions even when evaluation is being suppressed. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/expr.c 2011-11-21 18:03:35.000000000 -0500 +--- expr.c 2012-09-09 16:31:18.000000000 -0400 +*************** +*** 1010,1013 **** +--- 1073,1082 ---- + #endif + ++ /*itrace("expr_streval: %s: noeval = %d", tok, noeval);*/ ++ /* If we are suppressing evaluation, just short-circuit here instead of ++ going through the rest of the evaluator. */ ++ if (noeval) ++ return (0); ++ + /* [[[[[ */ + #if defined (ARRAY_VARS) +*************** +*** 1183,1186 **** +--- 1256,1263 ---- + + *cp = '\0'; ++ /* XXX - watch out for pointer aliasing issues here */ ++ if (curlval.tokstr && curlval.tokstr == tokstr) ++ init_lvalue (&curlval); ++ + FREE (tokstr); + tokstr = savestring (tp); +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 38 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 39 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-040 b/patches/source/bash/bash-4.2-patches/bash42-040 new file mode 100644 index 00000000..1de0fe37 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-040 @@ -0,0 +1,56 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-040 + +Bug-Reported-by: Andrey Zaitsev <jstcdr@gmail.com> +Bug-Reference-ID: <CAEZVQT5PJ1Mb_Zh8LT5qz8sv+-9Q6hGfQ5DU9ZxdJ+gV7xBUaQ@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-04/msg00144.html + +Bug-Description: + +Output redirection applied to builtin commands missed I/O errors if +they happened when the file descriptor was closed, rather than on write +(e.g., like with an out-of-space error on a remote NFS file system). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/redir.c 2011-01-02 16:00:31.000000000 -0500 +--- redir.c 2012-04-24 20:42:12.000000000 -0400 +*************** +*** 1092,1099 **** + #if defined (BUFFERED_INPUT) + check_bash_input (redirector); +! close_buffered_fd (redirector); + #else /* !BUFFERED_INPUT */ +! close (redirector); + #endif /* !BUFFERED_INPUT */ + } + break; +--- 1092,1101 ---- + #if defined (BUFFERED_INPUT) + check_bash_input (redirector); +! r = close_buffered_fd (redirector); + #else /* !BUFFERED_INPUT */ +! r = close (redirector); + #endif /* !BUFFERED_INPUT */ ++ if (r < 0 && (flags & RX_INTERNAL) && (errno == EIO || errno == ENOSPC)) ++ REDIRECTION_ERROR (r, errno, -1); + } + break; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 39 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 40 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-041 b/patches/source/bash/bash-4.2-patches/bash42-041 new file mode 100644 index 00000000..37d4ac70 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-041 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-041 + +Bug-Reported-by: Andrey Borzenkov <arvidjaar@gmail.com> +Bug-Reference-ID: <20121202205200.2134478e@opensuse.site> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-12/msg00008.html + +Bug-Description: + +Process substitution incorrectly inherited a flag that inhibited using the +(local) temporary environment for variable lookups if it was providing +the filename to a redirection. The intent the flag is to enforce the +Posix command expansion ordering rules. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2012-07-14 15:53:20.000000000 -0400 +--- subst.c 2012-12-02 22:26:54.000000000 -0500 +*************** +*** 5125,5128 **** +--- 5129,5136 ---- + #endif /* HAVE_DEV_FD */ + ++ /* subshells shouldn't have this flag, which controls using the temporary ++ environment for variable lookups. */ ++ expanding_redir = 0; ++ + result = parse_and_execute (string, "process substitution", (SEVAL_NONINT|SEVAL_NOHIST)); + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 40 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 41 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-042 b/patches/source/bash/bash-4.2-patches/bash42-042 new file mode 100644 index 00000000..1ce0cae3 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-042 @@ -0,0 +1,57 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-042 + +Bug-Reported-by: Adam Pippin <adam@gp-inc.ca> +Bug-Reference-ID: <CAPYbNHr6ucZFOoWsRdUJj6KP3Ju0j1bkESa_cmb7iU+kZwdVpg@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-11/msg00087.html + +Bug-Description: + +Compilation failed after specifying the `--enable-minimal-config' option to +configure (more specifically, specifying `--disable-alias'). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/parse.y 2012-07-08 21:53:33.000000000 -0400 +--- parse.y 2012-10-14 20:20:34.000000000 -0400 +*************** +*** 2394,2397 **** +--- 2392,2396 ---- + to consume the quoted newline and move to the next character in + the expansion. */ ++ #if defined (ALIAS) + if (expanding_alias () && shell_input_line[shell_input_line_index+1] == '\0') + { +*************** +*** 2404,2408 **** + goto next_alias_char; /* and get next character */ + } +! else + goto restart_read; + } +--- 2403,2408 ---- + goto next_alias_char; /* and get next character */ + } +! else +! #endif + goto restart_read; + } + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 41 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 42 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-043 b/patches/source/bash/bash-4.2-patches/bash42-043 new file mode 100644 index 00000000..b25a5ee3 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-043 @@ -0,0 +1,65 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-043 + +Bug-Reported-by: konsolebox <konsolebox@gmail.com> +Bug-Reference-ID: <CAJnmqwZuGKLgMsMwxRK4LL+2NN+HgvmKzrnode99QBGrcgX1Lw@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2013-01/msg00138.html + +Bug-Description: + +When SIGCHLD is trapped, and a SIGCHLD trap handler runs when a pending +`read -t' invocation times out and generates SIGALRM, bash can crash with +a segmentation fault. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/builtins/read.def 2012-10-31 21:22:51.000517000 -0400 +--- builtins/read.def 2013-01-25 10:28:16.000038000 -0500 +*************** +*** 386,393 **** + /* Tricky. The top of the unwind-protect stack is the free of + input_string. We want to run all the rest and use input_string, +! so we have to remove it from the stack. */ +! remove_unwind_protect (); +! run_unwind_frame ("read_builtin"); + input_string[i] = '\0'; /* make sure it's terminated */ + retval = 128+SIGALRM; + goto assign_vars; +--- 386,403 ---- + /* Tricky. The top of the unwind-protect stack is the free of + input_string. We want to run all the rest and use input_string, +! so we have to save input_string temporarily, run the unwind- +! protects, then restore input_string so we can use it later. */ +! + input_string[i] = '\0'; /* make sure it's terminated */ ++ if (i == 0) ++ { ++ t = (char *)xmalloc (1); ++ t[0] = 0; ++ } ++ else ++ t = savestring (input_string); ++ ++ run_unwind_frame ("read_builtin"); ++ input_string = t; + retval = 128+SIGALRM; + goto assign_vars; + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 42 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 43 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-044 b/patches/source/bash/bash-4.2-patches/bash42-044 new file mode 100644 index 00000000..e5bf2832 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-044 @@ -0,0 +1,70 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-044 + +Bug-Reported-by: "Dashing" <dashing@hushmail.com> +Bug-Reference-ID: <20130211175049.D90786F446@smtp.hushmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2013-02/msg00030.html + +Bug-Description: + +When converting a multibyte string to a wide character string as part of +pattern matching, bash does not handle the end of the string correctly, +causing the search for the NUL to go beyond the end of the string and +reference random memory. Depending on the contents of that memory, bash +can produce errors or crash. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/lib/glob/xmbsrtowcs.c 2012-07-08 21:53:19.000000000 -0400 +--- lib/glob/xmbsrtowcs.c 2013-02-12 12:00:39.000000000 -0500 +*************** +*** 217,220 **** +--- 217,226 ---- + n = mbsnrtowcs(wsbuf+wcnum, &p, nms, wsbuf_size-wcnum, &state); + ++ if (n == 0 && p == 0) ++ { ++ wsbuf[wcnum] = L'\0'; ++ break; ++ } ++ + /* Compensate for taking single byte on wcs conversion failure above. */ + if (wcslength == 1 && (n == 0 || n == (size_t)-1)) +*************** +*** 222,226 **** + state = tmp_state; + p = tmp_p; +! wsbuf[wcnum++] = *p++; + } + else +--- 228,238 ---- + state = tmp_state; + p = tmp_p; +! wsbuf[wcnum] = *p; +! if (*p == 0) +! break; +! else +! { +! wcnum++; p++; +! } + } + else + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 43 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 44 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-045 b/patches/source/bash/bash-4.2-patches/bash42-045 new file mode 100644 index 00000000..e0f8559e --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-045 @@ -0,0 +1,53 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-045 + +Bug-Reported-by: Stephane Chazelas <stephane.chazelas@gmail.com> +Bug-Reference-ID: <20130218195539.GA9620@chaz.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2013-02/msg00080.html + +Bug-Description: + +The <&n- and >&n- redirections, which move one file descriptor to another, +leave the file descriptor closed when applied to builtins or compound +commands. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/redir.c 2013-01-30 11:56:09.000000000 -0500 +--- redir.c 2013-02-19 09:38:36.000000000 -0500 +*************** +*** 1008,1011 **** +--- 1008,1021 ---- + REDIRECTION_ERROR (r, errno, -1); + } ++ if ((flags & RX_UNDOABLE) && (ri == r_move_input || ri == r_move_output)) ++ { ++ /* r_move_input and r_move_output add an additional close() ++ that needs to be undone */ ++ if (fcntl (redirector, F_GETFD, 0) != -1) ++ { ++ r = add_undo_redirect (redir_fd, r_close_this, -1); ++ REDIRECTION_ERROR (r, errno, -1); ++ } ++ } + #if defined (BUFFERED_INPUT) + check_bash_input (redirector); + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 44 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 45 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-046 b/patches/source/bash/bash-4.2-patches/bash42-046 new file mode 100644 index 00000000..03a489e9 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-046 @@ -0,0 +1,55 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-046 + +Bug-Reported-by: "Theodoros V. Kalamatianos" <thkala@gmail.com> +Bug-Reference-ID: <20140112011131.GE17667@infinity.metashade.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-01/msg00044.html + +Bug-Description: + +Bash-4.2 patch 32 introduced a problem with "$@" and arrays expanding empty +positional parameters or array elements when using substring expansion, +pattern substitution, or case modfication. The empty parameters or array +elements are removed instead of expanding to empty strings (""). + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/subst.c 2012-12-31 11:52:56.000000000 -0500 +--- subst.c 2014-03-31 14:19:56.000000000 -0400 +*************** +*** 7243,7247 **** + ret = alloc_word_desc (); + ret->word = temp1; +! if (temp1 && QUOTED_NULL (temp1) && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))) + ret->flags |= W_QUOTED|W_HASQUOTEDNULL; + return ret; +--- 7243,7253 ---- + ret = alloc_word_desc (); + ret->word = temp1; +! /* We test quoted_dollar_atp because we want variants with double-quoted +! "$@" to take a different code path. In fact, we make sure at the end +! of expand_word_internal that we're only looking at these flags if +! quoted_dollar_at == 0. */ +! if (temp1 && +! (quoted_dollar_atp == 0 || *quoted_dollar_atp == 0) && +! QUOTED_NULL (temp1) && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))) + ret->flags |= W_QUOTED|W_HASQUOTEDNULL; + return ret; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 45 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 46 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-047 b/patches/source/bash/bash-4.2-patches/bash42-047 new file mode 100644 index 00000000..65aff1c1 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-047 @@ -0,0 +1,49 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-047 + +Bug-Reported-by: Matthew Riley <mattdr@google.com> +Bug-Reference-ID: <CA+NEdkwP3gw+gbcF5+xnR1pvcuzb1mDVzvmuJOpHRGHA9T7VFg@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2013-03/msg00047.html + +Bug-Description: + +The function that shortens pathnames for $PS1 according to the value of +$PROMPT_DIRTRIM uses memcpy on potentially-overlapping regions of memory, +when it should use memmove. The result is garbled pathnames in prompt +strings. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2-patched/general.c 2010-12-12 15:06:27.000000000 -0500 +--- general.c 2014-01-30 16:46:15.000000000 -0500 +*************** +*** 767,771 **** + + nlen = nend - ntail; +! memcpy (nbeg, ntail, nlen); + nbeg[nlen] = '\0'; + +--- 767,771 ---- + + nlen = nend - ntail; +! memmove (nbeg, ntail, nlen); + nbeg[nlen] = '\0'; + +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 46 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 47 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-048 b/patches/source/bash/bash-4.2-patches/bash42-048 new file mode 100644 index 00000000..d6097fbb --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-048 @@ -0,0 +1,104 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-048 + +Bug-Reported-by: Stephane Chazelas <stephane.chazelas@gmail.com> +Bug-Reference-ID: +Bug-Reference-URL: + +Bug-Description: + +Under certain circumstances, bash will execute user code while processing the +environment for exported function definitions. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2.47/builtins/common.h 2010-05-30 18:31:51.000000000 -0400 +--- builtins/common.h 2014-09-16 19:35:45.000000000 -0400 +*************** +*** 36,39 **** +--- 36,41 ---- + + /* Flags for describe_command, shared between type.def and command.def */ ++ #define SEVAL_FUNCDEF 0x080 /* only allow function definitions */ ++ #define SEVAL_ONECMD 0x100 /* only allow a single command */ + #define CDESC_ALL 0x001 /* type -a */ + #define CDESC_SHORTDESC 0x002 /* command -V */ +*** ../bash-4.2.47/builtins/evalstring.c 2010-11-23 08:22:15.000000000 -0500 +--- builtins/evalstring.c 2014-09-16 19:35:45.000000000 -0400 +*************** +*** 262,265 **** +--- 262,273 ---- + struct fd_bitmap *bitmap; + ++ if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def) ++ { ++ internal_warning ("%s: ignoring function definition attempt", from_file); ++ should_jump_to_top_level = 0; ++ last_result = last_command_exit_value = EX_BADUSAGE; ++ break; ++ } ++ + bitmap = new_fd_bitmap (FD_BITMAP_SIZE); + begin_unwind_frame ("pe_dispose"); +*************** +*** 322,325 **** +--- 330,336 ---- + dispose_fd_bitmap (bitmap); + discard_unwind_frame ("pe_dispose"); ++ ++ if (flags & SEVAL_ONECMD) ++ break; + } + } +*** ../bash-4.2.47/variables.c 2011-03-01 16:15:20.000000000 -0500 +--- variables.c 2014-09-16 19:35:45.000000000 -0400 +*************** +*** 348,357 **** + strcpy (temp_string + char_index + 1, string); + +! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST); +! +! /* Ancient backwards compatibility. Old versions of bash exported +! functions like name()=() {...} */ +! if (name[char_index - 1] == ')' && name[char_index - 2] == '(') +! name[char_index - 2] = '\0'; + + if (temp_var = find_function (name)) +--- 348,355 ---- + strcpy (temp_string + char_index + 1, string); + +! /* Don't import function names that are invalid identifiers from the +! environment. */ +! if (legal_identifier (name)) +! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD); + + if (temp_var = find_function (name)) +*************** +*** 362,369 **** + else + report_error (_("error importing function definition for `%s'"), name); +- +- /* ( */ +- if (name[char_index - 1] == ')' && name[char_index - 2] == '\0') +- name[char_index - 2] = '('; /* ) */ + } + #if defined (ARRAY_VARS) +--- 360,363 ---- +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 47 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 48 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-049 b/patches/source/bash/bash-4.2-patches/bash42-049 new file mode 100644 index 00000000..bf3abcef --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-049 @@ -0,0 +1,43 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-049 + +Bug-Reported-by: Tavis Ormandy <taviso@cmpxchg8b.com> +Bug-Reference-ID: +Bug-Reference-URL: http://twitter.com/taviso/statuses/514887394294652929 + +Bug-Description: + +Under certain circumstances, bash can incorrectly save a lookahead character and +return it on a subsequent call, even when reading a new line. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2.48/parse.y 2012-12-31 11:52:57.000000000 -0500 +--- parse.y 2014-09-25 16:12:19.000000000 -0400 +*************** +*** 2851,2854 **** +--- 2851,2856 ---- + word_desc_to_read = (WORD_DESC *)NULL; + ++ eol_ungetc_lookahead = 0; ++ + current_token = '\n'; /* XXX */ + last_read_token = '\n'; +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 48 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 49 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-050 b/patches/source/bash/bash-4.2-patches/bash42-050 new file mode 100644 index 00000000..76b37e52 --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-050 @@ -0,0 +1,217 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-050 + +Bug-Reported-by: Florian Weimer <fweimer@redhat.com> +Bug-Reference-ID: +Bug-Reference-URL: + +Bug-Description: + +This patch changes the encoding bash uses for exported functions to avoid +clashes with shell variables and to avoid depending only on an environment +variable's contents to determine whether or not to interpret it as a shell +function. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2.49/variables.c 2014-09-16 19:35:45.000000000 -0400 +--- variables.c 2014-09-27 20:54:00.000000000 -0400 +*************** +*** 80,83 **** +--- 80,88 ---- + #define ifsname(s) ((s)[0] == 'I' && (s)[1] == 'F' && (s)[2] == 'S' && (s)[3] == '\0') + ++ #define BASHFUNC_PREFIX "BASH_FUNC_" ++ #define BASHFUNC_PREFLEN 10 /* == strlen(BASHFUNC_PREFIX */ ++ #define BASHFUNC_SUFFIX "%%" ++ #define BASHFUNC_SUFFLEN 2 /* == strlen(BASHFUNC_SUFFIX) */ ++ + extern char **environ; + +*************** +*** 269,273 **** + static void dispose_temporary_env __P((sh_free_func_t *)); + +! static inline char *mk_env_string __P((const char *, const char *)); + static char **make_env_array_from_var_list __P((SHELL_VAR **)); + static char **make_var_export_array __P((VAR_CONTEXT *)); +--- 274,278 ---- + static void dispose_temporary_env __P((sh_free_func_t *)); + +! static inline char *mk_env_string __P((const char *, const char *, int)); + static char **make_env_array_from_var_list __P((SHELL_VAR **)); + static char **make_var_export_array __P((VAR_CONTEXT *)); +*************** +*** 339,357 **** + /* If exported function, define it now. Don't import functions from + the environment in privileged mode. */ +! if (privmode == 0 && read_but_dont_execute == 0 && STREQN ("() {", string, 4)) + { + string_length = strlen (string); +! temp_string = (char *)xmalloc (3 + string_length + char_index); + +! strcpy (temp_string, name); +! temp_string[char_index] = ' '; +! strcpy (temp_string + char_index + 1, string); + + /* Don't import function names that are invalid identifiers from the + environment. */ +! if (legal_identifier (name)) +! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD); + +! if (temp_var = find_function (name)) + { + VSETATTR (temp_var, (att_exported|att_imported)); +--- 344,373 ---- + /* If exported function, define it now. Don't import functions from + the environment in privileged mode. */ +! if (privmode == 0 && read_but_dont_execute == 0 && +! STREQN (BASHFUNC_PREFIX, name, BASHFUNC_PREFLEN) && +! STREQ (BASHFUNC_SUFFIX, name + char_index - BASHFUNC_SUFFLEN) && +! STREQN ("() {", string, 4)) + { ++ size_t namelen; ++ char *tname; /* desired imported function name */ ++ ++ namelen = char_index - BASHFUNC_PREFLEN - BASHFUNC_SUFFLEN; ++ ++ tname = name + BASHFUNC_PREFLEN; /* start of func name */ ++ tname[namelen] = '\0'; /* now tname == func name */ ++ + string_length = strlen (string); +! temp_string = (char *)xmalloc (namelen + string_length + 2); + +! memcpy (temp_string, tname, namelen); +! temp_string[namelen] = ' '; +! memcpy (temp_string + namelen + 1, string, string_length + 1); + + /* Don't import function names that are invalid identifiers from the + environment. */ +! if (absolute_program (tname) == 0 && (posixly_correct == 0 || legal_identifier (tname))) +! parse_and_execute (temp_string, tname, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD); + +! if (temp_var = find_function (tname)) + { + VSETATTR (temp_var, (att_exported|att_imported)); +*************** +*** 359,363 **** + } + else +! report_error (_("error importing function definition for `%s'"), name); + } + #if defined (ARRAY_VARS) +--- 375,382 ---- + } + else +! report_error (_("error importing function definition for `%s'"), tname); +! +! /* Restore original suffix */ +! tname[namelen] = BASHFUNC_SUFFIX[0]; + } + #if defined (ARRAY_VARS) +*************** +*** 2538,2542 **** + + INVALIDATE_EXPORTSTR (var); +! var->exportstr = mk_env_string (name, value); + + array_needs_making = 1; +--- 2557,2561 ---- + + INVALIDATE_EXPORTSTR (var); +! var->exportstr = mk_env_string (name, value, 0); + + array_needs_making = 1; +*************** +*** 3390,3408 **** + + static inline char * +! mk_env_string (name, value) + const char *name, *value; + { +! int name_len, value_len; +! char *p; + + name_len = strlen (name); + value_len = STRLEN (value); +! p = (char *)xmalloc (2 + name_len + value_len); +! strcpy (p, name); +! p[name_len] = '='; + if (value && *value) +! strcpy (p + name_len + 1, value); + else +! p[name_len + 1] = '\0'; + return (p); + } +--- 3409,3448 ---- + + static inline char * +! mk_env_string (name, value, isfunc) + const char *name, *value; ++ int isfunc; + { +! size_t name_len, value_len; +! char *p, *q; + + name_len = strlen (name); + value_len = STRLEN (value); +! +! /* If we are exporting a shell function, construct the encoded function +! name. */ +! if (isfunc && value) +! { +! p = (char *)xmalloc (BASHFUNC_PREFLEN + name_len + BASHFUNC_SUFFLEN + value_len + 2); +! q = p; +! memcpy (q, BASHFUNC_PREFIX, BASHFUNC_PREFLEN); +! q += BASHFUNC_PREFLEN; +! memcpy (q, name, name_len); +! q += name_len; +! memcpy (q, BASHFUNC_SUFFIX, BASHFUNC_SUFFLEN); +! q += BASHFUNC_SUFFLEN; +! } +! else +! { +! p = (char *)xmalloc (2 + name_len + value_len); +! memcpy (p, name, name_len); +! q = p + name_len; +! } +! +! q[0] = '='; + if (value && *value) +! memcpy (q + 1, value, value_len + 1); + else +! q[1] = '\0'; +! + return (p); + } +*************** +*** 3490,3494 **** + using the cached exportstr... */ + list[list_index] = USE_EXPORTSTR ? savestring (value) +! : mk_env_string (var->name, value); + + if (USE_EXPORTSTR == 0) +--- 3530,3534 ---- + using the cached exportstr... */ + list[list_index] = USE_EXPORTSTR ? savestring (value) +! : mk_env_string (var->name, value, function_p (var)); + + if (USE_EXPORTSTR == 0) +*** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 +--- patchlevel.h Thu Feb 24 21:41:34 2011 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 49 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 50 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/patches/source/bash/bash-4.2-patches/bash42-051 b/patches/source/bash/bash-4.2-patches/bash42-051 new file mode 100644 index 00000000..4d5040aa --- /dev/null +++ b/patches/source/bash/bash-4.2-patches/bash42-051 @@ -0,0 +1,173 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-051 + +Bug-Reported-by: Florian Weimer <fweimer@redhat.com> +Bug-Reference-ID: +Bug-Reference-URL: + +Bug-Description: + +There are two local buffer overflows in parse.y that can cause the shell +to dump core when given many here-documents attached to a single command +or many nested loops. + +Patch (apply with `patch -p0'): + +*** ../bash-4.2.50/parse.y 2014-09-27 12:18:53.000000000 -0400 +--- parse.y 2014-09-30 19:24:19.000000000 -0400 +*************** +*** 168,171 **** +--- 168,174 ---- + static int reserved_word_acceptable __P((int)); + static int yylex __P((void)); ++ ++ static void push_heredoc __P((REDIRECT *)); ++ static char *mk_alexpansion __P((char *)); + static int alias_expand_token __P((char *)); + static int time_command_acceptable __P((void)); +*************** +*** 265,269 **** + /* Variables to manage the task of reading here documents, because we need to + defer the reading until after a complete command has been collected. */ +! static REDIRECT *redir_stack[10]; + int need_here_doc; + +--- 268,274 ---- + /* Variables to manage the task of reading here documents, because we need to + defer the reading until after a complete command has been collected. */ +! #define HEREDOC_MAX 16 +! +! static REDIRECT *redir_stack[HEREDOC_MAX]; + int need_here_doc; + +*************** +*** 307,311 **** + index is decremented after a case, select, or for command is parsed. */ + #define MAX_CASE_NEST 128 +! static int word_lineno[MAX_CASE_NEST]; + static int word_top = -1; + +--- 312,316 ---- + index is decremented after a case, select, or for command is parsed. */ + #define MAX_CASE_NEST 128 +! static int word_lineno[MAX_CASE_NEST+1]; + static int word_top = -1; + +*************** +*** 520,524 **** + redir.filename = $2; + $$ = make_redirection (source, r_reading_until, redir, 0); +! redir_stack[need_here_doc++] = $$; + } + | NUMBER LESS_LESS WORD +--- 525,529 ---- + redir.filename = $2; + $$ = make_redirection (source, r_reading_until, redir, 0); +! push_heredoc ($$); + } + | NUMBER LESS_LESS WORD +*************** +*** 527,531 **** + redir.filename = $3; + $$ = make_redirection (source, r_reading_until, redir, 0); +! redir_stack[need_here_doc++] = $$; + } + | REDIR_WORD LESS_LESS WORD +--- 532,536 ---- + redir.filename = $3; + $$ = make_redirection (source, r_reading_until, redir, 0); +! push_heredoc ($$); + } + | REDIR_WORD LESS_LESS WORD +*************** +*** 534,538 **** + redir.filename = $3; + $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN); +! redir_stack[need_here_doc++] = $$; + } + | LESS_LESS_MINUS WORD +--- 539,543 ---- + redir.filename = $3; + $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN); +! push_heredoc ($$); + } + | LESS_LESS_MINUS WORD +*************** +*** 541,545 **** + redir.filename = $2; + $$ = make_redirection (source, r_deblank_reading_until, redir, 0); +! redir_stack[need_here_doc++] = $$; + } + | NUMBER LESS_LESS_MINUS WORD +--- 546,550 ---- + redir.filename = $2; + $$ = make_redirection (source, r_deblank_reading_until, redir, 0); +! push_heredoc ($$); + } + | NUMBER LESS_LESS_MINUS WORD +*************** +*** 548,552 **** + redir.filename = $3; + $$ = make_redirection (source, r_deblank_reading_until, redir, 0); +! redir_stack[need_here_doc++] = $$; + } + | REDIR_WORD LESS_LESS_MINUS WORD +--- 553,557 ---- + redir.filename = $3; + $$ = make_redirection (source, r_deblank_reading_until, redir, 0); +! push_heredoc ($$); + } + | REDIR_WORD LESS_LESS_MINUS WORD +*************** +*** 555,559 **** + redir.filename = $3; + $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN); +! redir_stack[need_here_doc++] = $$; + } + | LESS_LESS_LESS WORD +--- 560,564 ---- + redir.filename = $3; + $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN); +! push_heredoc ($$); + } + | LESS_LESS_LESS WORD +*************** +*** 2534,2537 **** +--- 2539,2557 ---- + static int esacs_needed_count; + ++ static void ++ push_heredoc (r) ++ REDIRECT *r; ++ { ++ |