mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-04-24 00:58:32 +00:00
try to fix date issues
This commit is contained in:
parent
8563691595
commit
6a9dafbb64
2 changed files with 19 additions and 14 deletions
|
|
@ -1798,7 +1798,7 @@ static void text_received(Sal *sal, eXosip_event_t *ev){
|
||||||
for(j=0;j<12;j++) {
|
for(j=0;j<12;j++) {
|
||||||
if(strcmp(tmp2,months[j])==0) ret.tm_mon=j;
|
if(strcmp(tmp2,months[j])==0) ret.tm_mon=j;
|
||||||
}
|
}
|
||||||
ret.tm_isdst=-1;
|
ret.tm_isdst=0;
|
||||||
}else ms_warning("No date header in SIP MESSAGE, we don't know when it was sent.");
|
}else ms_warning("No date header in SIP MESSAGE, we don't know when it was sent.");
|
||||||
|
|
||||||
content_type= osip_message_get_content_type(ev->request);
|
content_type= osip_message_get_content_type(ev->request);
|
||||||
|
|
|
||||||
|
|
@ -81,23 +81,28 @@ void sal_remove_in_subscribe(Sal *sal, SalOp *op){
|
||||||
sal->in_subscribes=ms_list_remove(sal->in_subscribes,op);
|
sal->in_subscribes=ms_list_remove(sal->in_subscribes,op);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIN32
|
static const char *days[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
|
||||||
|
static const char *months[]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
|
||||||
|
|
||||||
static inline char *my_ctime_r(const time_t *t, char *buf){
|
static void msg_add_current_date(osip_message_t *msg){
|
||||||
strcpy(buf,ctime(t));
|
char tmp[64]={0};
|
||||||
return buf;
|
time_t curtime=time(NULL);
|
||||||
|
struct tm *ret;
|
||||||
|
#ifndef WIN32
|
||||||
|
struct tm gmt;
|
||||||
|
ret=gmtime_r(&curtime,&gmt);
|
||||||
|
#else
|
||||||
|
ret=gmtime(&curtime);
|
||||||
|
#endif
|
||||||
|
/*cannot use strftime because it is locale dependant*/
|
||||||
|
snprintf(tmp,sizeof(tmp)-1,"%s, %i %s %i %02i:%02i:%02i GMT",
|
||||||
|
days[ret->tm_wday],ret->tm_mday,months[ret->tm_mon],1900+ret->tm_year,ret->tm_hour,ret->tm_min,ret->tm_sec);
|
||||||
|
osip_message_replace_header(msg,"Date",tmp);
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
|
||||||
#define my_ctime_r ctime_r
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int sal_message_send(SalOp *op, const char *from, const char *to, const char* content_type, const char *msg){
|
int sal_message_send(SalOp *op, const char *from, const char *to, const char* content_type, const char *msg){
|
||||||
osip_message_t *sip=NULL;
|
osip_message_t *sip=NULL;
|
||||||
char t[26];
|
|
||||||
time_t curtime=time(NULL);
|
|
||||||
|
|
||||||
my_ctime_r(&curtime,t);
|
|
||||||
|
|
||||||
if(op->cid == -1)
|
if(op->cid == -1)
|
||||||
{
|
{
|
||||||
|
|
@ -113,7 +118,7 @@ int sal_message_send(SalOp *op, const char *from, const char *to, const char* co
|
||||||
sal_op_get_from(op),sal_op_get_route(op));
|
sal_op_get_from(op),sal_op_get_route(op));
|
||||||
if (sip!=NULL){
|
if (sip!=NULL){
|
||||||
sal_exosip_add_custom_headers(sip,op->base.custom_headers);
|
sal_exosip_add_custom_headers(sip,op->base.custom_headers);
|
||||||
osip_message_set_date(sip,t);
|
msg_add_current_date(sip);
|
||||||
osip_message_set_content_type(sip,content_type);
|
osip_message_set_content_type(sip,content_type);
|
||||||
if (msg) osip_message_set_body(sip,msg,strlen(msg));
|
if (msg) osip_message_set_body(sip,msg,strlen(msg));
|
||||||
sal_add_other(op->base.root,op,sip);
|
sal_add_other(op->base.root,op,sip);
|
||||||
|
|
@ -136,7 +141,7 @@ int sal_message_send(SalOp *op, const char *from, const char *to, const char* co
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
sal_exosip_add_custom_headers(sip,op->base.custom_headers);
|
sal_exosip_add_custom_headers(sip,op->base.custom_headers);
|
||||||
osip_message_set_date(sip,t);
|
msg_add_current_date(sip);
|
||||||
osip_message_set_content_type(sip,content_type);
|
osip_message_set_content_type(sip,content_type);
|
||||||
if (msg) osip_message_set_body(sip,msg,strlen(msg));
|
if (msg) osip_message_set_body(sip,msg,strlen(msg));
|
||||||
eXosip_call_send_request(op->did,sip);
|
eXosip_call_send_request(op->did,sip);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue