Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Trac Trac
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Legacy
  • TracTrac
  • Issues
  • #11519

Closed (moved)
(moved)
Open
Created Apr 14, 2014 by Rob Jansen@robgjansen

uninitialized timeval causing valgrind errors

I noticed some valgrind errors while debugging Tor 0.2.5.2-alpha in Shadow. The problem still exists in Tor master as of today.

In circuituse.c, line 1518, the struct timeval old_timestamp_began; is declared, but never initialized before being used on line 1556:

control_event_circuit_cannibalized(circ, old_purpose,
                                         &old_timestamp_began);

Should old_timestamp_began have been set to circ->base_.timestamp_began before updating circ->base_.timestamp_began in line 1553?

Some valgrind backtraces:

==28186== Conditional jump or move depends on uninitialised value(s)
==28186==    at 0x3F2EC48DF9: vfprintf (vfprintf.c:1635)
==28186==    by 0x3F2EC74CB2: vasprintf (vasprintf.c:62)
==28186==    by 0x5FDEBEF: tor_vasprintf (compat.c:435)
==28186==    by 0x5EAC662: send_control_event_impl (control.c:615)
==28186==    by 0x5EA71C5: send_control_event (control.c:635)
==28186==    by 0x5EA75BF: control_event_circuit_status_minor (control.c:3586)
==28186==    by 0x5EA7649: control_event_circuit_cannibalized (control.c:3621)
==28186==    by 0x5F7A748: circuit_launch_by_extend_info (circuituse.c:1555)
==28186==    by 0x5F7CACA: circuit_get_open_circ_or_launch (circuituse.c:1844)
==28186==    by 0x5F7B725: connection_ap_handshake_attach_circuit (circuituse.c:2149)
==28186==    by 0x5F9C34E: connection_ap_make_link (connection_edge.c:2025)
==28186==    by 0x5EF2EF8: directory_initiate_command_rend (directory.c:1029)
==28186==  Uninitialised value was created by a stack allocation
==28186==    at 0x5E82580: ??? (in /tmp/I2JBEX-libshadow-plugin-scallion.so)
==28186== Conditional jump or move depends on uninitialised value(s)
==28186==    at 0x3F2ECB4DB1: __strftime_internal (strftime_l.c:993)
==28186==    by 0x3F2ECB6622: strftime_l (strftime_l.c:481)
==28186==    by 0x5FEAA47: format_iso_time (util.c:1500)
==28186==    by 0x5FEAA7C: format_iso_time_nospace (util.c:1508)
==28186==    by 0x5FEAAF9: format_iso_time_nospace_usec (util.c:1519)
==28186==    by 0x5EA7417: control_event_circuit_status_minor (control.c:3566)
==28186==    by 0x5EA7649: control_event_circuit_cannibalized (control.c:3621)
==28186==    by 0x5F7A748: circuit_launch_by_extend_info (circuituse.c:1555)
==28186==    by 0x5F7CACA: circuit_get_open_circ_or_launch (circuituse.c:1844)
==28186==    by 0x5F7B725: connection_ap_handshake_attach_circuit (circuituse.c:2149)
==28186==    by 0x5F9C34E: connection_ap_make_link (connection_edge.c:2025)
==28186==    by 0x5EF2EF8: directory_initiate_command_rend (directory.c:1029)
==28186==  Uninitialised value was created by a stack allocation
==28186==    at 0x5E82580: ??? (in /tmp/I2JBEX-libshadow-plugin-scallion.so)
==28186== Conditional jump or move depends on uninitialised value(s)
==28186==    at 0x5FE2296: correct_tm (compat.c:2559)
==28186==    by 0x5FE2516: tor_gmtime_r (compat.c:2673)
==28186==    by 0x5FEAA2A: format_iso_time (util.c:1500)
==28186==    by 0x5FEAA7C: format_iso_time_nospace (util.c:1508)
==28186==    by 0x5FEAAF9: format_iso_time_nospace_usec (util.c:1519)
==28186==    by 0x5EA7417: control_event_circuit_status_minor (control.c:3566)
==28186==    by 0x5EA7649: control_event_circuit_cannibalized (control.c:3621)
==28186==    by 0x5F7A748: circuit_launch_by_extend_info (circuituse.c:1555)
==28186==    by 0x5F7CACA: circuit_get_open_circ_or_launch (circuituse.c:1844)
==28186==    by 0x5F7B725: connection_ap_handshake_attach_circuit (circuituse.c:2149)
==28186==    by 0x5F9C34E: connection_ap_make_link (connection_edge.c:2025)
==28186==    by 0x5EF2EF8: directory_initiate_command_rend (directory.c:1029)
==28186==  Uninitialised value was created by a stack allocation
==28186==    at 0x5E82580: ??? (in /tmp/I2JBEX-libshadow-plugin-scallion.so)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking