mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
res_pjsip: Move tenantid to end of ast_sip_endpoint
The tenantid field was originally added to the ast_sip_endpoint structure at the end of the AST_DECLARE_STRING_FIELDS block. This caused everything after it in the structure to move down in memory and break ABI compatibility. It's now at the end of the structure as an AST_STRING_FIELD_EXTENDED. Given the number of string fields in the structure now, the initial string field allocation was also increased from 64 to 128 bytes. Resolves: #982
This commit is contained in:
committed by
asterisk-org-access-app[bot]
parent
5d26fef407
commit
3e9b00a115
@@ -984,8 +984,6 @@ struct ast_sip_endpoint {
|
|||||||
AST_STRING_FIELD(incoming_mwi_mailbox);
|
AST_STRING_FIELD(incoming_mwi_mailbox);
|
||||||
/*! STIR/SHAKEN profile to use */
|
/*! STIR/SHAKEN profile to use */
|
||||||
AST_STRING_FIELD(stir_shaken_profile);
|
AST_STRING_FIELD(stir_shaken_profile);
|
||||||
/*! Tenant ID for the endpoint */
|
|
||||||
AST_STRING_FIELD(tenantid);
|
|
||||||
);
|
);
|
||||||
/*! Configuration for extensions */
|
/*! Configuration for extensions */
|
||||||
struct ast_sip_endpoint_extensions extensions;
|
struct ast_sip_endpoint_extensions extensions;
|
||||||
@@ -1069,6 +1067,8 @@ struct ast_sip_endpoint {
|
|||||||
enum ast_sip_100rel_mode rel100;
|
enum ast_sip_100rel_mode rel100;
|
||||||
/*! Send Advice-of-Charge messages */
|
/*! Send Advice-of-Charge messages */
|
||||||
unsigned int send_aoc;
|
unsigned int send_aoc;
|
||||||
|
/*! Tenant ID for the endpoint */
|
||||||
|
AST_STRING_FIELD_EXTENDED(tenantid);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*! URI parameter for symmetric transport */
|
/*! URI parameter for symmetric transport */
|
||||||
|
@@ -2458,7 +2458,7 @@ void *ast_sip_endpoint_alloc(const char *name)
|
|||||||
if (!endpoint) {
|
if (!endpoint) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (ast_string_field_init(endpoint, 64)) {
|
if (ast_string_field_init(endpoint, 128)) {
|
||||||
ao2_cleanup(endpoint);
|
ao2_cleanup(endpoint);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -2472,6 +2472,10 @@ void *ast_sip_endpoint_alloc(const char *name)
|
|||||||
ao2_cleanup(endpoint);
|
ao2_cleanup(endpoint);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
if (ast_string_field_init_extended(endpoint, tenantid)) {
|
||||||
|
ao2_cleanup(endpoint);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
if (!(endpoint->media.codecs = ast_format_cap_alloc(AST_FORMAT_CAP_FLAG_DEFAULT))) {
|
if (!(endpoint->media.codecs = ast_format_cap_alloc(AST_FORMAT_CAP_FLAG_DEFAULT))) {
|
||||||
ao2_cleanup(endpoint);
|
ao2_cleanup(endpoint);
|
||||||
|
Reference in New Issue
Block a user