bison/bison.patch

Fri, 03 Aug 2012 20:11:53 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 03 Aug 2012 20:11:53 +0200
changeset 470
f8813e60f168
parent 22
0d4f475bfc81
permissions
-rw-r--r--

Neutralize buggy code causing OpenPKG to have 'fatal problems' in
spite of correct installation, configuration, and operation. An
administrator suffering from this failure is even unable to
uninstall the flawed software.

     1 Index: lib/timevar.c
     2 --- lib/timevar.c.orig	2010-07-26 01:33:12.000000000 +0200
     3 +++ lib/timevar.c	2010-08-06 15:13:37.000000000 +0200
     4 @@ -45,6 +45,7 @@
     5  # include <sys/times.h>
     6  #endif
     7  #ifdef HAVE_SYS_RESOURCE_H
     8 +#include <sys/time.h>
     9  #include <sys/resource.h>
    10  #endif
    12 ----------------------------------------------------------------------------
    14 Security Fix:
    15 http://undeadly.org/cgi?action=article&sid=20080708155228&mode=flat&count=13
    17 Index: data/yacc.c
    18 --- data/yacc.c.orig	2010-08-06 02:37:58.000000000 +0200
    19 +++ data/yacc.c	2010-08-06 15:13:37.000000000 +0200
    20 @@ -1453,7 +1453,10 @@
    21       users should not rely upon it.  Assigning to YYVAL
    22       unconditionally makes the parser a bit smaller, and it avoids a
    23       GCC warning that YYVAL may be used uninitialized.  */
    24 +if (yylen)
    25    yyval = yyvsp[1-yylen];
    26 +else
    27 +  memset(&yyval, 0, sizeof(yyval));
    29  ]b4_locations_if(
    30  [[  /* Default location.  */
    32 ----------------------------------------------------------------------------
    34 Fix for FreeBSD 8 but without breaking Mac OS X 10.6
    36 Index: lib/spawn.in.h
    37 --- lib/spawn.in.h.orig	2010-04-11 20:31:37.000000000 +0200
    38 +++ lib/spawn.in.h	2010-08-06 15:57:36.000000000 +0200
    39 @@ -121,6 +121,7 @@
    40  #  define POSIX_SPAWN_SETSCHEDULER 0
    41  # endif
    42  #else
    43 +#if !@HAVE_POSIX_SPAWN@ || defined(__APPLE__)
    44  # if @REPLACE_POSIX_SPAWN@
    45  /* Use the values from the system, for better compatibility.  */
    46  /* But this implementation does not support AIX extensions.  */
    47 @@ -134,6 +135,7 @@
    48  #  define POSIX_SPAWN_SETSCHEDULER       0x20
    49  # endif
    50  #endif
    51 +#endif
    52  /* A GNU extension.  Use the next free bit position.  */
    53  #define POSIX_SPAWN_USEVFORK \
    54    ((POSIX_SPAWN_RESETIDS | (POSIX_SPAWN_RESETIDS - 1)                     \

mercurial