mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
assigned-uniqueids: Miscellaneous cleanup and fixes.
* Fix memory leak in ast_unreal_new_channels(). Made it generate the ;2 uniqueid on a stack variable instead of mallocing it. * Made send error response to ARI and AMI requests instead of just logging excessive uniqueid length and allowing truncation. action_originate() and ari_channels_handle_originate_with_id(). * Fixed minor truncating uniqueid hole when generating the ;2 uniqueid string length. Created public and internal lengths of uniqueid. The internal length can handle a max public uniqueid plus an appended ;2. * free() and ast_free() are NULL tolerant so they don't need a NULL test before calling. * Made use better struct initialization format instead of the position dependent initialization format. Also anything not explicitly initialized in the struct is initialized to zero by the compiler. * Made ast_channel_internal_set_fake_ids() use the safer ast_copy_string() instead of strncpy(). Review: https://reviewboard.asterisk.org/r/3371/ ........ Merged revisions 410949 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -133,12 +133,31 @@ extern "C" {
|
||||
|
||||
#define AST_MAX_EXTENSION 80 /*!< Max length of an extension */
|
||||
#define AST_MAX_CONTEXT 80 /*!< Max length of a context */
|
||||
#define AST_MAX_UNIQUEID 150 /*!< Max length of a channel uniqueid */
|
||||
/* 150 = 127 (max systemname) + "-" + 10 (epoch
|
||||
* timestamp) + "." + 10 (monotonically incrementing
|
||||
* integer) + NULL. Note that if this value is ever
|
||||
* changed, MAX_CHANNEL_ID should be updated in
|
||||
* rtp_engine.h */
|
||||
|
||||
/*!
|
||||
* Max length of a channel uniqueid reported to the outside world.
|
||||
*
|
||||
* \details
|
||||
* 149 = 127 (max systemname) + "-" + 10 (epoch timestamp)
|
||||
* + "." + 10 (monotonically incrementing integer).
|
||||
*
|
||||
* \note If this value is ever changed, MAX_CHANNEL_ID should
|
||||
* be updated in rtp_engine.h.
|
||||
*/
|
||||
#define AST_MAX_PUBLIC_UNIQUEID 149
|
||||
|
||||
/*!
|
||||
* Maximum size of an internal Asterisk channel unique ID.
|
||||
*
|
||||
* \details
|
||||
* Add two for the Local;2 channel to append a ';2' if needed
|
||||
* plus nul terminator.
|
||||
*
|
||||
* \note If this value is ever changed, MAX_CHANNEL_ID should
|
||||
* be updated in rtp_engine.h.
|
||||
*/
|
||||
#define AST_MAX_UNIQUEID (AST_MAX_PUBLIC_UNIQUEID + 2 + 1)
|
||||
|
||||
#define AST_MAX_ACCOUNT_CODE 20 /*!< Max length of an account code */
|
||||
#define AST_CHANNEL_NAME 80 /*!< Max length of an ast_channel name */
|
||||
#define MAX_LANGUAGE 40 /*!< Max length of the language setting */
|
||||
|
@@ -86,11 +86,14 @@ extern "C" {
|
||||
/* Maximum number of generations */
|
||||
#define AST_RED_MAX_GENERATION 5
|
||||
|
||||
/* Maximum size of an Asterisk channel unique ID. Should match AST_MAX_UNIQUEID.
|
||||
* Note that we don't use that defined value directly here to avoid a hard dependency
|
||||
* on channel.h
|
||||
/*!
|
||||
* Maximum size of an internal Asterisk channel unique ID.
|
||||
*
|
||||
* \note Must match the AST_MAX_UNIQUEID(AST_MAX_PUBLIC_UNIQUEID) value.
|
||||
* We don't use that defined value directly here to avoid a hard
|
||||
* dependency on channel.h.
|
||||
*/
|
||||
#define MAX_CHANNEL_ID 150
|
||||
#define MAX_CHANNEL_ID 152
|
||||
|
||||
struct ast_rtp_instance;
|
||||
struct ast_rtp_glue;
|
||||
|
Reference in New Issue
Block a user