#3734: Segmentation fault when quitting the list of PGP keys
-----------------------+----------------------
  Reporter:  tedted    |      Owner:  mutt-dev
      Type:  defect    |     Status:  new
  Priority:  critical  |  Milestone:
 Component:  crypto    |    Version:  1.5.23
Resolution:            |   Keywords:
-----------------------+----------------------
Changes (by Lekensteyn):

 * cc: peter@… (added)


Comment:

 It looks like stack corruption given the backtrace:

 {{{
 #0  0x00000000004873c2 in pgp_getkeybystr (p=<optimized out>,
     abilities=2, keyring=<optimized out>) at ../pgpkey.c:997
 }}}
 Line 997 is the end of said function:
 http://sources.debian.net/src/mutt/1.5.23-3/pgpkey.c/#L997

 Corruption is only possible if {{{l==0}}} (because then {{{l[p-1]='!'}}})

 The new backtrace from the reporter confirms it:

 {{{
 Breakpoint 1 at 0x487110: file ../pgpkey.c, line 926.
 Continuing.

 Breakpoint 1, pgp_getkeybystr (p=0x7fff0c5c7c70 "", abilities=2,
     keyring=PGP_PUBRING) at ../pgpkey.c:926
 926     ../pgpkey.c: Aucun fichier ou dossier de ce type.
 (gdb) backtrace
 #0  pgp_getkeybystr (p=0x7fff0c5c7c70 "", abilities=2,
     keyring=PGP_PUBRING) at ../pgpkey.c:926
 #1  0x0000000000487507 in pgp_ask_for_key (
     tag=0x7fff0c5c7d80 "Entrez keyID pour [email protected] : ",
     whatfor=0x18c5e00 "[email protected]", abilities=2,
     keyring=PGP_PUBRING) at ../pgpkey.c:702
 #2  0x000000000048424b in pgp_findKeys (to=0x0, cc=0x18c4670,
     bcc=0x18c4670) at ../pgp.c:1232
 #3  0x00000000004139dd in crypt_get_keys (msg=0x18c4480,
     keylist=0x7fff0c5c8270) at ../crypt.c:729
 #4  0x0000000000464b46 in ci_send_message (flags=0, msg=0x18c4480,
     tempfile=0x7fff0c5c8258 "", ctx=0x1897b80, cur=0x0) at ../send.c:1643
 #5  0x0000000000422fe0 in mutt_index_menu () at ../curs_main.c:1993
 #6  0x000000000040897d in main (argc=1, argv=<optimized out>)
     at ../main.c:1056
 }}}

-- 
Ticket URL: <http://dev.mutt.org/trac/ticket/3734#comment:1>
Mutt <http://www.mutt.org/>
The Mutt mail user agent

Reply via email to