Package: gq Version: 1.3.4-1 Severity: normal --- Please enter the report below this line. --- If gnome-keyring is not installed and File -> Preferences -> Servers -> Some entry -> Connections -> "Ask for Password on first Connection" is unchecked, gq crashes when clicking on the "+" to open a server connection. The same crash happens if you decline access to the password in the gnome-keyring dialog! A backtrace with debugging symbols has been attached. A shorthand solution would be to let gq depend on gnome-keyring. In the end upstream should handle a missing gnome-keyring-daemon correctly: Fall back to safe plain-text-passwords in the gq-config or do not offer the save password option. Testers beware: Purging gnome-keyring does not stop the gnome-keyring-daemon! You have to kill it or reboot to see gq crashing! And the "Bind DN"-filed has a "UTF-8 problem"... --- System information. --- Architecture: amd64 Kernel: Linux 2.6.32-px1-amd64 Debian Release: sid --- Package information. --- Depends (Version) | Installed ===================================-+-============== libatk1.0-0 (>= 1.20.0) | 1.28.0-1 libc6 (>= 2.7) | 2.10.2-5 libcairo2 (>= 1.2.4) | 1.8.8-2 libfontconfig1 (>= 2.8.0) | 2.8.0-2 libfreetype6 (>= 2.2.1) | 2.3.11-1 libglade2-0 (>= 1:2.6.1) | 1:2.6.4-1 libglib2.0-0 (>= 2.16.0) | 2.22.4-1 libgnome-keyring0 (>= 2.20.3) | 2.28.2-1 libgtk2.0-0 (>= 2.10.0) | 2.18.6-1 libldap-2.4-2 (>= 2.4.7) | 2.4.17-2.1 libpango1.0-0 (>= 1.14.0) | 1.26.2-1 libssl0.9.8 (>= 0.9.8k-1) | 0.9.8k-8 libxml2 (>= 2.7.4) | 2.7.6.dfsg-2+b1
$ gdb gq GNU gdb (GDB) 7.0.1-debian Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/gq...done. (gdb) run Starting program: /usr/bin/gq [Thread debugging using libthread_db enabled] ** (gq:23455): WARNING **: couldn't communicate with gnome keyring daemon via dbus: The name org.gnome.keyring was not provided by any .service files ** (gq:23455): WARNING **: couldn't communicate with gnome keyring daemon via dbus: The name org.gnome.keyring was not provided by any .service files ** (gq:23455): WARNING **: couldn't communicate with gnome keyring daemon via dbus: The name org.gnome.keyring was not provided by any .service files ** Message: FIXME: implement with GtkTreeView ** Message: FIXME: implement with GtkTreeView ** Message: FIXME: implement with GtkTreeView ** Message: FIXME: implement with GtkTreeView ** (gq:23455): WARNING **: couldn't communicate with gnome keyring daemon via dbus: The name org.gnome.keyring was not provided by any .service files Program received signal SIGSEGV, Segmentation fault. 0x00007ffff43ac451 in _IO_vfprintf_internal (s=0x7fffffffd5d0, format=<value optimized out>, ap=0x7fffffffd780) at vfprintf.c:1601 1601 vfprintf.c: No such file or directory. in vfprintf.c (gdb) bt full #0 0x00007ffff43ac451 in _IO_vfprintf_internal (s=0x7fffffffd5d0, format=<value optimized out>, ap=0x7fffffffd780) at vfprintf.c:1601 len = <value optimized out> string_malloced = <value optimized out> step0_jumps = {0, 3429, 3508, 6312, 6398, 2688, 2781, 5665, 3688, 3864, 4093, 1453, 1532, 1621, 1851, 1898, 3673, 3038, 5571, 4996, 6074, -557, 4172, 4261, 6033, -2786, 5293, 1710, 1779, 5586} space = 0 is_short = 0 use_outdigits = 0 step1_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 3864, 4093, 1453, 1532, 1621, 1851, 1898, 3673, 3038, 5571, 4996, 6074, -557, 4172, 4261, 6033, -2786, 5293, 1710, 1779, 0} group = 0 prec = <value optimized out> step2_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4093, 1453, 1532, 1621, 1851, 1898, 3673, 3038, 5571, 4996, 6074, -557, 4172, 4261, 6033, -2786, 5293, 1710, 1779, 0} string = 0xff00000000000000 <Address 0xff00000000000000 out of bounds> left = 0 is_long_double = 0 width = <value optimized out> step3a_jumps = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5944, 0, 0, 0, 1851, 1898, 3673, 3038, 5571, 0, 0, 0, 0, 4261, 0, 0, 0, 0, 0, 0} alt = 0 showsign = 0 is_long = 0 is_char = 0 pad = <value optimized out> step3b_jumps = {0 <repeats 11 times>, 1532, 0, 0, 1851, 1898, 3673, 3038, 5571, 4996, 6074, -557, 4172, 4261, 6033, -2786, 5293, 0, 0, 0} step4_jumps = {0 <repeats 14 times>, 1851, 1898, 3673, 3038, 5571, 4996, 6074, -557, 4172, 4261, 6033, -2786, 5293, 0, 0, 0} is_negative = <value optimized out> base = 0 the_arg = {pa_wchar = 1 L'\001', pa_int = 1, pa_long_int = 1, pa_long_long_int = 1, pa_u_int = 1, pa_u_long_int = 1, pa_u_long_long_int = 1, pa_double = 4.9406564584124654e-324, pa_long_double = <invalid float value>, pa_string = 0x1 <Address 0x1 out of bounds>, pa_wstring = 0x1 <Address 0x1 out of bounds>, pa_pointer = 0x1, pa_user = 0x1} spec = 115 's' _buffer = {__routine = 0x1, __arg = 0x7e5a60, __canceltype = -10928, __prev = 0x0} _avail = 0 thousands_sep = 0x0 grouping = 0xffffffffffffffff <Address 0xffffffffffffffff out of bounds> done = 18 f = 0x4619ec "s" lead_str_end = 0x4619eb "%s" work_buffer = "\000\000\000\000\377\177\000\000\377\377\377\377\000\000\000\000\377\377\377\377\000\000\000\000\270\324\377\377\377\177\000\000\332WF\000\000\000\000\000(\025\000\000\000\000\000\000\001\000\000\000\000\000\000\000\244\201", '\000' <repeats 22 times>"\275, \000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\b\000\000\000\000\062\071\070\002\347kK\000\000\000\000\200\003\270\066\000\000\000\000\002\347kK\000\000\000\000F\326\216\063\000\000\000\000\002\347kK\000\000\000\000\020\000\000\000\060\000\000\000P\324\377\377\377\177\000\000\220\323\377\377\377\177\000\000\000\000\000\000\000\000\000\000\220\325\377\377\377\177\000\000h\351@\364\377\177\000\000\340\266g\000\000\000\000\000\355X@\364\377\177\000\377\360\006s\000\000\000\000\000r\000`\377\377\377\377\377\000\000\000\000\000\000\000\000p\315\377\377\377\177\000\000\002\000\000\000N.\314b\036\004`\377\377\377\377\377\272\035lK\000\000\000\000\303z\f\000\000\000\000\000\t\000\000\000\0---Type <return> to continue, or q <return> to quit--- 00\000\000\000\340"... workstart = 0x0 workend = 0x7fffffffd488 "\250\251\375\367\004" ap_save = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fffffffd880, reg_save_area = 0x7fffffffd7a0}} nspecs_done = <value optimized out> save_errno = <value optimized out> readonly_format = 0 jump_table = "\001\000\000\004\000\016\000\006\000\000\a\002\000\003\t\000\005\b\b\b\b\b\b\b\b\b\000\000\000\000\000\000\000\032\000\031\000\023\023\023\000\035\000\000\f\000\000\000\000\000\000\025\000\000\000\000\022\000\r\000\000\000\000\000\000\032\000\024\017\023\023\023\n\017\034\000\v\030\027\021\026\f\000\025\033\020\000\000\022\000\r" __PRETTY_FUNCTION__ = "_IO_vfprintf_internal" #1 0x00007ffff43cd762 in _IO_vsnprintf (string=0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", maxlen=<value optimized out>, format=0x4619d9 "Additional error: %s", args=0x7fffffffd780) at vsnprintf.c:120 sf = {f = {_sbf = {_f = {_flags = -72515583, _IO_read_ptr = 0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", _IO_read_end = 0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", _IO_read_base = 0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", _IO_write_base = 0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", _IO_write_ptr = 0x8ab272 "unauthenticated bind (DN with no password) disallo", _IO_write_end = 0x8ab2a7 "", _IO_buf_base = 0x8ab260 "Additional error: unauthenticated bind (DN with no password) disallo", _IO_buf_end = 0x8ab2a7 "", _IO_save_base = 0x0, _IO_backup_base = 0x0, _IO_save_end = 0x0, _markers = 0x0, _chain = 0x0, _fileno = -194285880, _flags2 = 0, _old_offset = 0, _cur_column = 0, _vtable_offset = 0 '\000', _shortbuf = "", _lock = 0x0, _offset = 140737294069344, _codecvt = 0x4d, _wide_data = 0x7fffffffd7b0, _freeres_list = 0x0, _freeres_buf = 0x7ffff46b6e60, _freeres_size = 128, _mode = -1, _unused2 = "\377\177\000\000~\000\000\000\000\000\000\000G\000\000\000\000\000\000"}, vtable = 0x7ffff46b3fc0}, _s = {_allocate_buffer = 0, _free_buffer = 0x80}}, overflow_buf = "I\000\000\000\000\000\000\000\331\031F\000\000\000\000\000\200\327\377\377\377\177\000\000\277\376\060\365\377\177\000\000I\000\000\000\000\000\000\000\331\031F\000\000\000\000\000\200\341|\000\000\000\000\000\067\231\062\365\377\177\000"} ret = 0 #2 0x000000000041e762 in error_push_production_v (context=126, fmt=0x4619d9 "Additional error: %s", ap=0x7fffffffd780) at errorchain.c:125 chain = <value optimized out> str = 0x7ce180 n = 71 a = 73 #3 0x000000000041e94d in error_push_debug (file=0x4619b2 "errorchain.c", line=<value optimized out>, context=126, fmt=0xffffffffffffffff <Address 0xffffffffffffffff out of bounds>) at errorchain.c:196 ap = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fffffffd880, reg_save_area = 0x7fffffffd7a0}} #4 0x000000000041e9e1 in push_ldap_addl_error (ld=<value optimized out>, context=126) at errorchain.c:218 error_msg = 0x8bb750 "unauthenticated bind (DN with no password) disallowed" #5 0x0000000000438788 in do_ldap_connect (ld_out=<value optimized out>, server=<value optimized out>, open_context=<value optimized out>, flags=<value optimized out>) at gq-server.c:450 ld = 0x8bf640 rc = 53 i = 30 nettimeout = {tv_sec = 15, tv_usec = 0} #6 0x0000000000438b9a in open_connection_ex (open_context=126, server=0x6b8980, ldap_errno=0x0) at gq-server.c:521 ld = 0x0 rc = <value optimized out> ---Type <return> to continue, or q <return> to quit--- #7 0x000000000044cff4 in get_suffixes (error_context=126, server=0x6b8980) at gq-utilities.c:1137 ld = <value optimized out> res = <value optimized out> e = <value optimized out> msg = <value optimized out> i = <value optimized out> num_suffixes = <value optimized out> vals = 0x12 ldapv3_config = {0x4679d7 "namingcontexts", 0x0} suffixes = <value optimized out> #8 0x0000000000428e14 in server_browse_entry_expand (e=0x79a340, error_context=126, model=0x7a1d80, iter=0x7fffffffdad0, dummy=<value optimized out>) at gq-browser-node-server.c:93 suffixes = <value optimized out> next = <value optimized out> entry = 0x79a340 __PRETTY_FUNCTION__ = "server_browse_entry_expand" #9 0x00000000004240e5 in browser_model_iter_nth_child (model=0x7a1d80, iter=0x7fffffffdab0, parent=0x7fffffffdad0, child=0) at gq-browser-model.c:360 node = 0x79a340 ctxt = 126 __PRETTY_FUNCTION__ = "browser_model_iter_nth_child" #10 0x00007ffff75cbffa in gtk_tree_view_real_expand_row (tree_view=0x7a4070, path=0xa18ec0, tree=0x7a26c0, node=0x7a1890, open_all=0, animate=1) at /gtk+2.0-2.18.6/gtk/gtktreeview.c:12005 iter = {stamp = 0, user_data = 0x7a1cc0, user_data2 = 0x79a340, user_data3 = 0x0} temp = {stamp = 0, user_data = 0x0, user_data2 = 0x0, user_data3 = 0x0} expand = 0 #11 0x00007ffff75dd4d7 in gtk_tree_view_button_release (widget=0x7a4070, event=<value optimized out>) at /gtk+2.0-2.18.6/gtk/gtktreeview.c:3019 path = 0xa18ec0 #12 0x00007ffff74eb538 in _gtk_marshal_BOOLEAN__BOXED (closure=0x6b3a00, return_value=0x7fffffffdd10, n_param_values=<value optimized out>, param_values=0xa01500, invocation_hint=<value optimized out>, marshal_data=0x7ffff75dd380) at /gtk+2.0-2.18.6/gtk/gtkmarshalers.c:84 data1 = 0x7a4070 data2 = 0x30 v_return = <value optimized out> __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED" #13 0x00007ffff57a244e in IA__g_closure_invoke (closure=0x6b3a00, return_value=0x7fffffffdd10, n_param_values=2, param_values=0xa01500, invocation_hint=0x7fffffffdcd0) at /tmp/buildd/glib2.0-2.22.4/gobject/gclosure.c:767 marshal = 0 marshal_data = 0xff00000000000000 __PRETTY_FUNCTION__ = "IA__g_closure_invoke" #14 0x00007ffff57b61dd in signal_emit_unlocked_R (node=0x6b3a70, detail=<value optimized out>, instance=<value optimized out>, emission_return=<value optimized out>, instance_and_params=<value optimized out>) at /tmp/buildd/glib2.0-2.22.4/gobject/gsignal.c:3285 accumulator = 0x2 emission = {next = 0x0, instance = 0x7a4070, ihint = {signal_id = 37, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 7961648} class_closure = 0x6b3a00 ---Type <return> to continue, or q <return> to quit--- handler_list = 0x0 return_accu = <value optimized out> accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 37 max_sequential_handler_number = 2 return_value_altered = 0 #15 0x00007ffff57b776a in IA__g_signal_emit_valist (instance=0x7a4070, signal_id=<value optimized out>, detail=0, var_args=0x7fffffffdec0) at /tmp/buildd/glib2.0-2.22.4/gobject/gsignal.c:2990 return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} error = <value optimized out> signal_return_type = 20 param_values = <value optimized out> node = 0x6b3a70 i = <value optimized out> n_params = <value optimized out> __PRETTY_FUNCTION__ = "IA__g_signal_emit_valist" #16 0x00007ffff57b7dd3 in IA__g_signal_emit (instance=0xff00000000000000, signal_id=4594137, detail=48) at /tmp/buildd/glib2.0-2.22.4/gobject/gsignal.c:3037 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffdfa0, reg_save_area = 0x7fffffffdee0}} #17 0x00007ffff75f26cf in gtk_widget_event_internal (widget=0x7a4070, event=0x9d7cf0) at /gtk+2.0-2.18.6/gtk/gtkwidget.c:4767 signal_num = <value optimized out> return_val = 0 #18 0x00007ffff74e3ae3 in IA__gtk_propagate_event (widget=0x7a4070, event=0x9d7cf0) at /gtk+2.0-2.18.6/gtk/gtkmain.c:2417 tmp = 0x0 handled_event = 8011888 __PRETTY_FUNCTION__ = "IA__gtk_propagate_event" #19 0x00007ffff74e4ab3 in IA__gtk_main_do_event (event=0x9d7cf0) at /gtk+2.0-2.18.6/gtk/gtkmain.c:1622 event_widget = <value optimized out> grab_widget = 0x7a4070 window_group = 0x7c3d60 rewritten_event = 0x0 tmp_list = <value optimized out> __PRETTY_FUNCTION__ = "IA__gtk_main_do_event" #20 0x00007ffff7159c9c in gdk_event_dispatch (source=<value optimized out>, callback=<value optimized out>, user_data=<value optimized out>) at /gtk+2.0-2.18.6/gdk/x11/gdkevents-x11.c:2372 display = <value optimized out> event = <value optimized out> #21 0x00007ffff530790e in g_main_dispatch (context=0x6ab310) at /tmp/buildd/glib2.0-2.22.4/glib/gmain.c:1960 dispatch = 0x7ffff7159c50 <gdk_event_dispatch> user_data = 0x0 callback = 0 cb_funcs = 0x0 ---Type <return> to continue, or q <return> to quit--- cb_data = 0x0 current_source_link = {data = 0x6ab290, next = 0x0} source = 0x6ab290 current = 0x780350 i = 0 #22 IA__g_main_context_dispatch (context=0x6ab310) at /tmp/buildd/glib2.0-2.22.4/glib/gmain.c:2513 No locals. #23 0x00007ffff530b2c8 in g_main_context_iterate (context=0x6ab310, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /tmp/buildd/glib2.0-2.22.4/glib/gmain.c:2591 max_priority = 2147483647 timeout = -1 some_ready = 1 nfds = 2 allocated_nfds = -181306096 fds = <value optimized out> __PRETTY_FUNCTION__ = "g_main_context_iterate" #24 0x00007ffff530b725 in IA__g_main_loop_run (loop=0x7f9fe0) at /tmp/buildd/glib2.0-2.22.4/glib/gmain.c:2799 self = 0x702dd0 __PRETTY_FUNCTION__ = "IA__g_main_loop_run" #25 0x00007ffff74e4f87 in IA__gtk_main () at /gtk+2.0-2.18.6/gtk/gtkmain.c:1218 tmp_list = 0x67a0b0 functions = 0x0 init = 0x7fffffffe248 loop = <value optimized out> #26 0x0000000000421608 in main (argc=1, argv=0x7fffffffe348) at gq.c:162 ctxt = 0x67a0b0 error = 0x0 p = <value optimized out> (gdb) q A debugging session is active. Inferior 1 [process 23455] will be killed. Quit anyway? (y or n) y $
Attachment:
signature.asc
Description: OpenPGP digital signature