View Issue Details

IDProjectCategoryView StatusLast Update
0002814GNUnetutil librarypublic2013-03-07 13:45
ReporterSree Harsha Totakura Assigned ToChristian Grothoff  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
OSDebianOS Version6.0.7 
Product VersionGit master 
Target VersionGit masterFixed in VersionGit master 
Summary0002814: crash in gnunet-ecc during testbed tests
Descriptiongnunet-ecc crashes while running testbed tests on Debian Squeeze. I get the following output when testbed starts peers:

PASS: test_testbed_api
PASS: test_testbed_api_sd
PASS: test_testbed_api_operations
PASS: test_testbed_api_hosts
PASS: test_gnunet_helper_testbed
Mar 04 21:12:45-458385 util-9477 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-458455 util-9479 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-458583 util-9479 ERROR File `/tmp/testbedqfeGbs/1/private.ecc' does not contain a valid private key (failed decode, 1024 bytes). Deleting it.
Mar 04 21:12:45-459772 util-9476 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-459956 util-9476 ERROR File `/tmp/testbedqfeGbs/0/private.ecc' does not contain a valid private key (failed decode, 1024 bytes). Deleting it.
Mar 04 21:12:45-460492 util-9477 ERROR File `/tmp/testbedqfeGbs/0/private.ecc' does not contain a valid private key (failed decode, 1024 bytes). Deleting it.
Mar 04 21:12:45-460715 util-9477 WARNING `unlink' failed on file `/tmp/testbedqfeGbs/0/private.ecc' at crypto_ecc.c:467 with error: No such file or directory
Mar 04 21:12:45-616336 util-9476 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-616406 util-9476 ERROR File `/tmp/testbedqfeGbs/0/private.ecc' does not contain a valid private key (failed decode, 800 bytes). Deleting it.
Mar 04 21:12:45-616519 core-9476 ERROR Assertion failed at crypto_ecc.c:789.
Mar 04 21:12:45-616556 core-9476 ERROR Failed to read or generate private key: gnunet-ecc failed
Mar 04 21:12:45-616547 util-9478 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-616751 util-9478 ERROR File `/tmp/testbedqfeGbs/1/private.ecc' does not contain a valid private key (failed decode, 800 bytes). Deleting it.
Mar 04 21:12:45-616862 core-9478 ERROR Assertion failed at crypto_ecc.c:789.
Mar 04 21:12:45-616898 core-9478 ERROR Failed to read or generate private key: gnunet-ecc failed
Mar 04 21:12:45-677795 gnunet-ecc-9481 ERROR Assertion failed at crypto_ecc.c:650.
Mar 04 21:12:45-679415 util-9477 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-679465 util-9477 ERROR File `/tmp/testbedqfeGbs/0/private.ecc' does not contain a valid private key (failed decode, 801 bytes). Deleting it.
Mar 04 21:12:45-693548 util-9483 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-693750 util-9483 ERROR File `/tmp/testbedqfeGbs/1/private.ecc' does not contain a valid private key. Deleting it.
Mar 04 21:12:45-694851 transport-9479 ERROR Assertion failed at crypto_ecc.c:789.
Mar 04 21:12:45-694931 transport-9479 ERROR Transport service could not access hostkey: gnunet-ecc failed. Exiting.
Mar 04 21:12:45-694974 transport-9479 WARNING `unlink' failed on file `/tmp/testbedqfeGbs/1/private.ecc' at crypto_ecc.c:752 with error: No such file or directory
Mar 04 21:12:45-721416 util-9485 ERROR `gcry_pk_testkey' failed at crypto_ecc.c:361 with error: Bad MPI value
Mar 04 21:12:45-721558 util-9485 ERROR File `/tmp/testbedqfeGbs/0/private.ecc' does not contain a valid private key (failed decode, 801 bytes). Deleting it.
Mar 04 21:12:45-721821 transport-9477 ERROR Assertion failed at crypto_ecc.c:789.
Mar 04 21:12:45-721862 transport-9477 ERROR Transport service could not access hostkey: gnunet-ecc failed. Exiting.
Mar 04 21:12:45-721884 transport-9477 WARNING `unlink' failed on file `/tmp/testbedqfeGbs/0/private.ecc' at crypto_ecc.c:752 with error: No such file or directory
Mar 04 21:12:45-723134 util-9485 WARNING `unlink' failed on file `/tmp/testbedqfeGbs/0/private.ecc' at crypto_ecc.c:467 with error: No such file or directory
Mar 04 21:12:45-723208 core-9485 ERROR Assertion failed at crypto_ecc.c:789.
Steps To Reproducerun testbed tests.
Additional InformationBacktrace for gnunet-ecc:

Core was generated by `gnunet-ecc /tmp/testbedqfeGbs/0/private.ecc'.
Program terminated with signal 6, Aborted.
#0 0x00002b79d4a2d1b5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
    in ../nptl/sysdeps/unix/sysv/linux/raise.c
(gdb) bt full
#0 0x00002b79d4a2d1b5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
        pid = <value optimized out>
        selftid = <value optimized out>
#1 0x00002b79d4a2ffc0 in *__GI_abort () at abort.c:92
        act = {__sigaction_handler = {sa_handler = 0x2b79d4d5c380 <_tmbuf>, sa_sigaction = 0x2b79d4d5c380 <_tmbuf>}, sa_mask = {__val = {39, 8391664416124268133, 0, 39592448,
              4198448, 47802258299656, 47802253527408, 47802248381256, 4294967295, 206158430240, 1, 2561672, 0, 0, 0, 47802248359936}}, sa_flags = -739817710,
          sa_restorer = 0x2b7900000001}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2 0x00002b79d409de01 in GNUNET_abort () at common_logging.c:293
No locals.
#3 0x00002b79d40b33a5 in GNUNET_CRYPTO_ecc_key_create_from_file (filename=0x25c0ea3 "/tmp/testbedqfeGbs/0/private.ecc") at crypto_ecc.c:650
        ret = 0x2b79d3e74712
        enc = 0x25c5f40
        len = 0
        fd = 0x25d6e10
        cnt = 2
        ec = 11129
        fs = 801
        pub = {size = 56328, len = 54280,
          key = "y+\000\000\310d\350\323y+\000\000\001\000\000\000\000\000\000\000\377\377\377\377\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000H\"`", '\000' <repeats 28 times>}
        pid = {hashPubKey = {bits = {0, 0, 3555223584, 11129, 516947264, 32767, 3578353576, 11129, 516947304, 32767, 3555222728, 11129, 2981575765, 0, 3555134194, 11129}}}
        __FUNCTION__ = "GNUNET_CRYPTO_ecc_key_create_from_file"
#4 0x0000000000401594 in run (cls=0x0, args=0x25c0e88, cfgfile=0x25c21b0 "~/.gnunet/gnunet.conf", cfg=0x25c0ed0) at gnunet-ecc.c:146
        pk = 0x4
        pub = {size = 2, len = 0,
          key = "\177\000\000\001\000\000\000\000\000\000\000\000\020n]\002\000\000\000\000\220\065\\\002\000\000\000\000\004\000\000\000\000\000\000\000\310d\350\323y+\000\000p\376\317\036\377\177\000\000m\016\r\324y+\000\000\320\016\\\002\000\000\000\000\320\016\\\002\000\000\000"}
        pid = {hashPubKey = {bits = {24, 0, 3, 0, 516947520, 32767, 3557624776, 11129, 10, 0, 0, 0, 0, 0, 0, 0}}}
#5 0x00002b79d40ce30a in program_main (cls=0x7fff1ed00170, tc=0x7fff1ecffed0) at program.c:95
        cc = 0x7fff1ed00170
#6 0x00002b79d40d4f1d in run_ready (rs=0x25c4410, ws=0x25c44a0) at scheduler.c:597
        p = GNUNET_SCHEDULER_PRIORITY_DEFAULT
        pos = 0x25c4900
        tc = {reason = GNUNET_SCHEDULER_REASON_STARTUP, read_ready = 0x25c4410, write_ready = 0x25c44a0}
        __FUNCTION__ = "run_ready"
#7 0x00002b79d40d579f in GNUNET_SCHEDULER_run (task=0x2b79d40ce294 <program_main>, task_cls=0x7fff1ed00170) at scheduler.c:786
        rs = 0x25c4410
        ws = 0x25c44a0
        timeout = {rel_value = 0}
        ret = 0
        shc_int = 0x25d6f70
        shc_term = 0x25c1f70
        shc_quit = 0x25c20d0
        shc_hup = 0x25c4850
        shc_pipe = 0x25c2020
        last_tr = 0
        busy_wait_warning = 0
---Type <return> to continue, or q <return> to quit---
        pr = 0x25d73c0
        c = 0 '\000'
        __FUNCTION__ = "GNUNET_SCHEDULER_run"
#8 0x00002b79d40cecfd in GNUNET_PROGRAM_run2 (argc=2, argv=0x25c0e80, binaryName=0x4019b8 "gnunet-ecc [OPTIONS] keyfile",
    binaryHelp=0x401990 "Manipulate GNUnet private ECC key files", options=0x401b00, task=0x4014fd <run>, task_cls=0x0, run_without_scheduler=0) at program.c:273
        cc = {args = 0x25c0e88, cfgfile = 0x25c21b0 "~/.gnunet/gnunet.conf", task = 0x4014fd <run>, task_cls = 0x0, cfg = 0x25c0ed0}
        path = 0x25c1ee0 ""
        loglev = 0x0
        logfile = 0x0
        ret = 1
        cnt = 9
        skew_offset = 47802246259912
        skew_variance = 47802248381088
        clock_offset = 47798691037185
        cfg = 0x25c0ed0
        defoptions = {{shortName = 99 'c', name = 0x2b79d40eda90 "config", argumentHelp = 0x2b79d40eda97 "FILENAME",
            description = 0x2b79d40edaa0 "use configuration file FILENAME", require_argument = 1, processor = 0x2b79d40c43ae <GNUNET_GETOPT_set_string>, scls = 0x7fff1ed00178}, {
            shortName = 104 'h', name = 0x2b79d40edac0 "help", argumentHelp = 0x0, description = 0x2b79d40edac5 "print this help", require_argument = 0,
            processor = 0x2b79d40c3e11 <GNUNET_GETOPT_format_help_>, scls = 0x401990}, {shortName = 76 'L', name = 0x2b79d40edad5 "log",
            argumentHelp = 0x2b79d40edad9 "LOGLEVEL", description = 0x2b79d40edae8 "configure logging to use LOGLEVEL", require_argument = 1,
            processor = 0x2b79d40c43ae <GNUNET_GETOPT_set_string>, scls = 0x7fff1ed00168}, {shortName = 108 'l', name = 0x2b79d40edb0a "logfile",
            argumentHelp = 0x2b79d40edb12 "LOGFILE", description = 0x2b79d40edb20 "configure logging to write logs to LOGFILE", require_argument = 1,
            processor = 0x2b79d40c43ae <GNUNET_GETOPT_set_string>, scls = 0x7fff1ed00160}, {shortName = 118 'v', name = 0x2b79d40edb4b "version", argumentHelp = 0x0,
            description = 0x2b79d40edb53 "print the version number", require_argument = 0, processor = 0x2b79d40c3dc8 <GNUNET_GETOPT_print_version_>, scls = 0x2b79d40edb6c}}
        allopts = 0x25c1f70
        gargs = 0x0
        lpfx = 0x25c1ee0 ""
        spc = 0x25c1eea ""
        __FUNCTION__ = "GNUNET_PROGRAM_run2"
#9 0x00002b79d40cee32 in GNUNET_PROGRAM_run (argc=2, argv=0x25c0e80, binaryName=0x4019b8 "gnunet-ecc [OPTIONS] keyfile",
    binaryHelp=0x401990 "Manipulate GNUnet private ECC key files", options=0x401b00, task=0x4014fd <run>, task_cls=0x0) at program.c:308
No locals.
#10 0x000000000040175d in main (argc=2, argv=0x25c0e80) at gnunet-ecc.c:211
        options = {{shortName = 103 'g', name = 0x4019d5 "generate-keys", argumentHelp = 0x4019e3 "COUNT",
            description = 0x4019f0 "create COUNT public-private key pairs (for testing)", require_argument = 1, processor = 0x400f40 <GNUNET_GETOPT_set_uint@plt>,
            scls = 0x60238c}, {shortName = 112 'p', name = 0x401a24 "print-public-key", argumentHelp = 0x0, description = 0x401a38 "print the public key in ASCII format",
            require_argument = 0, processor = 0x400f90 <GNUNET_GETOPT_set_one@plt>, scls = 0x602380}, {shortName = 80 'P', name = 0x401a5d "print-peer-identity",
            argumentHelp = 0x0, description = 0x401a78 "print the hash of the public key in ASCII format", require_argument = 0,
            processor = 0x400f90 <GNUNET_GETOPT_set_one@plt>, scls = 0x602384}, {shortName = 115 's', name = 0x401aa9 "print-short-identity", argumentHelp = 0x0,
            description = 0x401ac0 "print the short hash of the public key in ASCII format", require_argument = 0, processor = 0x400f90 <GNUNET_GETOPT_set_one@plt>,
            scls = 0x602388}, {shortName = 0 '\000', name = 0x0, argumentHelp = 0x0, description = 0x0, require_argument = 0, processor = 0, scls = 0x0}}
        ret = 0
TagsNo tags attached.

Activities

Sree Harsha Totakura

2013-03-04 21:58

updater   ~0006929

installed libgcrypt is at version: 1.4.5-2

Christian Grothoff

2013-03-05 05:57

manager   ~0006933

Did you re-create the ECC key file for the testbed after my change from yesterday? (gnunet-ecc)?

Christian Grothoff

2013-03-05 05:58

manager   ~0006934

(if you're using the file from contrib, make sure you did SVN UP and make install in contrib/ as well...)

Sree Harsha Totakura

2013-03-05 23:47

updater   ~0006942

I'm using the file from contrib. I did SVN UP to get version 26326 and then 'make install' in the main dir and I still get these errors.

Christian Grothoff

2013-03-06 06:25

manager   ~0006943

Let's look at it together later today.

Christian Grothoff

2013-03-07 13:45

manager   ~0006947

I think an old (pre 1.5) libgcrypt library has now been established as the culprit.

Issue History

Date Modified Username Field Change
2013-03-04 21:56 Sree Harsha Totakura New Issue
2013-03-04 21:58 Sree Harsha Totakura Note Added: 0006929
2013-03-05 05:57 Christian Grothoff Note Added: 0006933
2013-03-05 05:58 Christian Grothoff Note Added: 0006934
2013-03-05 17:16 Christian Grothoff Assigned To => Christian Grothoff
2013-03-05 17:16 Christian Grothoff Status new => feedback
2013-03-05 23:47 Sree Harsha Totakura Note Added: 0006942
2013-03-05 23:47 Sree Harsha Totakura Status feedback => assigned
2013-03-06 06:25 Christian Grothoff Note Added: 0006943
2013-03-07 13:45 Christian Grothoff Note Added: 0006947
2013-03-07 13:45 Christian Grothoff Status assigned => resolved
2013-03-07 13:45 Christian Grothoff Fixed in Version => Git master
2013-03-07 13:45 Christian Grothoff Resolution open => fixed
2013-03-07 13:45 Christian Grothoff Status resolved => closed
2013-03-07 13:45 Christian Grothoff Resolution fixed => no change required
2013-03-07 13:45 Christian Grothoff Target Version => Git master