use ast_localtime() in every place localtime_r() was being used

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@69392 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming
2007-06-14 21:50:40 +00:00
parent 45ad7fcec8
commit ae82d97c6d
18 changed files with 80 additions and 54 deletions
+3 -3
View File
@@ -2111,7 +2111,7 @@ static int get_date(char *s, int len)
struct tm tm;
time_t t;
t = time(0);
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
return strftime(s, len, "%a %b %e %r %Z %Y", &tm);
}
@@ -4223,10 +4223,10 @@ static int play_message_datetime(struct ast_channel *chan, struct ast_vm_user *v
/* No internal variable parsing for now, so we'll comment it out for the time being */
#if 0
/* Set the DIFF_* variables */
localtime_r(&t, &time_now);
ast_localtime(&t, &time_now, NULL);
tv_now = ast_tvnow();
tnow = tv_now.tv_sec;
localtime_r(&tnow,&time_then);
ast_localtime(&tnow, &time_then, NULL);
/* Day difference */
if (time_now.tm_year == time_then.tm_year)
+1 -1
View File
@@ -199,7 +199,7 @@ static int append_date(char *buf, struct timeval tv, size_t bufsize)
if (usegmtime) {
gmtime_r(&t,&tm);
} else {
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
}
strftime(tmp, sizeof(tmp), DATE_FORMAT, &tm);
return append_string(buf, tmp, bufsize);
+3 -3
View File
@@ -95,17 +95,17 @@ static int manager_log(struct ast_cdr *cdr)
return 0;
t = cdr->start.tv_sec;
localtime_r(&t, &timeresult);
ast_localtime(&t, &timeresult, NULL);
strftime(strStartTime, sizeof(strStartTime), DATE_FORMAT, &timeresult);
if (cdr->answer.tv_sec) {
t = cdr->answer.tv_sec;
localtime_r(&t, &timeresult);
ast_localtime(&t, &timeresult, NULL);
strftime(strAnswerTime, sizeof(strAnswerTime), DATE_FORMAT, &timeresult);
}
t = cdr->end.tv_sec;
localtime_r(&t, &timeresult);
ast_localtime(&t, &timeresult, NULL);
strftime(strEndTime, sizeof(strEndTime), DATE_FORMAT, &timeresult);
manager_event(EVENT_FLAG_CALL, "Cdr",
+1 -1
View File
@@ -99,7 +99,7 @@ static int odbc_log(struct ast_cdr *cdr)
if (usegmtime)
gmtime_r(&cdr->start.tv_sec,&tm);
else
localtime_r(&cdr->start.tv_sec,&tm);
ast_localtime(&cdr->start.tv_sec, &tm, NULL);
ast_mutex_lock(&odbc_lock);
strftime(timestr, sizeof(timestr), DATE_FORMAT, &tm);
+1 -1
View File
@@ -77,7 +77,7 @@ static int pgsql_log(struct ast_cdr *cdr)
ast_mutex_lock(&pgsql_lock);
localtime_r(&cdr->start.tv_sec,&tm);
ast_localtime(&cdr->start.tv_sec, &tm, NULL);
strftime(timestr, sizeof(timestr), DATE_FORMAT, &tm);
if ((!connected) && pghostname && pgdbuser && pgpassword && pgdbname) {
+3 -3
View File
@@ -145,7 +145,7 @@ static int build_radius_record(VALUE_PAIR **send, struct ast_cdr *cdr)
if (ast_test_flag(&global_flags, RADIUS_FLAG_USEGMTIME))
gmtime_r(&(cdr->start.tv_sec), &tm);
else
localtime_r(&(cdr->start.tv_sec), &tm);
ast_localtime(&(cdr->start.tv_sec), &tm, NULL);
strftime(timestr, sizeof(timestr), DATE_FORMAT, &tm);
if (!rc_avpair_add(rh, send, PW_AST_START_TIME, timestr, strlen(timestr), VENDOR_CODE))
return -1;
@@ -154,7 +154,7 @@ static int build_radius_record(VALUE_PAIR **send, struct ast_cdr *cdr)
if (ast_test_flag(&global_flags, RADIUS_FLAG_USEGMTIME))
gmtime_r(&(cdr->answer.tv_sec), &tm);
else
localtime_r(&(cdr->answer.tv_sec), &tm);
ast_localtime(&(cdr->answer.tv_sec), &tm, NULL);
strftime(timestr, sizeof(timestr), DATE_FORMAT, &tm);
if (!rc_avpair_add(rh, send, PW_AST_ANSWER_TIME, timestr, strlen(timestr), VENDOR_CODE))
return -1;
@@ -163,7 +163,7 @@ static int build_radius_record(VALUE_PAIR **send, struct ast_cdr *cdr)
if (ast_test_flag(&global_flags, RADIUS_FLAG_USEGMTIME))
gmtime_r(&(cdr->end.tv_sec), &tm);
else
localtime_r(&(cdr->end.tv_sec), &tm);
ast_localtime(&(cdr->end.tv_sec), &tm, NULL);
strftime(timestr, sizeof(timestr), DATE_FORMAT, &tm);
if (!rc_avpair_add(rh, send, PW_AST_END_TIME, timestr, strlen(timestr), VENDOR_CODE))
return -1;
+3 -3
View File
@@ -101,15 +101,15 @@ static int sqlite_log(struct ast_cdr *cdr)
ast_mutex_lock(&sqlite_lock);
t = cdr->start.tv_sec;
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(startstr, sizeof(startstr), DATE_FORMAT, &tm);
t = cdr->answer.tv_sec;
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(answerstr, sizeof(answerstr), DATE_FORMAT, &tm);
t = cdr->end.tv_sec;
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(endstr, sizeof(endstr), DATE_FORMAT, &tm);
for(count=0; count<5; count++) {
+1 -1
View File
@@ -286,7 +286,7 @@ static void get_date(char *dateField, struct timeval tv)
if (!ast_tvzero(tv))
{
t = tv.tv_sec;
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(buf, 80, DATE_FORMAT, &tm);
sprintf(dateField, "'%s'", buf);
}
+2 -1
View File
@@ -2761,9 +2761,10 @@ static unsigned int iax2_datetime(const char *tz)
struct tm tm;
unsigned int tmp;
time(&t);
localtime_r(&t, &tm);
if (!ast_strlen_zero(tz))
ast_localtime(&t, &tm, tz);
else
ast_localtime(&t, &tm, NULL);
tmp = (tm.tm_sec >> 1) & 0x1f; /* 5 bits of seconds */
tmp |= (tm.tm_min & 0x3f) << 5; /* 6 bits of minutes */
tmp |= (tm.tm_hour & 0x1f) << 11; /* 5 bits of hours */
+1 -1
View File
@@ -2214,7 +2214,7 @@ static int transmit_notify_request_with_callerid(struct mgcp_subchannel *sub, ch
struct mgcp_endpoint *p = sub->parent;
time(&t);
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
n = callername;
l = callernum;
if (!n)
+1 -1
View File
@@ -295,7 +295,7 @@ static int phone_call(struct ast_channel *ast, char *dest, int timeout)
int start;
time(&UtcTime);
localtime_r(&UtcTime,&tm);
ast_localtime(&UtcTime, &tm, NULL);
memset(&cid, 0, sizeof(PHONE_CID));
if(&tm != NULL) {
+7
View File
@@ -32,12 +32,14 @@
#include <arpa/inet.h> /* we want to override inet_ntoa */
#include <netdb.h>
#include <limits.h>
#include <time.h> /* we want to override localtime_r */
#include "asterisk/lock.h"
#include "asterisk/time.h"
#include "asterisk/strings.h"
#include "asterisk/logger.h"
#include "asterisk/compiler.h"
#include "asterisk/localtime.h"
/*! \note
\verbatim
@@ -235,6 +237,11 @@ const char *ast_inet_ntoa(struct in_addr ia);
#endif
#define inet_ntoa __dont__use__inet_ntoa__use__ast_inet_ntoa__instead__
#ifdef localtime_r
#undef localtime_r
#endif
#define localtime_r __dont_use_localtime_r_use_ast_localtime_instead__
int ast_utils_init(void);
int ast_wait_for_input(int fd, int ms);
+2 -2
View File
@@ -1828,7 +1828,7 @@ static char *cli_prompt(EditLine *el)
case 'd': /* date */
memset(&tm, 0, sizeof(tm));
time(&ts);
if (localtime_r(&ts, &tm)) {
if (ast_localtime(&ts, &tm, NULL)) {
strftime(p, sizeof(prompt) - strlen(prompt), "%Y-%m-%d", &tm);
}
break;
@@ -1888,7 +1888,7 @@ static char *cli_prompt(EditLine *el)
case 't': /* time */
memset(&tm, 0, sizeof(tm));
time(&ts);
if (localtime_r(&ts, &tm)) {
if (ast_localtime(&ts, &tm, NULL)) {
strftime(p, sizeof(prompt) - strlen(prompt), "%H:%M:%S", &tm);
}
break;
+1 -1
View File
@@ -720,7 +720,7 @@ static int callerid_genmsg(char *msg, int size, const char *number, const char *
int i,x;
/* Get the time */
time(&t);
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
ptr = msg;
+2 -1
View File
@@ -208,7 +208,8 @@ static void cdr_get_tv(struct timeval tv, const char *fmt, char *buf, int bufsiz
time_t t = tv.tv_sec;
if (t) {
struct tm tm;
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(buf, bufsize, fmt, &tm);
}
}
+2 -2
View File
@@ -726,7 +726,7 @@ void ast_log(int level, const char *file, int line, const char *function, const
return;
time(&t);
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(date, sizeof(date), dateformat, &tm);
AST_LIST_LOCK(&logchannels);
@@ -860,7 +860,7 @@ void ast_verbose(const char *fmt, ...)
char *datefmt;
time(&t);
localtime_r(&t, &tm);
ast_localtime(&t, &tm, NULL);
strftime(date, sizeof(date), dateformat, &tm);
datefmt = alloca(strlen(date) + 3 + strlen(fmt) + 1);
sprintf(datefmt, "[%s] %s", date, fmt);
+1 -1
View File
@@ -4232,7 +4232,7 @@ int ast_check_timing(const struct ast_timing *i)
struct tm tm;
time_t t = time(NULL);
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
/* If it's not the right month, return */
if (!(i->monthmask & (1 << tm.tm_mon)))
+45 -28
View File
@@ -2924,8 +2924,8 @@ int ast_say_date_pt(struct ast_channel *chan, time_t t, const char *ints, const
struct tm tm;
char fn[256];
int res = 0;
ast_localtime(&t,&tm,NULL);
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
snprintf(fn, sizeof(fn), "digits/day-%d", tm.tm_wday);
if (!res)
res = wait_file(chan, ints, fn, lang);
@@ -5480,7 +5480,8 @@ int ast_say_time_en(struct ast_channel *chan, time_t t, const char *ints, const
struct tm tm;
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
hour = tm.tm_hour;
if (!hour)
hour = 12;
@@ -5526,7 +5527,8 @@ int ast_say_time_de(struct ast_channel *chan, time_t t, const char *ints, const
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res)
res = ast_say_number(chan, tm.tm_hour, ints, lang, "n");
if (!res)
@@ -5544,7 +5546,8 @@ int ast_say_time_fr(struct ast_channel *chan, time_t t, const char *ints, const
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_number(chan, tm.tm_hour, ints, lang, "f");
if (!res)
@@ -5561,7 +5564,8 @@ int ast_say_time_nl(struct ast_channel *chan, time_t t, const char *ints, const
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res)
res = ast_say_number(chan, tm.tm_hour, ints, lang, (char *) NULL);
if (!res)
@@ -5580,7 +5584,8 @@ int ast_say_time_pt(struct ast_channel *chan, time_t t, const char *ints, const
struct tm tm;
int res = 0;
int hour;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
hour = tm.tm_hour;
if (!res)
res = ast_say_number(chan, hour, ints, lang, "f");
@@ -5606,7 +5611,8 @@ int ast_say_time_pt_BR(struct ast_channel *chan, time_t t, const char *ints, con
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_number(chan, tm.tm_hour, ints, lang, "f");
if (!res) {
@@ -5635,7 +5641,8 @@ int ast_say_time_tw(struct ast_channel *chan, time_t t, const char *ints, const
struct tm tm;
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
hour = tm.tm_hour;
if (!hour)
hour = 12;
@@ -5702,7 +5709,8 @@ int ast_say_datetime_en(struct ast_channel *chan, time_t t, const char *ints, co
char fn[256];
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res) {
snprintf(fn, sizeof(fn), "digits/day-%d", tm.tm_wday);
res = ast_streamfile(chan, fn, lang);
@@ -5765,7 +5773,8 @@ int ast_say_datetime_de(struct ast_channel *chan, time_t t, const char *ints, co
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_date(chan, t, ints, lang);
if (!res)
ast_say_time(chan, t, ints, lang);
@@ -5779,7 +5788,8 @@ int ast_say_datetime_fr(struct ast_channel *chan, time_t t, const char *ints, co
struct tm tm;
char fn[256];
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res)
res = ast_say_number(chan, tm.tm_mday, ints, lang, (char *) NULL);
@@ -5817,7 +5827,8 @@ int ast_say_datetime_nl(struct ast_channel *chan, time_t t, const char *ints, co
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_date(chan, t, ints, lang);
if (!res) {
res = ast_streamfile(chan, "digits/nl-om", lang);
@@ -5836,7 +5847,8 @@ int ast_say_datetime_pt(struct ast_channel *chan, time_t t, const char *ints, co
char fn[256];
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res) {
snprintf(fn, sizeof(fn), "digits/day-%d", tm.tm_wday);
res = ast_streamfile(chan, fn, lang);
@@ -5899,7 +5911,8 @@ int ast_say_datetime_pt_BR(struct ast_channel *chan, time_t t, const char *ints,
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_date(chan, t, ints, lang);
if (!res)
res = ast_say_time(chan, t, ints, lang);
@@ -5913,7 +5926,8 @@ int ast_say_datetime_tw(struct ast_channel *chan, time_t t, const char *ints, co
char fn[256];
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
if (!res)
res = ast_say_number(chan, tm.tm_year + 1900, ints, lang, (char *) NULL);
if (!res) {
@@ -5992,8 +6006,8 @@ int ast_say_datetime_from_now_en(struct ast_channel *chan, time_t t, const char
time(&nowt);
localtime_r(&t,&tm);
localtime_r(&nowt,&now);
ast_localtime(&t, &tm, NULL);
ast_localtime(&nowt,&now, NULL);
daydiff = now.tm_yday - tm.tm_yday;
if ((daydiff < 0) || (daydiff > 6)) {
/* Day of month and month */
@@ -6032,8 +6046,8 @@ int ast_say_datetime_from_now_fr(struct ast_channel *chan, time_t t, const char
time(&nowt);
localtime_r(&t,&tm);
localtime_r(&nowt,&now);
ast_localtime(&t, &tm, NULL);
ast_localtime(&nowt, &now, NULL);
daydiff = now.tm_yday - tm.tm_yday;
if ((daydiff < 0) || (daydiff > 6)) {
/* Day of month and month */
@@ -6072,8 +6086,8 @@ int ast_say_datetime_from_now_pt(struct ast_channel *chan, time_t t, const char
time(&nowt);
localtime_r(&t,&tm);
localtime_r(&nowt,&now);
ast_localtime(&t, &tm, NULL);
ast_localtime(&nowt, &now, NULL);
daydiff = now.tm_yday - tm.tm_yday;
if ((daydiff < 0) || (daydiff > 6)) {
/* Day of month and month */
@@ -6296,7 +6310,7 @@ static int ast_say_time_gr(struct ast_channel *chan, time_t t, const char *ints,
int res = 0;
int hour, pm=0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
hour = tm.tm_hour;
if (!hour)
@@ -6341,7 +6355,8 @@ static int ast_say_datetime_gr(struct ast_channel *chan, time_t t, const char *i
struct tm tm;
char fn[256];
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
/* W E E K - D A Y */
@@ -6829,7 +6844,8 @@ static int ast_say_time_ge(struct ast_channel *chan, time_t t, const char *ints,
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_number(chan, tm.tm_hour, ints, lang, (char*)NULL);
if (!res) {
@@ -6859,7 +6875,8 @@ static int ast_say_datetime_ge(struct ast_channel *chan, time_t t, const char *i
{
struct tm tm;
int res = 0;
localtime_r(&t,&tm);
ast_localtime(&t, &tm, NULL);
res = ast_say_date(chan, t, ints, lang);
if (!res)
ast_say_time(chan, t, ints, lang);
@@ -6882,8 +6899,8 @@ static int ast_say_datetime_from_now_ge(struct ast_channel *chan, time_t t, cons
time(&nowt);
localtime_r(&t,&tm);
localtime_r(&nowt,&now);
ast_localtime(&t, &tm, NULL);
ast_localtime(&nowt, &now, NULL);
daydiff = now.tm_yday - tm.tm_yday;
if ((daydiff < 0) || (daydiff > 6)) {
/* Day of month and month */