mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-20 03:59:01 +00:00
Merged revisions 281052 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ................ r281052 | russell | 2010-08-05 08:16:11 -0500 (Thu, 05 Aug 2010) | 16 lines Merged revisions 281051 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ........ r281051 | russell | 2010-08-05 08:11:32 -0500 (Thu, 05 Aug 2010) | 9 lines Cleanup default option value handling for cdr.conf [general]. The default values would differ depending on whether or not cdr.conf exists. That is no longer the case. Apply a default value to the unanswered option. Define all default values as named constants. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@281054 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
39
main/cdr.c
39
main/cdr.c
@@ -84,18 +84,26 @@ static struct sched_context *sched;
|
|||||||
static int cdr_sched = -1;
|
static int cdr_sched = -1;
|
||||||
static pthread_t cdr_thread = AST_PTHREADT_NULL;
|
static pthread_t cdr_thread = AST_PTHREADT_NULL;
|
||||||
|
|
||||||
#define BATCH_SIZE_DEFAULT 100
|
static int enabled;
|
||||||
#define BATCH_TIME_DEFAULT 300
|
static const int ENABLED_DEFAULT = 1;
|
||||||
#define BATCH_SCHEDULER_ONLY_DEFAULT 0
|
|
||||||
#define BATCH_SAFE_SHUTDOWN_DEFAULT 1
|
|
||||||
|
|
||||||
static int enabled; /*! Is the CDR subsystem enabled ? */
|
|
||||||
static int unanswered;
|
|
||||||
static int batchmode;
|
static int batchmode;
|
||||||
|
static const int BATCHMODE_DEFAULT = 0;
|
||||||
|
|
||||||
|
static int unanswered;
|
||||||
|
static const int UNANSWERED_DEFAULT = 0;
|
||||||
|
|
||||||
static int batchsize;
|
static int batchsize;
|
||||||
|
static const int BATCH_SIZE_DEFAULT = 100;
|
||||||
|
|
||||||
static int batchtime;
|
static int batchtime;
|
||||||
|
static const int BATCH_TIME_DEFAULT = 300;
|
||||||
|
|
||||||
static int batchscheduleronly;
|
static int batchscheduleronly;
|
||||||
|
static const int BATCH_SCHEDULER_ONLY_DEFAULT = 0;
|
||||||
|
|
||||||
static int batchsafeshutdown;
|
static int batchsafeshutdown;
|
||||||
|
static const int BATCH_SAFE_SHUTDOWN_DEFAULT = 1;
|
||||||
|
|
||||||
AST_MUTEX_DEFINE_STATIC(cdr_batch_lock);
|
AST_MUTEX_DEFINE_STATIC(cdr_batch_lock);
|
||||||
|
|
||||||
@@ -1492,22 +1500,27 @@ static int do_reload(int reload)
|
|||||||
int res=0;
|
int res=0;
|
||||||
struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
|
struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
|
||||||
|
|
||||||
if ((config = ast_config_load2("cdr.conf", "cdr", config_flags)) == CONFIG_STATUS_FILEUNCHANGED)
|
if ((config = ast_config_load2("cdr.conf", "cdr", config_flags)) == CONFIG_STATUS_FILEUNCHANGED) {
|
||||||
return 0;
|
|
||||||
if (config == CONFIG_STATUS_FILEMISSING || config == CONFIG_STATUS_FILEUNCHANGED || config == CONFIG_STATUS_FILEINVALID) {
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ast_mutex_lock(&cdr_batch_lock);
|
ast_mutex_lock(&cdr_batch_lock);
|
||||||
|
|
||||||
|
was_enabled = enabled;
|
||||||
|
was_batchmode = batchmode;
|
||||||
|
|
||||||
batchsize = BATCH_SIZE_DEFAULT;
|
batchsize = BATCH_SIZE_DEFAULT;
|
||||||
batchtime = BATCH_TIME_DEFAULT;
|
batchtime = BATCH_TIME_DEFAULT;
|
||||||
batchscheduleronly = BATCH_SCHEDULER_ONLY_DEFAULT;
|
batchscheduleronly = BATCH_SCHEDULER_ONLY_DEFAULT;
|
||||||
batchsafeshutdown = BATCH_SAFE_SHUTDOWN_DEFAULT;
|
batchsafeshutdown = BATCH_SAFE_SHUTDOWN_DEFAULT;
|
||||||
was_enabled = enabled;
|
enabled = ENABLED_DEFAULT;
|
||||||
was_batchmode = batchmode;
|
batchmode = BATCHMODE_DEFAULT;
|
||||||
enabled = 1;
|
unanswered = UNANSWERED_DEFAULT;
|
||||||
batchmode = 0;
|
|
||||||
|
if (config == CONFIG_STATUS_FILEMISSING || config == CONFIG_STATUS_FILEINVALID) {
|
||||||
|
ast_mutex_unlock(&cdr_batch_lock);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/* don't run the next scheduled CDR posting while reloading */
|
/* don't run the next scheduled CDR posting while reloading */
|
||||||
AST_SCHED_DEL(sched, cdr_sched);
|
AST_SCHED_DEL(sched, cdr_sched);
|
||||||
|
Reference in New Issue
Block a user