options: Change ast_options from ast_flags to ast_flags64.

DeveloperNote: The 32-bit ast_options has no room left to accomodate new
options and so has been converted to an ast_flags64 structure. All internal
references to ast_options have been updated to use the 64-bit flag
manipulation macros.  External module references to the 32-bit ast_options
should continue to work on little-endian systems because the
least-significant bytes of a 64 bit integer will be in the same location as a
32-bit integer.  Because that's not the case on big-endian systems, we've
swapped the bytes in the flags manupulation macros on big-endian systems
so external modules should still work however you are encouraged to test.
This commit is contained in:
George Joseph
2025-07-21 13:12:40 -06:00
committed by github-actions[bot]
parent 9e3ea1c8ac
commit d1a1945967
13 changed files with 168 additions and 141 deletions

View File

@@ -486,7 +486,7 @@ static pj_bool_t distributor(pjsip_rx_data *rdata)
struct ast_taskprocessor *serializer = NULL;
pjsip_rx_data *clone;
if (!ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) {
if (!ast_fully_booted) {
/*
* Ignore everything until we are fully booted. Let the
* peer retransmit messages until we are ready.

View File

@@ -1603,7 +1603,7 @@ static int load_module(void)
if (!ast_sip_get_mwi_disable_initial_unsolicited()) {
create_mwi_subscriptions();
if (ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) {
if (ast_fully_booted) {
ast_sip_push_task(ast_serializer_pool_get(mwi_serializer_pool),
send_initial_notify_all, NULL);
} else {

View File

@@ -6081,7 +6081,7 @@ static int load_module(void)
pjsip_endpt_add_capability(ast_sip_get_pjsip_endpoint(), NULL, PJSIP_H_ALLOW, NULL, 1, &str_PUBLISH);
if (ast_test_flag(&ast_options, AST_OPT_FLAG_FULLY_BOOTED)) {
if (ast_fully_booted) {
ast_sip_push_task(NULL, subscription_persistence_load, NULL);
} else {
struct stasis_subscription *sub;