View Issue Details

IDProjectCategoryView StatusLast Update
0002089GNUnetexit daemonpublic2012-02-28 11:05
ReporterChristian Grothoff Assigned ToChristian Grothoff  
PriorityhighSeveritycrashReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.9.2Fixed in Version0.9.2 
Summary0002089: Assertion failed at gnunet-daemon-exit.c:1872.
DescriptionThis is an assertion that was hit during shutdown after producing 0002087 / 0002088. The assertion checks that the entry we remove from the hash map was actually present in the hash map. That presumed invariant is somehow false here.
TagsNo tags attached.

Relationships

has duplicate 0002091 closedChristian Grothoff Killing vpn causes exit daemon to crash 
child of 0002064 closedChristian Grothoff new VPN service (working with new exit/dns services) needs to be fully implemented and tested 

Activities

Christian Grothoff

2012-01-19 23:08

manager   ~0005313

#0 0x00007f407e347165 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007f407e349f70 in *__GI_abort () at abort.c:92
#2 0x00007f407ea96b6c in GNUNET_abort () at common_logging.c:273
#3 0x000000000040727d in clean_tunnel (cls=0x0, tunnel=0x19ded90, tunnel_ctx=0x19df460) at gnunet-daemon-exit.c:1869
#4 0x00007f407e87bf6f in destroy_tunnel (t=0x19ded90) at mesh_api.c:429
#5 0x00007f407e87f6f4 in GNUNET_MESH_disconnect (handle=0x19dd140) at mesh_api.c:1272
#6 0x00000000004073cc in cleanup (cls=0x0, tskctx=0x7fff4fd20340) at gnunet-daemon-exit.c:1919
#7 0x00007f407eac669a in run_ready (rs=0x19da210, ws=0x19da2a0) at scheduler.c:684
#8 0x00007f407eac6e7f in GNUNET_SCHEDULER_run (task=0x7f407eabfeb0 <program_main>, task_cls=0x7fff4fd205f0) at scheduler.c:874
#9 0x00007f407eac07f9 in GNUNET_PROGRAM_run (argc=3, argv=0x7fff4fd207d8, binaryName=0x409515 "gnunet-daemon-exit",
    binaryHelp=0x4094e0 "Daemon to run to provide an IP exit node for the VPN", options=0x409540, task=0x407efe <run>,
    task_cls=0x0) at program.c:250
#10 0x00000000004088c8 in main (argc=3, argv=0x7fff4fd207d8) at gnunet-daemon-exit.c:2336

(gdb) print s
$1 = (struct TunnelState *) 0x19df460
(gdb) print *s
$2 = {tunnel = 0x19ded90, heap_node = 0x19df350, state_key = {bits = {0 <repeats 16 times>}}, serv = 0x0, head = 0x0, tail = 0x0,
  th = 0x0, ri = {remote_address = {af = 2, address = {ipv4 = {s_addr = 1128963971}, ipv6 = {__in6_u = {
            __u6_addr8 = "\203\237JC", '\000' <repeats 11 times>, __u6_addr16 = {40835, 17226, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {
              1128963971, 0, 0, 0}}}}, proto = 6 '\006', port = 80}, local_address = {af = 2, address = {ipv4 = {
          s_addr = 2841053706}, ipv6 = {__in6_u = {__u6_addr8 = "\n\nW\251", '\000' <repeats 11 times>, __u6_addr16 = {2570,
              43351, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {2841053706, 0, 0, 0}}}}, proto = 6 '\006', port = 40132}}}

Note: state_key seems to be uninitialized here!

(gdb) print *connections_map
$3 = {map = 0x7f407d8f7010, size = 6, map_length = 65536}

Likely the value is in there? Didn't check. But it is in the heap:

(gdb) print *s->heap_node
$5 = {heap = 0x19da340, parent = 0x19de9e0, left_child = 0x0, right_child = 0x0, element = 0x19df460, cost = 1327010290498,
  tree_size = 0}
(gdb) print connections_heap
$6 = (struct GNUNET_CONTAINER_Heap *) 0x19da340

Christian Grothoff

2012-01-20 09:26

manager   ~0005317

Fixed in SVN 19275.

Issue History

Date Modified Username Field Change
2012-01-19 23:05 Christian Grothoff New Issue
2012-01-19 23:05 Christian Grothoff Status new => assigned
2012-01-19 23:05 Christian Grothoff Assigned To => Christian Grothoff
2012-01-19 23:08 Christian Grothoff Note Added: 0005313
2012-01-19 23:14 Christian Grothoff Relationship added child of 0002064
2012-01-20 09:26 Christian Grothoff Note Added: 0005317
2012-01-20 09:27 Christian Grothoff Status assigned => resolved
2012-01-20 09:27 Christian Grothoff Fixed in Version => 0.9.2
2012-01-20 09:27 Christian Grothoff Resolution open => fixed
2012-01-20 09:28 Christian Grothoff Relationship added has duplicate 0002091
2012-02-28 11:05 Christian Grothoff Status resolved => closed