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
(cherry picked from commit
be8f3a3fa48e59be48c3c8ccabe42bb311a8dd3d)
AST_STRING_FIELD(incoming_mwi_mailbox);
/*! STIR/SHAKEN profile to use */
AST_STRING_FIELD(stir_shaken_profile);
- /*! Tenant ID for the endpoint */
- AST_STRING_FIELD(tenantid);
);
/*! Configuration for extensions */
struct ast_sip_endpoint_extensions extensions;
enum ast_sip_100rel_mode rel100;
/*! Send Advice-of-Charge messages */
unsigned int send_aoc;
+ /*! Tenant ID for the endpoint */
+ AST_STRING_FIELD_EXTENDED(tenantid);
};
/*! URI parameter for symmetric transport */
if (!endpoint) {
return NULL;
}
- if (ast_string_field_init(endpoint, 64)) {
+ if (ast_string_field_init(endpoint, 128)) {
ao2_cleanup(endpoint);
return NULL;
}
ao2_cleanup(endpoint);
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))) {
ao2_cleanup(endpoint);