Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DEVEL] Improve socket options handling (remove redundant srt_post_opt_list structure) #3028

Open
maxsharabayko opened this issue Sep 12, 2024 · 0 comments
Labels
[core] Area: Changes in SRT library core help wanted Indicates that a maintainer wants help on an issue or pull request Type: Maintenance Work required to maintain or clean up the code
Milestone

Comments

@maxsharabayko
Copy link
Collaborator

There are two intersecting objects in SRT:

  • srt_post_opt_list
  • SrtOptionAction s_sockopt_action.

The first one (srt_post_opt_list) is only used by a group to check if an option can be used on a connected socket. But the same can be done using something like s_sockopt_action.flags[optname] & SRTO_POST.
There is no SRTO_POST at the moment, of course. The SRTO_POST_SPEC has a bit different purpose: to mark those POST options that need an additional special handling when set (e.g. updateCC).

The srt_post_opt_list seems to be redundant. s_sockopt_action.flags[optname] can be extended with SRTO_POST bit flags and then used by a group to detect POST options.

SRT versions: v1.5.3, v1.5.4.

@maxsharabayko maxsharabayko added Type: Maintenance Work required to maintain or clean up the code [core] Area: Changes in SRT library core labels Sep 12, 2024
@maxsharabayko maxsharabayko added this to the v1.6.0 milestone Sep 12, 2024
@maxsharabayko maxsharabayko added the help wanted Indicates that a maintainer wants help on an issue or pull request label Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[core] Area: Changes in SRT library core help wanted Indicates that a maintainer wants help on an issue or pull request Type: Maintenance Work required to maintain or clean up the code
Projects
None yet
Development

No branches or pull requests

1 participant