View Issue Details

IDProjectCategoryView StatusLast Update
0002089GNUnetexit daemonpublic2012-02-28 10:05
ReporterChristian Grothoff Assigned ToChristian Grothoff Due Date
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 22: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 08:26

manager   ~0005317

Fixed in SVN 19275.

Issue History

Date ModifiedUsernameFieldChange
2012-01-19 22:05Christian GrothoffNew Issue
2012-01-19 22:05Christian GrothoffStatusnew => assigned
2012-01-19 22:05Christian GrothoffAssigned To => Christian Grothoff
2012-01-19 22:08Christian GrothoffNote Added: 0005313
2012-01-19 22:14Christian GrothoffRelationship addedchild of 0002064
2012-01-20 08:26Christian GrothoffNote Added: 0005317
2012-01-20 08:27Christian GrothoffStatusassigned => resolved
2012-01-20 08:27Christian GrothoffFixed in Version => 0.9.2
2012-01-20 08:27Christian GrothoffResolutionopen => fixed
2012-01-20 08:28Christian GrothoffRelationship addedhas duplicate 0002091
2012-02-28 10:05Christian GrothoffStatusresolved => closed