[arch-commits] Commit in bash/repos (20 files)

Bartłomiej Piotrowski bpiotrowski at archlinux.org
Sun Sep 28 10:01:18 UTC 2014


    Date: Sunday, September 28, 2014 @ 12:01:18
  Author: bpiotrowski
Revision: 223623

archrelease: copy trunk to testing-i686, testing-x86_64

Added:
  bash/repos/testing-i686/
  bash/repos/testing-i686/PKGBUILD
    (from rev 223622, bash/trunk/PKGBUILD)
  bash/repos/testing-i686/bash.install
    (from rev 223622, bash/trunk/bash.install)
  bash/repos/testing-i686/dot.bash_logout
    (from rev 223622, bash/trunk/dot.bash_logout)
  bash/repos/testing-i686/dot.bash_profile
    (from rev 223622, bash/trunk/dot.bash_profile)
  bash/repos/testing-i686/dot.bashrc
    (from rev 223622, bash/trunk/dot.bashrc)
  bash/repos/testing-i686/parser-oob-4.2.patch
    (from rev 223622, bash/trunk/parser-oob-4.2.patch)
  bash/repos/testing-i686/privmode-setuid-fail.patch
    (from rev 223622, bash/trunk/privmode-setuid-fail.patch)
  bash/repos/testing-i686/system.bash_logout
    (from rev 223622, bash/trunk/system.bash_logout)
  bash/repos/testing-i686/system.bashrc
    (from rev 223622, bash/trunk/system.bashrc)
  bash/repos/testing-x86_64/
  bash/repos/testing-x86_64/PKGBUILD
    (from rev 223622, bash/trunk/PKGBUILD)
  bash/repos/testing-x86_64/bash.install
    (from rev 223622, bash/trunk/bash.install)
  bash/repos/testing-x86_64/dot.bash_logout
    (from rev 223622, bash/trunk/dot.bash_logout)
  bash/repos/testing-x86_64/dot.bash_profile
    (from rev 223622, bash/trunk/dot.bash_profile)
  bash/repos/testing-x86_64/dot.bashrc
    (from rev 223622, bash/trunk/dot.bashrc)
  bash/repos/testing-x86_64/parser-oob-4.2.patch
    (from rev 223622, bash/trunk/parser-oob-4.2.patch)
  bash/repos/testing-x86_64/privmode-setuid-fail.patch
    (from rev 223622, bash/trunk/privmode-setuid-fail.patch)
  bash/repos/testing-x86_64/system.bash_logout
    (from rev 223622, bash/trunk/system.bash_logout)
  bash/repos/testing-x86_64/system.bashrc
    (from rev 223622, bash/trunk/system.bashrc)

-------------------------------------------+
 testing-i686/PKGBUILD                     |  146 ++++++++++++++++++++++++++++
 testing-i686/bash.install                 |   16 +++
 testing-i686/dot.bash_logout              |    3 
 testing-i686/dot.bash_profile             |    5 
 testing-i686/dot.bashrc                   |    9 +
 testing-i686/parser-oob-4.2.patch         |   85 ++++++++++++++++
 testing-i686/privmode-setuid-fail.patch   |   29 +++++
 testing-i686/system.bash_logout           |    3 
 testing-i686/system.bashrc                |   23 ++++
 testing-x86_64/PKGBUILD                   |  146 ++++++++++++++++++++++++++++
 testing-x86_64/bash.install               |   16 +++
 testing-x86_64/dot.bash_logout            |    3 
 testing-x86_64/dot.bash_profile           |    5 
 testing-x86_64/dot.bashrc                 |    9 +
 testing-x86_64/parser-oob-4.2.patch       |   85 ++++++++++++++++
 testing-x86_64/privmode-setuid-fail.patch |   29 +++++
 testing-x86_64/system.bash_logout         |    3 
 testing-x86_64/system.bashrc              |   23 ++++
 18 files changed, 638 insertions(+)

Copied: bash/repos/testing-i686/PKGBUILD (from rev 223622, bash/trunk/PKGBUILD)
===================================================================
--- testing-i686/PKGBUILD	                        (rev 0)
+++ testing-i686/PKGBUILD	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,146 @@
+# $Id$
+# Maintainer:  Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: Aaron Griffin <aaron at archlinux.org>
+
+pkgname=bash
+_basever=4.3
+_patchlevel=027
+pkgver=$_basever.$_patchlevel
+pkgrel=1
+pkgdesc='The GNU Bourne Again shell'
+arch=('i686' 'x86_64')
+license=('GPL')
+url='http://www.gnu.org/software/bash/bash.html'
+groups=('base')
+backup=(etc/bash.bash{rc,_logout} etc/skel/.bash{rc,_profile,_logout})
+depends=('readline>=6.3' 'glibc')
+optdepends=('bash-completion: for tab completion')
+provides=('sh')
+install=bash.install
+source=(http://ftp.gnu.org/gnu/bash/bash-$_basever.tar.gz{,.sig}
+        dot.bashrc
+        dot.bash_profile
+        dot.bash_logout
+        system.bashrc
+        system.bash_logout
+        privmode-setuid-fail.patch
+        parser-oob-4.2.patch)
+
+if [[ $((10#${_patchlevel})) -gt 0 ]]; then
+  for (( _p=1; _p<=$((10#${_patchlevel})); _p++ )); do
+    source=(${source[@]} http://ftp.gnu.org/gnu/bash/bash-$_basever-patches/bash${_basever//.}-$(printf "%03d" $_p){,.sig})
+  done
+fi
+
+prepare() {
+  cd $pkgname-$_basever
+
+  for (( _p=1; _p<=$((10#${_patchlevel})); _p++ )); do
+    msg "applying patch bash${_basever//.}-$(printf "%03d" $_p)"
+    patch -p0 -i ../bash${_basever//.}-$(printf "%03d" $_p)
+  done
+
+  # http://hmarco.org/bugs/bash_4.3-setuid-bug.html (FS#40663)
+  patch -p0 -i ../privmode-setuid-fail.patch
+
+  # CVE-2014-7169 patches
+  patch -p0 -i ../parser-oob-4.2.patch
+}
+
+build() {
+  cd $pkgname-$_basever
+
+  _bashconfig=(-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/bin\"\'
+               -DSTANDARD_UTILS_PATH=\'\"/usr/bin\"\'
+               -DSYS_BASHRC=\'\"/etc/bash.bashrc\"\'
+               -DSYS_BASH_LOGOUT=\'\"/etc/bash.bash_logout\"\')
+  export CFLAGS="${CFLAGS} ${_bashconfig[@]}"
+
+  ./configure --prefix=/usr --with-curses --enable-readline \
+    --without-bash-malloc --with-installed-readline
+  make
+}
+
+check() {
+  make -C $pkgname-$_basever check
+}
+
+package() {
+  make -C $pkgname-$_basever DESTDIR="$pkgdir" install
+  ln -s bash "$pkgdir"/usr/bin/sh
+
+  install -dm755 "$pkgdir"/etc/skel/
+  # system-wide configuration files
+  install -m644 system.bashrc $pkgdir/etc/bash.bashrc
+  install -m644 system.bash_logout "$pkgdir"/etc/bash.bash_logout
+
+  # user configuration file skeletons
+  install -m644 dot.bashrc "$pkgdir"/etc/skel/.bashrc
+  install -m644 dot.bash_profile "$pkgdir"/etc/skel/.bash_profile
+  install -m644 dot.bash_logout "$pkgdir"/etc/skel/.bash_logout
+}
+
+md5sums=('81348932d5da294953e15d4814c74dd1'
+         'SKIP'
+         '027d6bd8f5f6a06b75bb7698cb478089'
+         '2902e0fee7a9168f3a4fd2ccd60ff047'
+         '42f4400ed2314bd7519c020d0187edc5'
+         '561949793177116b7be29a07c385ba8b'
+         '472f536d7c9e8250dc4568ec4cfaf294'
+         'a577d42e38249d298d6a8d4bf2823883'
+         '461145288c8ffbf05c0f90554b2aa885'
+         '1ab682b4e36afa4cf1b426aa7ac81c0d'
+         'SKIP'
+         '8fc22cf50ec85da00f6af3d66f7ddc1b'
+         'SKIP'
+         'a41728eca78858758e26b5dea64ae506'
+         'SKIP'
+         'bf8d53d227829d67235927689a03cc7a'
+         'SKIP'
+         'c0c00935c8b8ffff76e8ab77e7be7d15'
+         'SKIP'
+         '6f01e364cd092faa28dd7119f47ddb5f'
+         'SKIP'
+         'dcf471d222bcd83283d3094e6ceeb6f8'
+         'SKIP'
+         'f7553416646dc26c266454c78a916d36'
+         'SKIP'
+         '7e73d2151f4064b484a4ba2c4b09960e'
+         'SKIP'
+         'a275463d21735bb6d7161f9fbd320d8f'
+         'SKIP'
+         'c17103ee20420d77e46b224c8d3fceda'
+         'SKIP'
+         '3e2a057a19d02b3f92a3a09eacbc03ae'
+         'SKIP'
+         'fb377143a996d4ff087a2771bc8332f9'
+         'SKIP'
+         '1a1aaecc99a9d0cbc310e8e247dcc8b6'
+         'SKIP'
+         '4f04387458a3c1b4d460d199f49991a8'
+         'SKIP'
+         '90e759709720c4f877525bebc9d5dc06'
+         'SKIP'
+         '11e4046e1b86070f6adbb7ffc89641be'
+         'SKIP'
+         'cd5a9b46f5bea0dc0248c93c7dfac011'
+         'SKIP'
+         'cff4dc024d9d3456888aaaf8a36ca774'
+         'SKIP'
+         '167839c5f147347f4a03d88ab97ff787'
+         'SKIP'
+         '1d350671c48dec30b34d8b81f09cd79d'
+         'SKIP'
+         '11c349af66a55481a3215ef2520bec36'
+         'SKIP'
+         'b3cb0d80fd0c47728264405cbb3b23c7'
+         'SKIP'
+         'b5ea5600942acceb4b6f07313d2de74e'
+         'SKIP'
+         '193c06f578d38ffdbaebae9c51a7551f'
+         'SKIP'
+         '922578e2be7ed03729454e92ee8d3f3a'
+         'SKIP'
+         '8ff6948b16f2db5c29b1b9ae1085bbe7'
+         'SKIP')

Copied: bash/repos/testing-i686/bash.install (from rev 223622, bash/trunk/bash.install)
===================================================================
--- testing-i686/bash.install	                        (rev 0)
+++ testing-i686/bash.install	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,16 @@
+info_dir=usr/share/info
+info_files=(bash.info)
+
+post_upgrade() {
+  [ -x usr/bin/install-info ] || return 0
+  for f in ${info_files[@]}; do
+    usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
+  done
+}
+
+pre_remove() {
+  [ -x usr/bin/install-info ] || return 0
+  for f in ${info_files[@]}; do
+    usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
+  done
+}

Copied: bash/repos/testing-i686/dot.bash_logout (from rev 223622, bash/trunk/dot.bash_logout)
===================================================================
--- testing-i686/dot.bash_logout	                        (rev 0)
+++ testing-i686/dot.bash_logout	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,3 @@
+#
+# ~/.bash_logout
+#

Copied: bash/repos/testing-i686/dot.bash_profile (from rev 223622, bash/trunk/dot.bash_profile)
===================================================================
--- testing-i686/dot.bash_profile	                        (rev 0)
+++ testing-i686/dot.bash_profile	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,5 @@
+#
+# ~/.bash_profile
+#
+
+[[ -f ~/.bashrc ]] && . ~/.bashrc

Copied: bash/repos/testing-i686/dot.bashrc (from rev 223622, bash/trunk/dot.bashrc)
===================================================================
--- testing-i686/dot.bashrc	                        (rev 0)
+++ testing-i686/dot.bashrc	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,9 @@
+#
+# ~/.bashrc
+#
+
+# If not running interactively, don't do anything
+[[ $- != *i* ]] && return
+
+alias ls='ls --color=auto'
+PS1='[\u@\h \W]\$ '

Copied: bash/repos/testing-i686/parser-oob-4.2.patch (from rev 223622, bash/trunk/parser-oob-4.2.patch)
===================================================================
--- testing-i686/parser-oob-4.2.patch	                        (rev 0)
+++ testing-i686/parser-oob-4.2.patch	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,85 @@
+--- ../bash-4.2-orig/parse.y	2014-09-25 13:07:59.218209276 +0200
++++ parse.y	2014-09-25 15:26:52.813159810 +0200
+@@ -264,9 +264,21 @@
+ 
+ /* 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];
++static REDIRECT **redir_stack;
+ int need_here_doc;
+ 
++/* Pushes REDIR onto redir_stack, resizing it as needed. */
++static void
++push_redir_stack (REDIRECT *redir)
++{
++  /* Guard against oveflow. */
++  if (need_here_doc + 1 > INT_MAX / sizeof (*redir_stack))
++    abort ();
++  redir_stack = xrealloc (redir_stack,
++			  (need_here_doc + 1) * sizeof (*redir_stack));
++  redir_stack[need_here_doc++] = redir;
++}
++
+ /* Where shell input comes from.  History expansion is performed on each
+    line when the shell is interactive. */
+ static char *shell_input_line = (char *)NULL;
+@@ -519,42 +531,42 @@
+ 			  source.dest = 0;
+ 			  redir.filename = $2;
+ 			  $$ = make_redirection (source, r_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	NUMBER LESS_LESS WORD
+ 			{
+ 			  source.dest = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	REDIR_WORD LESS_LESS WORD
+ 			{
+ 			  source.filename = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	LESS_LESS_MINUS WORD
+ 			{
+ 			  source.dest = 0;
+ 			  redir.filename = $2;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	NUMBER LESS_LESS_MINUS WORD
+ 			{
+ 			  source.dest = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	REDIR_WORD  LESS_LESS_MINUS WORD
+ 			{
+ 			  source.filename = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	LESS_LESS_LESS WORD
+ 			{
+@@ -4757,7 +4769,7 @@
+     case CASE:
+     case SELECT:
+     case FOR:
+-      if (word_top < MAX_CASE_NEST)
++      if (word_top + 1 < MAX_CASE_NEST)
+ 	word_top++;
+       word_lineno[word_top] = line_number;
+       break;
+
+

Copied: bash/repos/testing-i686/privmode-setuid-fail.patch (from rev 223622, bash/trunk/privmode-setuid-fail.patch)
===================================================================
--- testing-i686/privmode-setuid-fail.patch	                        (rev 0)
+++ testing-i686/privmode-setuid-fail.patch	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,29 @@
+*** ../bash-4.3-patched/shell.c	2014-01-14 08:04:32.000000000 -0500
+--- shell.c	2014-06-06 16:29:01.000000000 -0400
+***************
+*** 1227,1232 ****
+  disable_priv_mode ()
+  {
+!   setuid (current_user.uid);
+!   setgid (current_user.gid);
+    current_user.euid = current_user.uid;
+    current_user.egid = current_user.gid;
+--- 1229,1246 ----
+  disable_priv_mode ()
+  {
+!   int e;
+! 
+!   if (setuid (current_user.uid) < 0)
+!     {
+!       e = errno;
+!       sys_error (_("cannot set uid to %d: effective uid %d"), current_user.uid, current_user.euid);
+! #if defined (EXIT_ON_SETUID_FAILURE)
+!       if (e == EAGAIN)
+!	exit (e);
+! #endif
+!     }
+!   if (setgid (current_user.gid) < 0)
+!     sys_error (_("cannot set gid to %d: effective gid %d"), current_user.gid, current_user.egid);
+! 
+    current_user.euid = current_user.uid;
+    current_user.egid = current_user.gid;

Copied: bash/repos/testing-i686/system.bash_logout (from rev 223622, bash/trunk/system.bash_logout)
===================================================================
--- testing-i686/system.bash_logout	                        (rev 0)
+++ testing-i686/system.bash_logout	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,3 @@
+#
+# /etc/bash.bash_logout
+#

Copied: bash/repos/testing-i686/system.bashrc (from rev 223622, bash/trunk/system.bashrc)
===================================================================
--- testing-i686/system.bashrc	                        (rev 0)
+++ testing-i686/system.bashrc	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,23 @@
+#
+# /etc/bash.bashrc
+#
+
+# If not running interactively, don't do anything
+[[ $- != *i* ]] && return
+
+PS1='[\u@\h \W]\$ '
+PS2='> '
+PS3='> '
+PS4='+ '
+
+case ${TERM} in
+  xterm*|rxvt*|Eterm|aterm|kterm|gnome*)
+    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
+
+    ;;
+  screen)
+    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
+    ;;
+esac
+
+[ -r /usr/share/bash-completion/bash_completion   ] && . /usr/share/bash-completion/bash_completion

Copied: bash/repos/testing-x86_64/PKGBUILD (from rev 223622, bash/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,146 @@
+# $Id$
+# Maintainer:  Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: Aaron Griffin <aaron at archlinux.org>
+
+pkgname=bash
+_basever=4.3
+_patchlevel=027
+pkgver=$_basever.$_patchlevel
+pkgrel=1
+pkgdesc='The GNU Bourne Again shell'
+arch=('i686' 'x86_64')
+license=('GPL')
+url='http://www.gnu.org/software/bash/bash.html'
+groups=('base')
+backup=(etc/bash.bash{rc,_logout} etc/skel/.bash{rc,_profile,_logout})
+depends=('readline>=6.3' 'glibc')
+optdepends=('bash-completion: for tab completion')
+provides=('sh')
+install=bash.install
+source=(http://ftp.gnu.org/gnu/bash/bash-$_basever.tar.gz{,.sig}
+        dot.bashrc
+        dot.bash_profile
+        dot.bash_logout
+        system.bashrc
+        system.bash_logout
+        privmode-setuid-fail.patch
+        parser-oob-4.2.patch)
+
+if [[ $((10#${_patchlevel})) -gt 0 ]]; then
+  for (( _p=1; _p<=$((10#${_patchlevel})); _p++ )); do
+    source=(${source[@]} http://ftp.gnu.org/gnu/bash/bash-$_basever-patches/bash${_basever//.}-$(printf "%03d" $_p){,.sig})
+  done
+fi
+
+prepare() {
+  cd $pkgname-$_basever
+
+  for (( _p=1; _p<=$((10#${_patchlevel})); _p++ )); do
+    msg "applying patch bash${_basever//.}-$(printf "%03d" $_p)"
+    patch -p0 -i ../bash${_basever//.}-$(printf "%03d" $_p)
+  done
+
+  # http://hmarco.org/bugs/bash_4.3-setuid-bug.html (FS#40663)
+  patch -p0 -i ../privmode-setuid-fail.patch
+
+  # CVE-2014-7169 patches
+  patch -p0 -i ../parser-oob-4.2.patch
+}
+
+build() {
+  cd $pkgname-$_basever
+
+  _bashconfig=(-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/bin\"\'
+               -DSTANDARD_UTILS_PATH=\'\"/usr/bin\"\'
+               -DSYS_BASHRC=\'\"/etc/bash.bashrc\"\'
+               -DSYS_BASH_LOGOUT=\'\"/etc/bash.bash_logout\"\')
+  export CFLAGS="${CFLAGS} ${_bashconfig[@]}"
+
+  ./configure --prefix=/usr --with-curses --enable-readline \
+    --without-bash-malloc --with-installed-readline
+  make
+}
+
+check() {
+  make -C $pkgname-$_basever check
+}
+
+package() {
+  make -C $pkgname-$_basever DESTDIR="$pkgdir" install
+  ln -s bash "$pkgdir"/usr/bin/sh
+
+  install -dm755 "$pkgdir"/etc/skel/
+  # system-wide configuration files
+  install -m644 system.bashrc $pkgdir/etc/bash.bashrc
+  install -m644 system.bash_logout "$pkgdir"/etc/bash.bash_logout
+
+  # user configuration file skeletons
+  install -m644 dot.bashrc "$pkgdir"/etc/skel/.bashrc
+  install -m644 dot.bash_profile "$pkgdir"/etc/skel/.bash_profile
+  install -m644 dot.bash_logout "$pkgdir"/etc/skel/.bash_logout
+}
+
+md5sums=('81348932d5da294953e15d4814c74dd1'
+         'SKIP'
+         '027d6bd8f5f6a06b75bb7698cb478089'
+         '2902e0fee7a9168f3a4fd2ccd60ff047'
+         '42f4400ed2314bd7519c020d0187edc5'
+         '561949793177116b7be29a07c385ba8b'
+         '472f536d7c9e8250dc4568ec4cfaf294'
+         'a577d42e38249d298d6a8d4bf2823883'
+         '461145288c8ffbf05c0f90554b2aa885'
+         '1ab682b4e36afa4cf1b426aa7ac81c0d'
+         'SKIP'
+         '8fc22cf50ec85da00f6af3d66f7ddc1b'
+         'SKIP'
+         'a41728eca78858758e26b5dea64ae506'
+         'SKIP'
+         'bf8d53d227829d67235927689a03cc7a'
+         'SKIP'
+         'c0c00935c8b8ffff76e8ab77e7be7d15'
+         'SKIP'
+         '6f01e364cd092faa28dd7119f47ddb5f'
+         'SKIP'
+         'dcf471d222bcd83283d3094e6ceeb6f8'
+         'SKIP'
+         'f7553416646dc26c266454c78a916d36'
+         'SKIP'
+         '7e73d2151f4064b484a4ba2c4b09960e'
+         'SKIP'
+         'a275463d21735bb6d7161f9fbd320d8f'
+         'SKIP'
+         'c17103ee20420d77e46b224c8d3fceda'
+         'SKIP'
+         '3e2a057a19d02b3f92a3a09eacbc03ae'
+         'SKIP'
+         'fb377143a996d4ff087a2771bc8332f9'
+         'SKIP'
+         '1a1aaecc99a9d0cbc310e8e247dcc8b6'
+         'SKIP'
+         '4f04387458a3c1b4d460d199f49991a8'
+         'SKIP'
+         '90e759709720c4f877525bebc9d5dc06'
+         'SKIP'
+         '11e4046e1b86070f6adbb7ffc89641be'
+         'SKIP'
+         'cd5a9b46f5bea0dc0248c93c7dfac011'
+         'SKIP'
+         'cff4dc024d9d3456888aaaf8a36ca774'
+         'SKIP'
+         '167839c5f147347f4a03d88ab97ff787'
+         'SKIP'
+         '1d350671c48dec30b34d8b81f09cd79d'
+         'SKIP'
+         '11c349af66a55481a3215ef2520bec36'
+         'SKIP'
+         'b3cb0d80fd0c47728264405cbb3b23c7'
+         'SKIP'
+         'b5ea5600942acceb4b6f07313d2de74e'
+         'SKIP'
+         '193c06f578d38ffdbaebae9c51a7551f'
+         'SKIP'
+         '922578e2be7ed03729454e92ee8d3f3a'
+         'SKIP'
+         '8ff6948b16f2db5c29b1b9ae1085bbe7'
+         'SKIP')

Copied: bash/repos/testing-x86_64/bash.install (from rev 223622, bash/trunk/bash.install)
===================================================================
--- testing-x86_64/bash.install	                        (rev 0)
+++ testing-x86_64/bash.install	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,16 @@
+info_dir=usr/share/info
+info_files=(bash.info)
+
+post_upgrade() {
+  [ -x usr/bin/install-info ] || return 0
+  for f in ${info_files[@]}; do
+    usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
+  done
+}
+
+pre_remove() {
+  [ -x usr/bin/install-info ] || return 0
+  for f in ${info_files[@]}; do
+    usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
+  done
+}

Copied: bash/repos/testing-x86_64/dot.bash_logout (from rev 223622, bash/trunk/dot.bash_logout)
===================================================================
--- testing-x86_64/dot.bash_logout	                        (rev 0)
+++ testing-x86_64/dot.bash_logout	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,3 @@
+#
+# ~/.bash_logout
+#

Copied: bash/repos/testing-x86_64/dot.bash_profile (from rev 223622, bash/trunk/dot.bash_profile)
===================================================================
--- testing-x86_64/dot.bash_profile	                        (rev 0)
+++ testing-x86_64/dot.bash_profile	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,5 @@
+#
+# ~/.bash_profile
+#
+
+[[ -f ~/.bashrc ]] && . ~/.bashrc

Copied: bash/repos/testing-x86_64/dot.bashrc (from rev 223622, bash/trunk/dot.bashrc)
===================================================================
--- testing-x86_64/dot.bashrc	                        (rev 0)
+++ testing-x86_64/dot.bashrc	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,9 @@
+#
+# ~/.bashrc
+#
+
+# If not running interactively, don't do anything
+[[ $- != *i* ]] && return
+
+alias ls='ls --color=auto'
+PS1='[\u@\h \W]\$ '

Copied: bash/repos/testing-x86_64/parser-oob-4.2.patch (from rev 223622, bash/trunk/parser-oob-4.2.patch)
===================================================================
--- testing-x86_64/parser-oob-4.2.patch	                        (rev 0)
+++ testing-x86_64/parser-oob-4.2.patch	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,85 @@
+--- ../bash-4.2-orig/parse.y	2014-09-25 13:07:59.218209276 +0200
++++ parse.y	2014-09-25 15:26:52.813159810 +0200
+@@ -264,9 +264,21 @@
+ 
+ /* 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];
++static REDIRECT **redir_stack;
+ int need_here_doc;
+ 
++/* Pushes REDIR onto redir_stack, resizing it as needed. */
++static void
++push_redir_stack (REDIRECT *redir)
++{
++  /* Guard against oveflow. */
++  if (need_here_doc + 1 > INT_MAX / sizeof (*redir_stack))
++    abort ();
++  redir_stack = xrealloc (redir_stack,
++			  (need_here_doc + 1) * sizeof (*redir_stack));
++  redir_stack[need_here_doc++] = redir;
++}
++
+ /* Where shell input comes from.  History expansion is performed on each
+    line when the shell is interactive. */
+ static char *shell_input_line = (char *)NULL;
+@@ -519,42 +531,42 @@
+ 			  source.dest = 0;
+ 			  redir.filename = $2;
+ 			  $$ = make_redirection (source, r_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	NUMBER LESS_LESS WORD
+ 			{
+ 			  source.dest = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	REDIR_WORD LESS_LESS WORD
+ 			{
+ 			  source.filename = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	LESS_LESS_MINUS WORD
+ 			{
+ 			  source.dest = 0;
+ 			  redir.filename = $2;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	NUMBER LESS_LESS_MINUS WORD
+ 			{
+ 			  source.dest = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	REDIR_WORD  LESS_LESS_MINUS WORD
+ 			{
+ 			  source.filename = $1;
+ 			  redir.filename = $3;
+ 			  $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+-			  redir_stack[need_here_doc++] = $$;
++			  push_redir_stack ($$);
+ 			}
+ 	|	LESS_LESS_LESS WORD
+ 			{
+@@ -4757,7 +4769,7 @@
+     case CASE:
+     case SELECT:
+     case FOR:
+-      if (word_top < MAX_CASE_NEST)
++      if (word_top + 1 < MAX_CASE_NEST)
+ 	word_top++;
+       word_lineno[word_top] = line_number;
+       break;
+
+

Copied: bash/repos/testing-x86_64/privmode-setuid-fail.patch (from rev 223622, bash/trunk/privmode-setuid-fail.patch)
===================================================================
--- testing-x86_64/privmode-setuid-fail.patch	                        (rev 0)
+++ testing-x86_64/privmode-setuid-fail.patch	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,29 @@
+*** ../bash-4.3-patched/shell.c	2014-01-14 08:04:32.000000000 -0500
+--- shell.c	2014-06-06 16:29:01.000000000 -0400
+***************
+*** 1227,1232 ****
+  disable_priv_mode ()
+  {
+!   setuid (current_user.uid);
+!   setgid (current_user.gid);
+    current_user.euid = current_user.uid;
+    current_user.egid = current_user.gid;
+--- 1229,1246 ----
+  disable_priv_mode ()
+  {
+!   int e;
+! 
+!   if (setuid (current_user.uid) < 0)
+!     {
+!       e = errno;
+!       sys_error (_("cannot set uid to %d: effective uid %d"), current_user.uid, current_user.euid);
+! #if defined (EXIT_ON_SETUID_FAILURE)
+!       if (e == EAGAIN)
+!	exit (e);
+! #endif
+!     }
+!   if (setgid (current_user.gid) < 0)
+!     sys_error (_("cannot set gid to %d: effective gid %d"), current_user.gid, current_user.egid);
+! 
+    current_user.euid = current_user.uid;
+    current_user.egid = current_user.gid;

Copied: bash/repos/testing-x86_64/system.bash_logout (from rev 223622, bash/trunk/system.bash_logout)
===================================================================
--- testing-x86_64/system.bash_logout	                        (rev 0)
+++ testing-x86_64/system.bash_logout	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,3 @@
+#
+# /etc/bash.bash_logout
+#

Copied: bash/repos/testing-x86_64/system.bashrc (from rev 223622, bash/trunk/system.bashrc)
===================================================================
--- testing-x86_64/system.bashrc	                        (rev 0)
+++ testing-x86_64/system.bashrc	2014-09-28 10:01:18 UTC (rev 223623)
@@ -0,0 +1,23 @@
+#
+# /etc/bash.bashrc
+#
+
+# If not running interactively, don't do anything
+[[ $- != *i* ]] && return
+
+PS1='[\u@\h \W]\$ '
+PS2='> '
+PS3='> '
+PS4='+ '
+
+case ${TERM} in
+  xterm*|rxvt*|Eterm|aterm|kterm|gnome*)
+    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
+
+    ;;
+  screen)
+    PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
+    ;;
+esac
+
+[ -r /usr/share/bash-completion/bash_completion   ] && . /usr/share/bash-completion/bash_completion



More information about the arch-commits mailing list