Skip to content

Add command line parameter for QUIC flood control#2166

Open
avevad wants to merge 2 commits intotestnetfrom
quic-flood-param
Open

Add command line parameter for QUIC flood control#2166
avevad wants to merge 2 commits intotestnetfrom
quic-flood-param

Conversation

@avevad
Copy link
Member

@avevad avevad commented Feb 24, 2026

No description provided.

@avevad avevad self-assigned this Feb 24, 2026
@github-actions
Copy link

Potential issues:

  1. Possible null actor use when applying --quic-flood-control:
    • validator-engine/validator-engine.hpp:423 calls td::actor::send_closure(quic_.get(), ...) without checking that quic_ is initialized.
    • validator-engine/validator-engine.cpp:5638 enqueues this call in acts, which are executed immediately after ValidatorEngine creation (before run() and before start_rldp() creates quic_).
    • Risk: quic_ is null when the closure is sent, which likely crashes or silently drops the option.
    • Suggestion: store the options in ValidatorEngine (e.g., pending_quic_options_) and apply them inside start_rldp() after quic_ is created, or guard set_quic_options to cache if quic_ is empty.

If you want, I can propose a concrete patch for the deferred apply.

@github-actions
Copy link

--quic-flood-control is applied before quic_ exists. acts are executed immediately after ValidatorEngine actor creation, but quic_ is only created in start_rldp(). So set_quic_options() forwards to an empty actor and the option is either dropped or triggers a bad send. This makes the new CLI flag ineffective at startup. Consider storing the options in ValidatorEngine and applying them in start_rldp() (or pass options into the QuicSender ctor), and guard when quic_ isn’t initialized.
Files: validator-engine/validator-engine.hpp:423, validator-engine/validator-engine.cpp:5638

Copy link

@Kotoff82 Kotoff82 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants