After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 760085 - Crash (SIGABRT) in mathfunc.c on a fuzzed xls file
Crash (SIGABRT) in mathfunc.c on a fuzzed xls file
Status: RESOLVED FIXED
Product: Gnumeric
Classification: Applications
Component: import/export MS Excel (tm)
git master
Other Linux
: Normal critical
: ---
Assigned To: Jody Goldberg
Jody Goldberg
Depends on:
Blocks:
 
 
Reported: 2016-01-02 23:10 UTC by jutaky
Modified: 2016-01-02 23:15 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description jutaky 2016-01-02 23:10:39 UTC
Git versions of gtk, glib, goffice, gnumeric, libgsf and libxml2.

Test case: http://jutaky.com/fuzzing/gnumeric_case_001-mathfunc.c.xls

$ ssconvert gnumeric_case_001-mathfunc.c.xls /tmp/out.gnumeric

Program received signal SIGABRT, Aborted.
0x00007ffff16be5f8 in raise () from /usr/lib/libc.so.6
(gdb) bt
  • #0 raise
    from /usr/lib/libc.so.6
  • #1 abort
    from /usr/lib/libc.so.6
  • #2 g_assertion_message
  • #3 g_assertion_message_expr
    at gtestutils.c line 2452
  • #4 ebd0
  • #5 pow1p
  • #6 xirr_npv
  • #7 goal_seek_bisection
    at goal-seek.c line 548
  • #8 gnm_range_xirr
    at functions.c line 1659
  • #9 float_range_function2d
  • #10 gnumeric_xirr
    at functions.c line 1679
  • #11 function_call_with_exprs
    at func.c line 2101
  • #12 gnm_expr_eval
    at expr.c line 1453
  • #13 gnm_expr_top_eval
  • #14 gnm_cell_eval_content
    at dependent.c line 1663
  • #15 cell_dep_eval
    at dependent.c line 1250
  • #16 dependent_eval
    at dependent.c line 1753
  • #17 gnm_cell_eval
    at dependent.c line 1767
  • #18 value_area_get_x_y
    at value-sheet.c line 220
  • #19 get_elem
    at functions.c line 529
  • #20 find_index_bisection
    at functions.c line 708
  • #21 gnumeric_match
    at functions.c line 1298
  • #22 function_call_with_exprs
    at func.c line 2101
  • #23 gnm_expr_eval
    at expr.c line 1453
  • #24 gnm_expr_eval
    at expr.c line 1294
  • #25 function_call_with_exprs
    at func.c line 1932
  • #26 gnm_expr_eval
    at expr.c line 1453
  • #27 function_call_with_exprs
    at func.c line 1906
  • #28 gnm_expr_eval
    at expr.c line 1453
  • #29 gnm_expr_top_eval
  • #30 gnm_cell_eval_content
    at dependent.c line 1663
  • #31 cell_dep_eval
    at dependent.c line 1250
  • #32 dependent_eval
    at dependent.c line 1753
  • #33 workbook_recalc
    at dependent.c line 2867
  • #34 workbook_view_new_from_input
    at workbook-view.c line 1294
  • #35 workbook_view_new_from_uri
    at workbook-view.c line 1337
  • #36 convert
    at ssconvert.c line 715
  • #37 main
    at ssconvert.c line 918

--
Juha Kylmänen
Comment 1 Morten Welinder 2016-01-02 23:15:26 UTC
This problem has been fixed in our software repository. The fix will go into the next software release. Once that release is available, you may want to check for a software upgrade provided by your Linux distribution.