php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #44461 parse_ini_file crashes
Submitted: 2008-03-17 21:08 UTC Modified: 2008-03-21 15:46 UTC
From: crrodriguez at suse dot de Assigned: helly (profile)
Status: Closed Package: Reproducible crash
PHP Version: * OS: *
Private report: No CVE-ID: None
 [2008-03-17 21:08 UTC] crrodriguez at suse dot de
Description:
------------
parse_ini_file() is currenly crashing with a very simple ini file

Reproduce code:
---------------
test.ini

[attachments]
zip = "application/zip" ; MIME-type for ZIP files


test.php

<?php parse_ini_file('test.ini', true); ?>

Expected result:
----------------
ini file parsed correctly

Actual result:
--------------
Program received signal SIGSEGV, Segmentation fault.
0x00000000006f71f4 in ini_lex (ini_lval=0x7fff580c52d0) at /home/cristian/php5.3/Zend/zend_ini_scanner.c:4063
4063                    yych = *YYCURSOR;
(gdb) bt full
#0  0x00000000006f71f4 in ini_lex (ini_lval=0x7fff580c52d0) at /home/cristian/php5.3/Zend/zend_ini_scanner.c:4063
        yych = 0 '\0'
        yyaccept = 2
        yybm = {128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 192 '&#65533;',
  0 '\0', 128 '\200', 128 '\200', 0 '\0', 128 '\200' <repeats 18 times>, 192 '&#65533;', 128 '\200' <repeats 12 times>, 160 '&#65533;', 160 '&#65533;',
  128 '\200', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 128 '\200', 128 '\200',
  128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 160 '&#65533;' <repeats 26 times>, 128 '\200', 128 '\200', 128 '\200', 128 '\200',
  160 '&#65533;', 128 '\200', 160 '&#65533;' <repeats 26 times>, 128 '\200' <repeats 133 times>}
        yybm = {16 '\020', 16 '\020', 16 '\020', 16 '\020', 16 '\020', 16 '\020', 16 '\020', 16 '\020', 16 '\020', 144 '\220',
  16 '\020' <repeats 22 times>, 144 '\220', 16 '\020', 0 '\0', 16 '\020', 32 ' ', 16 '\020' <repeats 55 times>, 64 '@',
  16 '\020' <repeats 163 times>}
        yybm = {66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 194 '&#65533;', 64 '@', 66 'B', 66 'B', 64 '@',
  66 'B' <repeats 18 times>, 194 '&#65533;', 66 'B', 64 '@', 66 'B', 68 'D', 66 'B', 66 'B', 0 '\0', 66 'B', 66 'B', 66 'B', 66 'B', 66 'B',
  66 'B', 66 'B', 66 'B', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 114 'r', 66 'B', 64 '@',
  66 'B', 66 'B', 66 'B', 66 'B', 66 'B', 82 'R' <repeats 26 times>, 66 'B', 72 'H', 64 '@', 66 'B', 82 'R', 66 'B',
  82 'R' <repeats 26 times>, 66 'B' <repeats 133 times>}
        yybm = {160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 160 '&#65533;', 224 '&#65533;', 0 '\0', 160 '&#65533;', 160 '&#65533;',
  0 '\0', 160 '&#65533;' <repeats 18 times>, 224 '&#65533;', 160 '&#65533;' <repeats 26 times>, 32 ' ', 160 '&#65533;', 32 ' ', 160 '&#65533;' <repeats 194 times>}
        yybm = {128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 192 '&#65533;',
  0 '\0', 128 '\200', 128 '\200', 0 '\0', 128 '\200' <repeats 18 times>, 192 '&#65533;', 128 '\200' <repeats 60 times>, 0 '\0',
  128 '\200' <repeats 162 times>}
---Type <return> to continue, or q <return> to quit---
        yybm = {132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 134 '\206',
  128 '\200', 132 '\204', 132 '\204', 128 '\200', 132 '\204' <repeats 18 times>, 134 '\206', 132 '\204', 128 '\200', 132 '\204',
  136 '\210', 132 '\204', 132 '\204', 0 '\0', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204',
  132 '\204', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 228 '&#65533;', 132 '\204', 128 '\200',
  132 '\204', 132 '\204', 132 '\204', 132 '\204', 132 '\204', 164 '&#65533;' <repeats 26 times>, 132 '\204', 144 '\220', 128 '\200', 132 '\204',
  164 '&#65533;', 132 '\204', 164 '&#65533;' <repeats 26 times>, 132 '\204' <repeats 133 times>}
        yybm = {160 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 176 '&#65533;', 128 '\200', 162 '&#65533;', 162 '&#65533;',
  128 '\200', 162 '&#65533;' <repeats 18 times>, 176 '&#65533;', 160 '&#65533;', 160 '&#65533;', 162 '&#65533;', 168 '&#65533;', 162 '&#65533;', 160 '&#65533;', 32 ' ', 160 '&#65533;', 160 '&#65533;',
  162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;', 230 '&#65533;',
  230 '&#65533;', 162 '&#65533;', 160 '&#65533;', 162 '&#65533;', 160 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 166 '&#65533;' <repeats 26 times>, 162 '&#65533;', 162 '&#65533;', 162 '&#65533;', 162 '&#65533;',
  166 '&#65533;', 162 '&#65533;', 166 '&#65533;' <repeats 26 times>, 162 '&#65533;', 160 '&#65533;', 162 '&#65533;', 160 '&#65533;', 162 '&#65533;' <repeats 129 times>}
        yybm = {0 '\0' <repeats 45 times>, 128 '\200', 128 '\200', 0 '\0', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200',
  128 '\200', 128 '\200', 128 '\200', 128 '\200', 128 '\200', 0 '\0', 0 '\0', 0 '\0', 0 '\0', 0 '\0', 0 '\0', 0 '\0',
  128 '\200' <repeats 26 times>, 0 '\0', 0 '\0', 0 '\0', 0 '\0', 128 '\200', 0 '\0', 128 '\200' <repeats 26 times>,
  0 '\0' <repeats 133 times>}
#1  0x00000000006ef2f0 in ini_parse () at /home/cristian/php5.3/Zend/zend_ini_parser.c:1557
        ini_char = -2
        ini_lval = {value = {lval = 13189216, dval = 6.5163385211797024e-317, str = {val = 0xc94060 "", len = 15}, ht = 0xc94060, obj = {
      handle = 13189216, handlers = 0xf}}, refcount__gc = 13054024, type = 6 '\006', is_ref__gc = 0 '\0'}
        ini_nerrs = 0
        yystate = 35
---Type <return> to continue, or q <return> to quit---
        yyn = 46
        yyresult = 0
        yyerrstatus = 0
        yytoken = 21
        yymsgbuf = "\000\000\000\000\000\000\000\000\f\f&#65533;S\036+\000\000&#65533;\220&#65533;R\036+\000\000&#65533;S\fX&#65533;\177\000\000\000\000\000\000\000\000\000\000&#65533;&#65533;o\000\000\000\000\000&#65533;S\fX&#65533;\177\000\000\000@&#65533;\000\000\000\000\000\b\000\000\000\b\000\000\000\230E&#65533;\000\000\000\000\000&#65533;S\fX?\000\000\000\000@&#65533;\000\000\000\000\000\020T\fX&#65533;\177\000\000:\002o", '\0' <repeats 13 times>, "&#65533;T\fX&#65533;\177\000"
        yymsg = 0x7fff580c5380 ""
        yymsg_alloc = 128
        yyssa = {0, 1, 4, 19, 35, 23, 40, 0, 18008, 199, 0, 0, 979, 0, 0, 0, 0, 0, 0, 0, 1091, 0, 1824, 0, 12040, 130, 0, 0, -23902, 108,
  0, 0, 20912, 22540, 32767, 0, -13624, 111, 4, 0, 0, 0, 1, 0, 11080, 199, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 21024, 22540, 32767, 0, -18645,
  108, 0, 0, 18008, 199, 0, 0, 1, 0, 4, 0, 4, 0, 0, 0, -19694, 108, 2, 0, 21040, 22540, 32767, 0, 21152, 22540, 32767, 0, 1, 0, 9, 0,
  11360, 199, 0, 0, 21008, 22540, 32767, 0, 9623, 108, 0, 0, 21152, 22540, 32767, 0, 5760, 0, 0, 0, 136, 0, 0, 0, 5160, 0, 0, 0, 21120,
  22540, 32767, 0, 12, 0, 0, 0, 21120, 22540, 32767, 0, -30867, 111, 0, 0, 12368, 199, 0, 0, -7504, 173, 0, 0, 11768, 199, 0, 0, -7504,
  173, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, -5720, 173, 0, 0, 12, 0, 0, 0, 5160, 0, 0, 0, 21360, 22540, 32767, 0, -20503, 111, 0, 0,
  0, 0, 0, 0, 600, 0, 0, 0, 11848, 199, 0, 0, 0, 0, 0, 0}
        yyss = (yytype_int16 *) 0x7fff580c5120
        yyssp = (yytype_int16 *) 0x7fff580c5128
        yyvsa = {{value = {lval = 13052744, dval = 6.4489123943604558e-317, str = {val = 0xc72b48 "", len = 6991792}, ht = 0xc72b48,
      obj = {handle = 13052744, handlers = 0x443006aafb0}}, refcount__gc = 13052533, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 13052424, dval = 6.4487542933537866e-317, str = {val = 0xc72a08 "aL&#65533;&#65533;", len = 8534424}, ht = 0xc72a08, obj = {
---Type <return> to continue, or q <return> to quit---
        handle = 13052424, handlers = 0x823998}}, refcount__gc = 7119522, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 13189152,
      dval = 6.5163069009783685e-317, str = {val = 0xc94020 "zip", len = 3}, ht = 0xc94020, obj = {handle = 13189152, handlers = 0x3}},
    refcount__gc = 13054024, type = 6 '\006', is_ref__gc = 0 '\0'}, {value = {lval = 13189152, dval = 6.5163069009783685e-317, str = {
        val = 0xc94020 "zip", len = 3}, ht = 0xc94020, obj = {handle = 13189152, handlers = 0x3}}, refcount__gc = 13054024,
    type = 6 '\006', is_ref__gc = 0 '\0'}, {value = {lval = 13189184, dval = 6.5163227110790355e-317, str = {
        val = 0xc94040 "application/zip", len = 15}, ht = 0xc94040, obj = {handle = 13189184, handlers = 0xf}}, refcount__gc = 11395760,
    type = 6 '\006', is_ref__gc = 0 '\0'}, {value = {lval = 13189184, dval = 6.5163227110790355e-317, str = {
        val = 0xc94040 "application/zip", len = 15}, ht = 0xc94040, obj = {handle = 13189184, handlers = 0xf}}, refcount__gc = 11395760,
    type = 6 '\006', is_ref__gc = 0 '\0'}, {value = {lval = 13189216, dval = 6.5163385211797024e-317, str = {val = 0xc94060 "", len = 15},
      ht = 0xc94060, obj = {handle = 13189216, handlers = 0xf}}, refcount__gc = 13054024, type = 6 '\006', is_ref__gc = 0 '\0'}, {value = {
      lval = 120, dval = 5.9287877500949585e-322, str = {val = 0x78 <Address 0x78 out of bounds>, len = 3}, ht = 0x78, obj = {
        handle = 120, handlers = 0x8500000003}}, refcount__gc = 13052424, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 140734670585696, dval = 6.9532165915176977e-310, str = {val = 0x7fff580c3f60 " Q\fX&#65533;\177", len = 7325305},
      ht = 0x7fff580c3f60, obj = {handle = 1477197664, handlers = 0x6fc679}}, refcount__gc = 13052744, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 0, type = 132 '\204', is_ref__gc = 5 '\005'}, {value = {lval = 8534424, dval = 4.2165657054430347e-317, str = {
        val = 0x823998 "/home/cristian/php5.3/main/streams/plain_wrapper.c", len = 13052504}, ht = 0x823998, obj = {handle = 8534424,
        handlers = 0xc72a58}}, refcount__gc = 1477202208, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 7131962,
      dval = 3.5236574116452284e-317, str = {val = 0x6cd33a "H\213\205&#65533;&#65533;&#65533;&#65533;H\211\205p&#65533;&#65533;&#65533;&#65533;XH\213\205&#65533;&#65533;&#65533;&#65533;H\211\205&#65533;&#65533;&#65533;&#65533;H\203&#65533;&#65533;&#65533;&#65533;&#65533;",
        len = 1409}, ht = 0x6cd33a, obj = {handle = 7131962, handlers = 0x581}}, refcount__gc = 8512712, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 1091, dval = 5.3902561961279998e-321, str = {val = 0x443 <Address 0x443 out of bounds>,
---Type <return> to continue, or q <return> to quit---
        len = 0}, ht = 0x443, obj = {handle = 1091, handlers = 0x0}}, refcount__gc = 13053024, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x44300000000}}, refcount__gc = 8512712, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 8512712, dval = 4.2058385521405296e-317, str = {
        val = 0x81e4c8 "/home/cristian/php5.3/main/main.c", len = 8534424}, ht = 0x81e4c8, obj = {handle = 8512712, handlers = 0x823998}},
    refcount__gc = 2, type = 133 '\205', is_ref__gc = 0 '\0'}, {value = {lval = 140734670591168, dval = 6.9532165917880505e-310, str = {
        val = 0x7fff580c54c0 "&#65533;*&#65533;", len = 8512099}, ht = 0x7fff580c54c0, obj = {handle = 1477203136, handlers = 0x81e263}},
    refcount__gc = 8513692, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 13059480, dval = 6.4522404205508424e-317, str = {
        val = 0xc74598 "test.ini", len = 0}, ht = 0xc74598, obj = {handle = 13059480, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {
        handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 13053024, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 13046504, dval = 6.4458294247304064e-317, str = {val = 0xc712e8 "/srv/www/htdocs/fs-stable/foo.php", len = 13052506},
---Type <return> to continue, or q <return> to quit---
      ht = 0xc712e8, obj = {handle = 13046504, handlers = 0xc72a5a}}, refcount__gc = 13052504, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 13052504, dval = 6.4487938186054539e-317, str = {val = 0xc72a58 "X1&#65533;", len = 0}, ht = 0xc72a58, obj = {
        handle = 13052504, handlers = 0x1900000000}}, refcount__gc = 8, type = 2 '\002', is_ref__gc = 0 '\0'}, {value = {
      lval = 7579123261883297582, dval = 4.55306798743021e+198, str = {
        val = 0x692e747365742f2e <Address 0x692e747365742f2e out of bounds>, len = 26990}, ht = 0x692e747365742f2e, obj = {
        handle = 1702113070, handlers = 0x696e}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'} <repeats 26 times>, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 7317789, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0,
        len = 112}, ht = 0x0, obj = {handle = 0, handlers = 0x70}}, refcount__gc = 1386348944, type = 30 '\036', is_ref__gc = 43 '+'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 219 '&#65533;', is_ref__gc = 2 '\002'}, {value = {lval = 8517288, dval = 4.2080993965358991e-317, str = {
        val = 0x81f6a8 "/home/cristian/php5.3/main/fopen_wrappers.c", len = 24}, ht = 0x81f6a8, obj = {handle = 8517288,
        handlers = 0x18}}, refcount__gc = 11395760, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0,
        len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 1386348968, type = 30 '\036', is_ref__gc = 43 '+'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 3}, ht = 0x0,
      obj = {handle = 0, handlers = 0x3}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 112, dval = 5.5335352334219613e-322, str = {val = 0x70 <Address 0x70 out of bounds>, len = 1386348864}, ht = 0x70,
---Type <return> to continue, or q <return> to quit---
      obj = {handle = 112, handlers = 0x2b1e52a20140}}, refcount__gc = 64, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 47409237302240, dval = 2.3423275446572123e-310, str = {val = 0x2b1e52bf9be0 "", len = 1477199040}, ht = 0x2b1e52bf9be0,
      obj = {handle = 1388288992, handlers = 0x7fff580c44c0}}, refcount__gc = 7325182, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 47409235362192, dval = 2.3423274488061055e-310, str = {val = 0x2b1e52a20190 <Address 0x2b1e52a20190 out of bounds>,
        len = 64}, ht = 0x2b1e52a20190, obj = {handle = 1386348944, handlers = 0x40}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 3139621093376, dval = 1.5511789231956141e-311, str = {
        val = 0x2db00000000 <Address 0x2db00000000 out of bounds>, len = 8517288}, ht = 0x2db00000000, obj = {handle = 0,
        handlers = 0x81f6a8}}, refcount__gc = 24, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 140734670587168,
      dval = 6.9532165915904242e-310, str = {val = 0x7fff580c4520 "&#65533;\233&#65533;R\036+", len = 7326528}, ht = 0x7fff580c4520, obj = {
        handle = 1477199136, handlers = 0x6fcb40}}, refcount__gc = 1477213872, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {
      lval = 47409235362192, dval = 2.3423274488061055e-310, str = {val = 0x2b1e52a20190 <Address 0x2b1e52a20190 out of bounds>, len = 0},
      ht = 0x2b1e52a20190, obj = {handle = 1386348944, handlers = 0x0}}, refcount__gc = 1409939808, type = 30 '\036',
    is_ref__gc = 43 '+'}, {value = {lval = 140734670591376, dval = 6.953216591798327e-310, str = {val = 0x7fff580c5590 "H\035a", len = 0},
      ht = 0x7fff580c5590, obj = {handle = 1477203344, handlers = 0x0}}, refcount__gc = 1477213872, type = 255 '&#65533;',
    is_ref__gc = 127 '\177'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 1406988150, type = 30 '\036', is_ref__gc = 43 '+'}, {value = {lval = 47409237302240, dval = 2.3423275446572123e-310,
      str = {val = 0x2b1e52bf9be0 "", len = 7011771}, ht = 0x2b1e52bf9be0, obj = {handle = 1388288992, handlers = 0x6afdbb}},
    refcount__gc = 1386348944, type = 30 '\036', is_ref__gc = 43 '+'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 1386348944},
      ht = 0x0, obj = {handle = 0, handlers = 0x2b1e52a20190}}, refcount__gc = 1477203680, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {
    value = {lval = 11448064, dval = 5.6560951337919243e-317, str = {val = 0xaeaf00 "/opt/php5.3/lib/php.ini", len = 23}, ht = 0xaeaf00,
      obj = {handle = 11448064, handlers = 0x17}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
---Type <return> to continue, or q <return> to quit---
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'} <repeats 16 times>, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 3 '\003', is_ref__gc = 0 '\0'}, {value = {lval = 80, dval = 3.9525251667299724e-322,
      str = {val = 0x50 <Address 0x50 out of bounds>, len = 26}, ht = 0x50, obj = {handle = 80, handlers = 0x1a}}, refcount__gc = 0,
    type = 3 '\003', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 80, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 130033, dval = 6.4244838125674812e-319,
      str = {val = 0x1fbf1 <Address 0x1fbf1 out of bounds>, len = 0}, ht = 0x1fbf1, obj = {handle = 130033, handlers = 0x0}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409258953056, dval = 2.3423286143496513e-310, str = {
        val = 0x2b1e5409f960 "", len = 26}, ht = 0x2b1e5409f960, obj = {handle = 1409939808, handlers = 0x1a}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 140734670601904, dval = 6.9532165923184793e-310, str = {
        val = 0x7fff580c7eb0 "\002", len = 0}, ht = 0x7fff580c7eb0, obj = {handle = 1477213872, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409258953056, dval = 2.3423286143496513e-310, str = {val = 0x2b1e5409f960 "",
        len = 1477204000}, ht = 0x2b1e5409f960, obj = {handle = 1409939808, handlers = 0x7fff580c5820}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 140734670601904, dval = 6.9532165923184793e-310, str = {val = 0x7fff580c7eb0 "\002", len = 0},
      ht = 0x7fff580c7eb0, obj = {handle = 1477213872, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 47409256001398, dval = 2.3423284685183697e-310, str = {val = 0x2b1e53dcef76 "\203=s?-", len = 1388288992},
      ht = 0x2b1e53dcef76, obj = {handle = 1406988150, handlers = 0x2b1e52bf9be0}}, refcount__gc = 7011771, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 140734670596736, dval = 6.9532165920631462e-310, str = {
        val = 0x7fff580c6a80 "/srv/www/htdocs/fs-stable/foo.php", len = 0}, ht = 0x7fff580c6a80, obj = {handle = 1477208704,
        handlers = 0x0}}, refcount__gc = 1477208704, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 140734670610939,
      dval = 6.9532165927648676e-310, str = {val = 0x7fff580ca1fb "foo.php", len = 13190128}, ht = 0x7fff580ca1fb, obj = {
---Type <return> to continue, or q <return> to quit---
        handle = 1477222907, handlers = 0xc943f0}}, refcount__gc = 33, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 1477199888}, ht = 0x0, obj = {handle = 0, handlers = 0x7fff580c4810}}, refcount__gc = 1477222907,
    type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 141733920778, dval = 7.0025861106794643e-313, str = {
        val = 0x210000000a <Address 0x210000000a out of bounds>, len = 1987212079}, ht = 0x210000000a, obj = {handle = 10,
        handlers = 0x7777772f7672732f}}, refcount__gc = 1685350447, type = 111 'o', is_ref__gc = 99 'c'}, {value = {
      lval = 7809911856590320486, dval = 1.237566608019779e+214, str = {
        val = 0x6c626174732d7366 <Address 0x6c626174732d7366 out of bounds>, len = 101}, ht = 0x6c626174732d7366, obj = {
        handle = 1932358502, handlers = 0x65}}, refcount__gc = 168, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409235378696,
      dval = 2.3423274496215114e-310, str = {val = 0x2b1e52a24208 <Address 0x2b1e52a24208 out of bounds>, len = 0}, ht = 0x2b1e52a24208,
      obj = {handle = 1386365448, handlers = 0x0}}, refcount__gc = 1388288992, type = 30 '\036', is_ref__gc = 43 '+'}, {value = {
      lval = 140734670588352, dval = 6.9532165916489216e-310, str = {val = 0x7fff580c49c0 "\020J\fX&#65533;\177", len = 7320729},
      ht = 0x7fff580c49c0, obj = {handle = 1477200320, handlers = 0x6fb499}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 1386365528}, ht = 0x0, obj = {handle = 0, handlers = 0x2b1e52a24258}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {
        handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 252 '&#65533;', is_ref__gc = 2 '\002'}, {value = {lval = 8515928,
      dval = 4.207427467257555e-317, str = {val = 0x81f158 "/home/cristian/php5.3/main/spprintf.c", len = 79}, ht = 0x81f158, obj = {
        handle = 8515928, handlers = 0x4f}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 11395760,
      dval = 5.6302535242518437e-317, str = {val = 0xade2b0 "\001", len = 0}, ht = 0xade2b0, obj = {handle = 11395760, handlers = 0x0}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {
        handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
---Type <return> to continue, or q <return> to quit---
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 4294967216, type = 255 '&#65533;',
    is_ref__gc = 255 '&#65533;'}, {value = {lval = 47409237302240, dval = 2.3423275446572123e-310, str = {val = 0x2b1e52bf9be0 "",
        len = 1477200400}, ht = 0x2b1e52bf9be0, obj = {handle = 1388288992, handlers = 0x7fff580c4a10}}, refcount__gc = 7325442,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 140733193388032, dval = 6.9531436082559078e-310, str = {
        val = 0x7fff00000000 <Address 0x7fff00000000 out of bounds>, len = 1386365528}, ht = 0x7fff00000000, obj = {handle = 0,
        handlers = 0x2b1e52a24258}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 3281355014144,
      dval = 1.621204784297468e-311, str = {val = 0x2fc00000000 <Address 0x2fc00000000 out of bounds>, len = 8515928}, ht = 0x2fc00000000,
      obj = {handle = 0, handlers = 0x81f158}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 79,
      dval = 3.9031186021458477e-322, str = {val = 0x4f <Address 0x4f out of bounds>, len = 0}, ht = 0x4f, obj = {handle = 79,
        handlers = 0x0}}, refcount__gc = 1477201568, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 7001737,
      dval = 3.4593177129155521e-317, str = {val = 0x6ad689 "H\213\205h&#65533;&#65533;&#65533;H\213\215\030&#65533;&#65533;&#65533;H\211H\b\203&#65533;&#65533;&#65533;&#65533;&#65533;", len = 0}, ht = 0x6ad689,
      obj = {handle = 7001737, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
---Type <return> to continue, or q <return> to quit---
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 35 '#', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 429496729600, dval = 2.1219957909652723e-312, str = {
        val = 0x6400000000 <Address 0x6400000000 out of bounds>, len = 0}, ht = 0x6400000000, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {
        handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 140734670589784, dval = 6.9532165917196718e-310, str = {val = 0x7fff580c4f58 "\r\020s", len = 0}, ht = 0x7fff580c4f58,
      obj = {handle = 1477201752, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 78, dval = 3.853712037561723e-322, str = {val = 0x4e <Address 0x4e out of bounds>, len = 0}, ht = 0x4e, obj = {
---Type <return> to continue, or q <return> to quit---
        handle = 78, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 5}, ht = 0x0, obj = {handle = 0, handlers = 0x5}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 140734670589728, dval = 6.953216591716905e-310, str = {val = 0x7fff580c4f20 " ", len = 8590023}, ht = 0x7fff580c4f20,
      obj = {handle = 1477201696, handlers = 0x8312c7}}, refcount__gc = 1477201616, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {
      lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 1477201616, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0},
      ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 14335,
      dval = 7.0824310331342692e-320, str = {val = 0x37ff <Address 0x37ff out of bounds>, len = 0}, ht = 0x37ff, obj = {handle = 14335,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0,
        len = 1477201547}, ht = 0x0, obj = {handle = 0, handlers = 0x7fff580c4e8b}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 5, type = 1 '\001', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {
        handle = 0, handlers = 0x500000000}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 2305843009213693952,
      dval = 1.4916681462400413e-154, str = {val = 0x2000000000000000 <Address 0x2000000000000000 out of bounds>, len = 0},
      ht = 0x2000000000000000, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}}, refcount__gc = 0, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 0}, ht = 0x0, obj = {handle = 0, handlers = 0x0}},
    refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 3936}, ht = 0x0, obj = {
        handle = 0, handlers = 0xf60}}, refcount__gc = 130, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 2312,
      dval = 1.142279773184962e-320, str = {val = 0x908 <Address 0x908 out of bounds>, len = 1477201248}, ht = 0x908, obj = {
---Type <return> to continue, or q <return> to quit---
        handle = 2312, handlers = 0x7fff580c4d60}}, refcount__gc = 11, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 140734670589280, dval = 6.9532165916947709e-310, str = {val = 0x7fff580c4d60 "x\031\203", len = 7309165},
      ht = 0x7fff580c4d60, obj = {handle = 1477201248, handlers = 0x6f876d}}, refcount__gc = 1386363136, type = 30 '\036',
    is_ref__gc = 43 '+'}, {value = {lval = 11395760, dval = 5.6302535242518437e-317, str = {val = 0xade2b0 "\001", len = 1386361512},
      ht = 0xade2b0, obj = {handle = 11395760, handlers = 0x2b1e52a232a8}}, refcount__gc = 11395760, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 0, dval = 0, str = {val = 0x0, len = 7314662}, ht = 0x0, obj = {handle = 0, handlers = 0x6f9ce6}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 8291963487718998017, dval = 2.0726789383019414e+246, str = {
        val = 0x7312f8dc00000001 <Address 0x7312f8dc00000001 out of bounds>, len = 0}, ht = 0x7312f8dc00000001, obj = {handle = 1,
        handlers = 0x0}}, refcount__gc = 1112, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 8591736,
      dval = 4.2448815957374882e-317, str = {val = 0x831978 "/home/cristian/php5.3/Zend/zend_stack.c", len = 10}, ht = 0x831978, obj = {
        handle = 8591736, handlers = 0xa}}, refcount__gc = 1477201360, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 7309165,
      dval = 3.6112073262852348e-317, str = {val = 0x6f876d "\211&#65533;H\211E&#65533;H\213U&#65533;H\201&#65533;\230\006", len = 1386355208}, ht = 0x6f876d, obj = {
        handle = 7309165, handlers = 0x2b1e52a21a08}}, refcount__gc = 11395760, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0,
      dval = 0, str = {val = 0x0, len = 13}, ht = 0x0, obj = {handle = 0, handlers = 0x290000000d}}, refcount__gc = 1386356312,
    type = 30 '\036', is_ref__gc = 43 '+'}, {value = {lval = 47409235368456, dval = 2.3423274491155882e-310, str = {
        val = 0x2b1e52a21a08 <Address 0x2b1e52a21a08 out of bounds>, len = 1409939896}, ht = 0x2b1e52a21a08, obj = {handle = 1386355208,
        handlers = 0x2b1e5409f9b8}}, refcount__gc = 1409939896, type = 30 '\036', is_ref__gc = 43 '+'}, {value = {lval = 0, dval = 0,
      str = {val = 0x0, len = 11460272}, ht = 0x0, obj = {handle = 0, handlers = 0xaedeb0}}, refcount__gc = 1040, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 47409258953152, dval = 2.3423286143543943e-310, str = {val = 0x2b1e5409f9c0 "&#65533;D&#65533;",
        len = 1409939808}, ht = 0x2b1e5409f9c0, obj = {handle = 1409939904, handlers = 0x2b1e5409f960}}, refcount__gc = 11459248,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 2064, dval = 1.0197514930163329e-320, str = {
---Type <return> to continue, or q <return> to quit---
        val = 0x810 <Address 0x810 out of bounds>, len = 1406989621}, ht = 0x810, obj = {handle = 2064, handlers = 0x2b1e53dcf535}},
    refcount__gc = 1404413104, type = 41 ')', is_ref__gc = 0 '\0'}, {value = {lval = 554059372920, dval = 2.7374170191611587e-312, str = {
        val = 0x8100831978 <Address 0x8100831978 out of bounds>, len = 2096}, ht = 0x8100831978, obj = {handle = 8591736,
        handlers = 0x830}}, refcount__gc = 2049, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 343597384792,
      dval = 1.6975966382662278e-312, str = {val = 0x5000000458 <Address 0x5000000458 out of bounds>, len = 236080}, ht = 0x5000000458,
      obj = {handle = 1112, handlers = 0x39a30}}, refcount__gc = 2048, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 235992,
      dval = 1.1659553989336745e-318, str = {val = 0x399d8 <Address 0x399d8 out of bounds>, len = 1477201584}, ht = 0x399d8, obj = {
        handle = 235992, handlers = 0x1f580c4eb0}}, refcount__gc = 17, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 140734670589616, dval = 6.9532165917113715e-310, str = {val = 0x7fff580c4eb0 "&#65533;S\fX&#65533;\177", len = 235552},
      ht = 0x7fff580c4eb0, obj = {handle = 1477201584, handlers = 0x39820}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 235464, dval = 1.1633467323236328e-318, str = {val = 0x397c8 <Address 0x397c8 out of bounds>, len = 1477201632},
      ht = 0x397c8, obj = {handle = 235464, handlers = 0x7fff580c4ee0}}, refcount__gc = 17, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {
      lval = 140734670590864, dval = 6.9532165917730309e-310, str = {val = 0x7fff580c5390 "&#65533;\220&#65533;R\036+", len = 1477202896},
      ht = 0x7fff580c5390, obj = {handle = 1477202832, handlers = 0x7fff580c53d0}}, refcount__gc = 1477202832, type = 255 '&#65533;',
    is_ref__gc = 127 '\177'}, {value = {lval = 140734670590936, dval = 6.9532165917765881e-310, str = {val = 0x7fff580c53d8 "",
        len = 1386366880}, ht = 0x7fff580c53d8, obj = {handle = 1477202904, handlers = 0x652a247a0}}, refcount__gc = 1477202832,
    type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 140734670590944, dval = 6.9532165917769834e-310, str = {
        val = 0x7fff580c53e0 "\020T\fX&#65533;\177", len = 17}, ht = 0x7fff580c53e0, obj = {handle = 1477202912, handlers = 0x300000011}},
    refcount__gc = 64, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 24, dval = 1.1857575500189917e-322, str = {
        val = 0x18 <Address 0x18 out of bounds>, len = 17}, ht = 0x18, obj = {handle = 24, handlers = 0x200000011}},
    refcount__gc = 7314662, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409258953056, dval = 2.3423286143496513e-310, str = {
---Type <return> to continue, or q <return> to quit---
        val = 0x2b1e5409f960 "", len = 1409939808}, ht = 0x2b1e5409f960, obj = {handle = 1409939808, handlers = 0x2b1e5409f960}},
    refcount__gc = 11452272, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 24, dval = 1.1857575500189917e-322, str = {
        val = 0x18 <Address 0x18 out of bounds>, len = 0}, ht = 0x18, obj = {handle = 24, handlers = 0x0}}, refcount__gc = 1,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 1406996768}, ht = 0x0, obj = {handle = 0,
        handlers = 0x2b1e53dd1120}}, refcount__gc = 32, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409237302240,
      dval = 2.3423275446572123e-310, str = {val = 0x2b1e52bf9be0 "", len = 1477201792}, ht = 0x2b1e52bf9be0, obj = {handle = 1388288992,
        handlers = 0x7fff580c4f80}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 140734670601904,
      dval = 6.9532165923184793e-310, str = {val = 0x7fff580c7eb0 "\002", len = 3}, ht = 0x7fff580c7eb0, obj = {handle = 1477213872,
        handlers = 0x3}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 7540749, dval = 3.725625024811734e-317,
      str = {val = 0x73100d "H\211E&#65533;H\203}&#65533;", len = 1388288992}, ht = 0x73100d, obj = {handle = 7540749, handlers = 0x2b1e52bf9be0}},
    refcount__gc = 11452272, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 140734670590452, dval = 6.9532165917526754e-310, str = {
        val = 0x7fff580c51f4 "&#65533;\177", len = 1477202400}, ht = 0x7fff580c51f4, obj = {handle = 1477202420, handlers = 0x7fff580c51e0}},
    refcount__gc = 1477202640, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {lval = 140734670590864, dval = 6.9532165917730309e-310,
      str = {val = 0x7fff580c5390 "&#65533;\220&#65533;R\036+", len = 1387434280}, ht = 0x7fff580c5390, obj = {handle = 1477202832,
        handlers = 0x2b1e52b29128}}, refcount__gc = 0, type = 2 '\002', is_ref__gc = 0 '\0'}, {value = {lval = 140734670601904,
      dval = 6.9532165923184793e-310, str = {val = 0x7fff580c7eb0 "\002", len = 0}, ht = 0x7fff580c7eb0, obj = {handle = 1477213872,
        handlers = 0x0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 47409256008716,
      dval = 2.3423284688799269e-310, str = {val = 0x2b1e53dd0c0c "H\205&#65533;I\211&#65533;t2\203=&#65533;\"-", len = 11452272}, ht = 0x2b1e53dd0c0c, obj = {
        handle = 1406995468, handlers = 0xaebf70}}, refcount__gc = 1477201936, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {
      lval = 0, dval = 0, str = {val = 0x0, len = 7326632}, ht = 0x0, obj = {handle = 0, handlers = 0x6fcba8}}, refcount__gc = 11447616,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 11452304, dval = 5.6581899721302912e-317, str = {val = 0xaebf90 "-1", len = 3},
---Type <return> to continue, or q <return> to quit---
      ht = 0xaebf90, obj = {handle = 11452304, handlers = 0x200000003}}, refcount__gc = 11447584, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = -2583469132179213240, dval = -7.8767059542592356e+135, str = {
        val = 0xdc25ac8318457448 <Address 0xdc25ac8318457448 out of bounds>, len = 11452304}, ht = 0xdc25ac8318457448, obj = {
        handle = 407204936, handlers = 0xaebf90}}, refcount__gc = 1477202096, type = 255 '&#65533;', is_ref__gc = 127 '\177'}, {value = {
      lval = 7013250, dval = 3.4650058906961223e-317, str = {val = 0x6b0382 "H\211\003&#65533;&#65533;\003", len = 1}, ht = 0x6b0382, obj = {
        handle = 7013250, handlers = 0x2b1e00000001}}, refcount__gc = 8517640, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 216,
      dval = 1.0671817950170925e-321, str = {val = 0xd8 <Address 0xd8 out of bounds>, len = 7317789}, ht = 0xd8, obj = {handle = 216,
        handlers = 0x6fa91d}}, refcount__gc = 11369824, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 96,
      dval = 4.7430302000759668e-322, str = {val = 0x60 <Address 0x60 out of bounds>, len = 13059672}, ht = 0x60, obj = {handle = 96,
        handlers = 0xc74658}}, refcount__gc = 1477202240, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {
        val = 0x0, len = 11447584}, ht = 0x0, obj = {handle = 0, handlers = 0x72000aead20}}, refcount__gc = 8531720, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 9, dval = 4.4465908125712189e-323, str = {val = 0x9 <Address 0x9 out of bounds>,
        len = 11395760}, ht = 0x9, obj = {handle = 9, handlers = 0xade2b0}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {
    value = {lval = 140733193388032, dval = 6.9531436082559078e-310, str = {val = 0x7fff00000000 <Address 0x7fff00000000 out of bounds>,
        len = 1477202168}, ht = 0x7fff00000000, obj = {handle = 0, handlers = 0x7fff580c50f8}}, refcount__gc = 0, type = 44 ',',
    is_ref__gc = 0 '\0'}, {value = {lval = 8576082, dval = 4.2371474921174893e-317, str = {val = 0x82dc52 "Cleanup: popping",
        len = 1477207696}, ht = 0x82dc52, obj = {handle = 8576082, handlers = 0x7fff580c6690}}, refcount__gc = 7274478, type = 0 '\0',
    is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 13059681}, ht = 0x0, obj = {handle = 0,
        handlers = 0xc74661}}, refcount__gc = 0, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 1, dval = 4.9406564584124654e-324,
      str = {val = 0x1 <Address 0x1 out of bounds>, len = 0}, ht = 0x1, obj = {handle = 1, handlers = 0x0}}, refcount__gc = 0,
    type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 0, dval = 0, str = {val = 0x0, len = 7096715}, ht = 0x0, obj = {handle = 0,
---Type <return> to continue, or q <return> to quit---
        handlers = 0x6c498b}}, refcount__gc = 96, type = 0 '\0', is_ref__gc = 0 '\0'}, {value = {lval = 13059592,
      dval = 6.4522957559031766e-317, str = {val = 0xc74608 "a &#65533;&#65533;", len = 11447584}, ht = 0xc74608, obj = {handle = 13059592,
        handlers = 0xaead20}}, refcount__gc = 11358432, type = 0 '\0', is_ref__gc = 0 '\0'}}
        yyvs = (zval *) 0x7fff580c3e60
        yyvsp = (zval *) 0x7fff580c3ec0
        yystacksize = 200
        yyval = {value = {lval = 13189184, dval = 6.5163227110790355e-317, str = {val = 0xc94040 "application/zip", len = 15},
    ht = 0xc94040, obj = {handle = 13189184, handlers = 0xf}}, refcount__gc = 11395760, type = 6 '\006', is_ref__gc = 0 '\0'}
        yylen = 0
#2  0x00000000006ee9ca in zend_parse_ini_file (fh=0x7fff580c54b0, unbuffered_errors=0 '\0', scanner_mode=0,
    ini_parser_cb=0x611c07 <php_ini_parser_cb_with_sections>, arg=0xc728a8) at /home/cristian/php5.3/Zend/zend_ini_parser.y:206
        retval = 0
        ini_parser_param = {ini_parser_cb = 0x611c07 <php_ini_parser_cb_with_sections>, arg = 0xc728a8}
#3  0x0000000000611ebd in zif_parse_ini_file (ht=2, return_value=0xc728a8, return_value_ptr=0x0, this_ptr=0x0, return_value_used=0)
    at /home/cristian/php5.3/ext/standard/basic_functions.c:6234
        filename = 0xc74598 "test.ini"
        filename_len = 8
        process_sections = 1 '\001'
        scanner_mode = 0
        fh = {type = ZEND_HANDLE_MAPPED, filename = 0xc74598 "test.ini", opened_path = 0xc72ad0 "/srv/www/htdocs/fs-stable/test.ini",
  handle = {fd = 13053024, fp = 0xc72c60, stream = {handle = 0xc72c60, isatty = 0, mmap = {len = 63, pos = 0, map = 0x0,
---Type <return> to continue, or q <return> to quit---
        buf = 0x2b1e52a1e000 "[attachments]\nzip = \"application/zip\" ; MIME-type for ZIP files", old_handle = 0x0, old_closer = 0},
      reader = 0x6c215f <_php_stream_read>, fsizer = 0x6a59a1 <php_zend_stream_fsizer>, closer = 0x6a5981 <php_zend_stream_mmap_closer>}},
  free_filename = 0 '\0'}
        ini_parser_cb = (zend_ini_parser_cb_t) 0x611c07 <php_ini_parser_cb_with_sections>
#4  0x0000000000752e86 in zend_do_fcall_common_helper_SPEC (execute_data=0x2b1e52b29090)
    at /home/cristian/php5.3/Zend/zend_vm_execute.h:190
        opline = (zend_op *) 0xc72760
        current_scope = (zend_class_entry *) 0xf00c71270
        current_called_scope = (zend_class_entry *) 0xc332a97db1e1995e
        current_this = (zval *) 0x2b1e52b29098
        should_change_scope = 0 '\0'
        ex_object = (zval *) 0x0
#5  0x0000000000758e24 in ZEND_DO_FCALL_SPEC_CONST_HANDLER (execute_data=0x2b1e52b29090)
    at /home/cristian/php5.3/Zend/zend_vm_execute.h:1377
        opline = (zend_op *) 0xc72760
        fname = (zval *) 0xc72790
#6  0x00000000007526c9 in execute (op_array=0xc72058) at /home/cristian/php5.3/Zend/zend_vm_execute.h:91
        execute_data = (zend_execute_data *) 0x2b1e52b29090
#7  0x0000000000722c57 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /home/cristian/php5.3/Zend/zend.c:1170
        files = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff580c5830, reg_save_area = 0x7fff580c5770}}
        i = 1
---Type <return> to continue, or q <return> to quit---
        file_handle = (zend_file_handle *) 0x7fff580c7be0
        orig_op_array = (zend_op_array *) 0x0
        orig_retval_ptr_ptr = (zval **) 0x0
        local_retval = (zval *) 0x0
#8  0x00000000006a79f1 in php_execute_script (primary_file=0x7fff580c7be0) at /home/cristian/php5.3/main/main.c:2059
        realfile = "/srv/www/htdocs/fs-stable/foo.php", '\0' <repeats 72 times>, "@\001\000\000\000\000\000\214:\001\000\000\000\000\000&#65533;G\236R\036+\000\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000\0000!\000\000\000\000\000\000P!\000\000\000\000\000XC!\000\000\000\000\000&#65533;H\236R\036+\000\000\0000\001\000\000\000\000\000&#65533;z\fX&#65533;\177\000\000@{\fX&#65533;\177\000\000\030&#65533;\206T\036+\000\000\000\000\000\000\000\000\000\000&#65533;l\fX&#65533;\177\000\000\002\000\000\000\000\000\000\000\r\217\236R\036+\000\000\000\000\000\000\000\000\000\000(&#65533;&#65533;R\036+\000\000\000\000\000\000\000\000"...
        __orig_bailout = (jmp_buf *) 0x7fff580c7b10
        __bailout = {{__jmpbuf = {47409237302240, -1476096024656478700, 0, 140734670601904, 0, 0, -1476096025684083180,
      1476453558615408148}, __mask_was_saved = 0, __saved_mask = {__val = {23, 25769803776, 0, 140734670596544, 47409253426352,
        47409255559888, 47409253426352, 140734670596288, 4294967295, 4272111, 11334304, 0, 140734670601904, 0, 0, 0}}}}
        prepend_file_p = (zend_file_handle *) 0x0
        append_file_p = (zend_file_handle *) 0x0
        prepend_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {
      handle = 0x0, isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0, old_handle = 0x0, old_closer = 0}, reader = 0, fsizer = 0,
      closer = 0}}, free_filename = 0 '\0'}
        append_file = {type = ZEND_HANDLE_FILENAME, filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0,
      isatty = 0, mmap = {len = 0, pos = 0, map = 0x0, buf = 0x0, old_handle = 0x0, old_closer = 0}, reader = 0, fsizer = 0, closer = 0}},
---Type <return> to continue, or q <return> to quit---
  free_filename = 0 '\0'}
        old_cwd = 0x7fff580c5850 ""
        use_heap = 0 '\0'
        retval = 0
#9  0x00000000007c4eed in main (argc=2, argv=0x7fff580c7eb8) at /home/cristian/php5.3/sapi/cli/php_cli.c:1140
        __orig_bailout = (jmp_buf *) 0x0
        __bailout = {{__jmpbuf = {47409237302240, -1476096024765530604, 0, 140734670601904, 0, 0, -1476096024662770156,
      1476453471163514388}, __mask_was_saved = 0, __saved_mask = {__val = {0, 0, 0, 0, 0, 0, 0, 140734670601232, 0, 0, 0, 0,
        47409267245296, 47409237304640, 47409237306464, 281474976710656}}}}
        exit_status = 0
        c = -1
        file_handle = {type = ZEND_HANDLE_MAPPED, filename = 0x7fff580ca1fb "foo.php", opened_path = 0x0, handle = {fd = 13051032,
    fp = 0xc72498, stream = {handle = 0xc72498, isatty = 0, mmap = {len = 40, pos = 0, map = 0x2b1e52bec000,
        buf = 0x2b1e52bec000 <Address 0x2b1e52bec000 out of bounds>, old_handle = 0xc93f70,
        old_closer = 0x73f170 <zend_stream_stdio_closer>}, reader = 0x73f144 <zend_stream_stdio_reader>,
      fsizer = 0x73f1a1 <zend_stream_stdio_fsizer>, closer = 0x73f29e <zend_stream_mmap_closer>}}, free_filename = 0 '\0'}
        behavior = 1
        reflection_what = 0x0
        orig_optind = 1
        orig_optarg = 0x0
        arg_free = 0x7fff580ca1fb "foo.php"
---Type <return> to continue, or q <return> to quit---
        arg_excp = (char **) 0x7fff580c7ec0
        script_file = 0x7fff580ca1fb "foo.php"
        interactive = 0
        module_started = 1
        request_started = 1
        lineno = 1
        exec_direct = 0x0
        exec_run = 0x0
        exec_begin = 0x0
        exec_end = 0x0
        param_error = 0x0
        hide_argv = 0
        ini_entries_len = 110


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2008-03-17 23:35 UTC] felipe@php.net
Works fine to me.
 [2008-03-18 21:50 UTC] jani@php.net
Did you do './cvsclean && ./buildconf' ? And what re2c version do you have installed?
 [2008-03-19 21:12 UTC] crrodriguez at suse dot de
I have:

re2c -v
re2c 0.13.3


I have checked a fresh-, clean CVS copy just now and i can still reproduce the problem.

Here I have the exact ini file that makes php crash

http://stuff.cristianrodriguez.net/phpbugs/bug44461.tar.bz2

# cd bug44461
# ./sapi/cli/php bug44461.php
 [2008-03-19 21:34 UTC] scottmac@php.net
I can confirm this, its over-reading by a character if there is no newline at the end of the file.
 [2008-03-21 00:25 UTC] nlopess@php.net
damn, oh I hate YYFILL.. the problem is this piece of code generated by re2c:

yy282:
	++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
yy283:
	switch (yych) {
	case '\n':	goto yy284;
	case '\r':	goto yy286;
	default:	goto yy282;
	}
yy284:
	++YYCURSOR;
yy285:
	yyleng = YYCURSOR - SCNG(yy_text);
#line 476 "zend_ini_scanner.l"
	{ /* Comment */
	BEGIN(INITIAL);
	SCNG(lineno)++;
	return END_OF_LINE;
}

the problem is that YYFILL(2) is ignored (because it's > 1). I dunno why re2c doesn't generate a YYFILL(1) there instead..
 [2008-03-21 00:33 UTC] nlopess@php.net
ok, I misread the action for '\r'.
there's this code as well:
yy286:
	yych = *++YYCURSOR;
	switch (yych) {
	case '\n':	goto yy284;
	default:	goto yy285;
	}

so it's yyfill(2) because of \r\n. Dunno where to patch this.. we can either change the regex and check for the newline manually (which is sort of a hack), enable yyfill for lens > 1 (what's the "safe" threshold?), or change the yyfill macro to something smarter..
 [2008-03-21 15:46 UTC] helly@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.


 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Fri Jun 05 17:01:23 2020 UTC