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
  • #7037

Closed (moved)
(moved)
Open
Created Oct 03, 2012 by Roger Dingledine@arma

When we refuse a create cell due to onion queue length, we should say END_CIRC_REASON_RESOURCELIMIT

Right now in command_process_create_cell() when assign_onionskin_to_cpuworker() fails, we close the circuit with

      circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_INTERNAL);

But in onion_pending_add() when we've got old onions, we close the circuit with

    circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_RESOURCELIMIT);

Since the primary reason assign_onionskin_to_cpuworker() fails is because onion_pending_add() hits the "ol_length >= get_options()->MaxOnionsPending" clause, I think we should change command_process_create_cell() to claim RESOURCELIMIT rather than INTERNAL in its destroy cell.

And I think we should do this in 0.2.3 so the fix gets out in time to make a difference for the measurement scripts Mike has been playing with.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking