View Issue Details

IDProjectCategoryView StatusLast Update
0003245GNUnettransport servicepublic2014-04-08 16:42
ReporterSree Harsha Totakura Assigned ToChristian Grothoff  
PrioritynormalSeveritycrashReproducibilitysometimes
Status closedResolutionopen 
Product Version0.10.0 
Target Version0.10.1 
Summary0003245: crash in TCP plugin
Descriptioncrash in TCP plugin:
Core was generated by `/usr/local/lib/gnunet/libexec/gnunet-service-transport -c /home/totakura/.confi'.
Program terminated with signal 11, Segmentation fault.
#0 0x00007f5895e5412d in GNUNET_SERVER_client_set_user_context_ (client=0x0, ptr=0x0, size=1) at server.c:378
378 client->user_context_size = 0;
(gdb) bt
#0 0x00007f5895e5412d in GNUNET_SERVER_client_set_user_context_ (client=0x0, ptr=0x0, size=1) at server.c:378
#1 0x00007f589410c717 in tcp_disconnect_session (cls=0x1c29f90, session=0x1c779e0) at plugin_transport_tcp.c:809
#2 0x00007f5894110097 in tcp_plugin_get_session (cls=0x1c29f90, address=0x1c76830) at plugin_transport_tcp.c:1585
#3 0x00000000004194cc in transmit_ping_if_allowed (cls=0x1c76740, pid=0x1c76770, result=1)
    at gnunet-service-transport_validation.c:552
#4 0x00000000004085c4 in GST_blacklist_test_allowed (peer=0x1c76770, transport_name=0x1c76874 "tcp",
    cont=0x418e6c <transmit_ping_if_allowed>, cont_cls=0x1c76740) at gnunet-service-transport_blacklist.c:735
#5 0x0000000000419d15 in revalidate_address (cls=0x1c76740, tc=0x7fffeb4f5e40)
    at gnunet-service-transport_validation.c:687
#6 0x00007f5895e51e6b in run_ready (rs=0x1c26990, ws=0x1c3ac30) at scheduler.c:595
#7 0x00007f5895e526f9 in GNUNET_SCHEDULER_run (task=0x7f5895e5e943 <service_task>, task_cls=0x7fffeb4f61e0)
    at scheduler.c:817
#8 0x00007f5895e606b2 in GNUNET_SERVICE_run (argc=3, argv=0x7fffeb4f6468, service_name=0x41fddc "transport",
    options=GNUNET_SERVICE_OPTION_NONE, task=0x40606b <run>, task_cls=0x0) at service.c:1490
#9 0x000000000040680e in main (argc=3, argv=0x7fffeb4f6468) at gnunet-service-transport.c:1015
(gdb)
Steps To Reproduce(gdb) bt full
#0 0x00007f5895e5412d in GNUNET_SERVER_client_set_user_context_ (client=0x0, ptr=0x0, size=1) at server.c:378
No locals.
#1 0x00007f589410c717 in tcp_disconnect_session (cls=0x1c29f90, session=0x1c779e0) at plugin_transport_tcp.c:809
        plugin = 0x1c29f90
        pm = 0x7f5894115040
        __FUNCTION__ = "tcp_disconnect_session"
#2 0x00007f5894110097 in tcp_plugin_get_session (cls=0x1c29f90, address=0x1c76830) at plugin_transport_tcp.c:1585
        plugin = 0x1c29f90
        session = 0x1c779e0
        af = 2
        sb = 0x7fffeb4f5ab0
        sbs = 16
        sa = 0x0
        a4 = {sin_family = 2, sin_port = 0, sin_addr = {s_addr = 101457836},
          sin_zero = "\000\000\000\000\000\000\000"}
        a6 = {sin6_family = 4128, sin6_port = 38408, sin6_flowinfo = 32600, sin6_addr = {__in6_u = {
              __u6_addr8 = "#\000\000\000\000\000\000\000\260i\307\001\000\000\000", __u6_addr16 = {35, 0, 0, 0,
                27056, 455, 0, 0}, __u6_addr32 = {35, 0, 29845936, 0}}}, sin6_scope_id = 29847696}
        t4 = 0x1c76868
        t6 = 0x7fffeb4f5b50
        ats = {type = 83886080, value = 50331648}
        is_natd = 1
        addrlen = 12
        __FUNCTION__ = "tcp_plugin_get_session"
#3 0x00000000004194cc in transmit_ping_if_allowed (cls=0x1c76740, pid=0x1c76770, result=1)
    at gnunet-service-transport_validation.c:552
        session = 0x7fffeb4f5ce0
        message_buf = 0x7fffeb4f5b90 ""
        ve = 0x1c76740
        ping = {header = {size = 14336, type = 29697}, challenge = 147306363, target = {public_key = {
              q_y = "\217\221n\275\334\325l\030\375Ob\303i5\353Q\036d(Or\320\021\327ː\301\354/5\376\240"}}}
---Type <return> to continue, or q <return> to quit---
        papi = 0x1c29cf0
        next = {abs_value_us = 1388160486211634}
        hello = 0x1c2cc70
        network = GNUNET_ATS_NET_UNSPECIFIED
        ret = 4339120
        tsize = 146
        slen = 4
        hsize = 90
        __FUNCTION__ = "transmit_ping_if_allowed"
#4 0x00000000004085c4 in GST_blacklist_test_allowed (peer=0x1c76770, transport_name=0x1c76874 "tcp",
    cont=0x418e6c <transmit_ping_if_allowed>, cont_cls=0x1c76740) at gnunet-service-transport_blacklist.c:735
        bc = 0x1
        __FUNCTION__ = "GST_blacklist_test_allowed"
#5 0x0000000000419d15 in revalidate_address (cls=0x1c76740, tc=0x7fffeb4f5e40)
    at gnunet-service-transport_validation.c:687
        ve = 0x1c76740
        canonical_delay = {rel_value_us = 300000000}
        delay = {rel_value_us = 389344274}
        blocked_for = {rel_value_us = 30468}
        bc = 0x1c76b60
        rdelay = 89344274
        __FUNCTION__ = "revalidate_address"
#6 0x00007f5895e51e6b in run_ready (rs=0x1c26990, ws=0x1c3ac30) at scheduler.c:595
        p = GNUNET_SCHEDULER_PRIORITY_DEFAULT
        pos = 0x1c76920
        tc = {reason = GNUNET_SCHEDULER_REASON_TIMEOUT, read_ready = 0x1c26990, write_ready = 0x1c3ac30}
        __FUNCTION__ = "run_ready"
#7 0x00007f5895e526f9 in GNUNET_SCHEDULER_run (task=0x7f5895e5e943 <service_task>, task_cls=0x7fffeb4f61e0)
    at scheduler.c:817
        rs = 0x1c26990
        ws = 0x1c3ac30
---Type <return> to continue, or q <return> to quit---
        timeout = {rel_value_us = 0}
        ret = 4
        shc_int = 0x1c3ace0
        shc_term = 0x1c3aec0
        shc_quit = 0x1c3b040
        shc_hup = 0x1c3b100
        shc_pipe = 0x1c3af80
        last_tr = 78273
        busy_wait_warning = 0
        pr = 0x1c26970
        c = 0 '\000'
        __FUNCTION__ = "GNUNET_SCHEDULER_run"
#8 0x00007f5895e606b2 in GNUNET_SERVICE_run (argc=3, argv=0x7fffeb4f6468, service_name=0x41fddc "transport",
    options=GNUNET_SERVICE_OPTION_NONE, task=0x40606b <run>, task_cls=0x0) at service.c:1490
        err = 0
        ret = 3
        cfg_fn = 0x1c23720 "~/.config/gnunet.conf"
        opt_cfg_fn = 0x1c23870 "/home/totakura/.config/gnunet.conf"
        loglev = 0x0
        logfile = 0x0
        do_daemonize = 0
        i = 4218987
        skew_offset = 140018461547736
        skew_variance = 0
        clock_offset = 4208176
        sctx = {cfg = 0x1c23740, server = 0x1c3b380, addrs = 0x0, service_name = 0x41fddc "transport",
          task = 0x40606b <run>, task_cls = 0x0, v4_denied = 0x0, v6_denied = 0x0, v4_allowed = 0x1c268d0,
          v6_allowed = 0x1c3a950, my_handlers = 0x1c336a0, addrlens = 0x0, lsocks = 0x1c26900, shutdown_task = 4,
          timeout = {rel_value_us = 18446744073709551615}, ret = 1, ready_confirm_fd = -1, require_found = 1,
          match_uid = 0, match_gid = 1, options = GNUNET_SERVICE_OPTION_NONE}
        cfg = 0x1c23740
---Type <return> to continue, or q <return> to quit---
        xdg = 0x0
        service_options = {{shortName = 99 'c', name = 0x7f5895e6e02d "config",
            argumentHelp = 0x7f5895e6e034 "FILENAME",
            description = 0x7f5895e6e040 "use configuration file FILENAME", require_argument = 1,
            processor = 0x7f5895e401f3 <GNUNET_GETOPT_set_string>, scls = 0x7fffeb4f6298}, {shortName = 100 'd',
            name = 0x7f5895e6e060 "daemonize", argumentHelp = 0x0,
            description = 0x7f5895e6e070 "do daemonize (detach from terminal)", require_argument = 0,
            processor = 0x7f5895e401c6 <GNUNET_GETOPT_set_one>, scls = 0x7fffeb4f6284}, {shortName = 104 'h',
            name = 0x7f5895e6e094 "help", argumentHelp = 0x0, description = 0x7f5895e6e099 "print this help",
            require_argument = 0, processor = 0x7f5895e3fc8d <GNUNET_GETOPT_format_help_>, scls = 0x0}, {
            shortName = 76 'L', name = 0x7f5895e6e0a9 "log", argumentHelp = 0x7f5895e6e0ad "LOGLEVEL",
            description = 0x7f5895e6e0b8 "configure logging to use LOGLEVEL", require_argument = 1,
            processor = 0x7f5895e401f3 <GNUNET_GETOPT_set_string>, scls = 0x7fffeb4f6290}, {shortName = 108 'l',
            name = 0x7f5895e6e0da "logfile", argumentHelp = 0x7f5895e6e0e2 "LOGFILE",
            description = 0x7f5895e6e0f0 "configure logging to write logs to LOGFILE", require_argument = 1,
            processor = 0x7f5895e401f3 <GNUNET_GETOPT_set_string>, scls = 0x7fffeb4f6288}, {shortName = 118 'v',
            name = 0x7f5895e6e11b "version", argumentHelp = 0x0,
            description = 0x7f5895e6e123 "print the version number", require_argument = 0,
            processor = 0x7f5895e3fc47 <GNUNET_GETOPT_print_version_>, scls = 0x7f5895e6e13c}, {
            shortName = 0 '\000', name = 0x0, argumentHelp = 0x0, description = 0x0, require_argument = 0,
            processor = 0x0, scls = 0x0}}
        __FUNCTION__ = "GNUNET_SERVICE_run"
#9 0x000000000040680e in main (argc=3, argv=0x7fffeb4f6468) at gnunet-service-transport.c:1015
No locals.
(gdb)
TagsNo tags attached.

Relationships

has duplicate 0003248 closedChristian Grothoff NPE 

Activities

amatus

2014-01-01 03:46

developer   ~0007951

I'm seeing this bug also, same backtrace.
Steps to reproduce:
1. Run a 0.10.0 node on the internet with tcp enabled.
2. Wait 30 minutes.
3. Profit.

Matthias Wachs

2014-01-20 10:41

manager   ~0008006

I have never seen this code... no idea what what a GNUNET_SERVER_client_set_user_context is supposed to do:

svn blame plugin_transport_tcp.c -v | grep GNUNET_SERVER_client_set_user_context
 31373 grothoff 2013-12-13 18:32:40 +0100 (Fri, 13 Dec 2013) GNUNET_SERVER_client_set_user_context (session->client,
 31372 grothoff 2013-12-13 18:20:51 +0100 (Fri, 13 Dec 2013) GNUNET_SERVER_client_set_user_context (session->client, session);
 31372 grothoff 2013-12-13 18:20:51 +0100 (Fri, 13 Dec 2013) GNUNET_SERVER_client_set_user_context (client, session);
 31372 grothoff 2013-12-13 18:20:51 +0100 (Fri, 13 Dec 2013) GNUNET_SERVER_client_set_user_context (session->client, session);

amatus

2014-01-20 15:23

developer   ~0008009

This is a duplicate of a resolved issue.

Issue History

Date Modified Username Field Change
2013-12-28 14:37 Sree Harsha Totakura New Issue
2013-12-28 14:37 Sree Harsha Totakura Status new => assigned
2013-12-28 14:37 Sree Harsha Totakura Assigned To => Matthias Wachs
2013-12-28 14:42 Sree Harsha Totakura Reproducibility have not tried => sometimes
2014-01-01 03:46 amatus Note Added: 0007951
2014-01-02 20:18 amatus Relationship added has duplicate 0003248
2014-01-18 15:55 Christian Grothoff Target Version => 0.10.1
2014-01-18 15:56 Christian Grothoff Product Version Git master => 0.10.0
2014-01-20 10:41 Matthias Wachs Note Added: 0008006
2014-01-20 10:42 Matthias Wachs Assigned To Matthias Wachs => Christian Grothoff
2014-01-20 15:23 amatus Note Added: 0008009
2014-01-20 15:23 amatus Status assigned => resolved
2014-04-08 16:42 Christian Grothoff Status resolved => closed