From f15e01c889805173cd5fc5dd8b2c78118f5ce3b2 Mon Sep 17 00:00:00 2001 From: Roman Rakus Date: Fri, 2 Nov 2012 16:56:28 +0100 Subject: [PATCH] Patchlevel 39 Signed-off-by: Roman Rakus --- bash.spec | 11 +++++++++-- bash42-038 | 47 +++++++++++++++++++++++++++++++++++++++++++ bash42-039 | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 114 insertions(+), 2 deletions(-) create mode 100644 bash42-038 create mode 100644 bash42-039 diff --git a/bash.spec b/bash.spec index 44e382f..acc5541 100644 --- a/bash.spec +++ b/bash.spec @@ -1,12 +1,12 @@ #% define beta_tag rc2 -%define patchleveltag .37 +%define patchleveltag .39 %define baseversion 4.2 %bcond_without tests Version: %{baseversion}%{patchleveltag} Name: bash Summary: The GNU Bourne Again shell -Release: 8%{?dist} +Release: 1%{?dist} Group: System Environment/Shells License: GPLv3+ Url: http://www.gnu.org/software/bash @@ -57,6 +57,8 @@ Patch034: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-034 Patch035: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-035 Patch036: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-036 Patch037: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-037 +Patch038: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-038 +Patch039: ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2-patches/bash42-039 # Other patches Patch101: bash-2.02-security.patch @@ -166,6 +168,8 @@ This package contains documentation files for %{name}. %patch035 -p0 -b .035 %patch036 -p0 -b .036 %patch037 -p0 -b .037 +%patch038 -p0 -b .038 +%patch039 -p0 -b .039 # Other patches %patch101 -p1 -b .security @@ -383,6 +387,9 @@ end #%doc doc/*.ps doc/*.0 doc/*.html doc/article.txt %changelog +* Fri Nov 02 2012 Roman Rakus - 4.2.39-1 +- Patchlevel 39 + * Tue Aug 28 2012 Roman Rakus - 4.2.37-8 - Fix a comments in rpm changelog diff --git a/bash42-038 b/bash42-038 new file mode 100644 index 0000000..411e4dd --- /dev/null +++ b/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/bash42-039 b/bash42-039 new file mode 100644 index 0000000..21457af --- /dev/null +++ b/bash42-039 @@ -0,0 +1,58 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.2 +Patch-ID: bash42-039 + +Bug-Reported-by: Dan Douglas +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_ */