Merge "fix_sms_maxlen" into mbtk_source_v2
diff --git a/mbtk/mbtk_logd/alog_read.c b/mbtk/mbtk_logd/alog_read.c
index 161c5ab..cfd2c6d 100755
--- a/mbtk/mbtk_logd/alog_read.c
+++ b/mbtk/mbtk_logd/alog_read.c
@@ -60,7 +60,10 @@
int tcp_connect(char* ip, int port);
extern int tmp_rd_fd;
-extern char radiolog_buff[MAX_BUFFER_SIZE];
+//extern char radiolog_buff[MAX_BUFFER_SIZE];
+extern char *radio_globalPtr;
+extern int radio_len;
+
void hex_print(char* buf, int len)
{
@@ -219,7 +222,7 @@
static char buffer[MAX_BUFFER_SIZE] = {0};
static int buffer_index = 0;
-
+ radio_globalPtr = buffer;
if(fcntl(fd_radio, F_GETFL) == -1 || access(tmp_log, W_OK) != 0)
{
@@ -283,7 +286,7 @@
{
memcpy(buffer + buffer_index, defaultBuffer, totalLen);
buffer_index += totalLen;
- memcpy(radiolog_buff,buffer,buffer_index);
+ //memcpy(radiolog_buff,buffer,buffer_index);
}
diff --git a/mbtk/mbtk_logd/main.c b/mbtk/mbtk_logd/main.c
index 71bc1f6..4cd4888 100755
--- a/mbtk/mbtk_logd/main.c
+++ b/mbtk/mbtk_logd/main.c
@@ -38,29 +38,40 @@
int tmp_syslog_fd = -1;
int tmp_rd_fd = -1;
-char syslog_buff[MAX_BUFFER_SIZE] = {0};
-char radiolog_buff[MAX_BUFFER_SIZE] = {0};
+//char syslog_buff[MAX_BUFFER_SIZE] = {0};
+//char radiolog_buff[MAX_BUFFER_SIZE] = {0};
+char *radio_globalPtr = NULL;
+char *sys_globalPtr = NULL;
+
+int radio_len = 0;
+int sys_len = 0;
static void signal_handler(int signum)
{
printf("Received SIGTERM signal, fflush buffer");
- if(fcntl(tmp_syslog_fd, F_GETFL) != -1 && strlen(syslog_buff) > 0)
+ if(fcntl(tmp_syslog_fd, F_GETFL) != -1 && sys_globalPtr !=NULL )
{
- if(write(tmp_syslog_fd, syslog_buff, strlen(syslog_buff)) < 0)
+ if(write(tmp_syslog_fd, sys_globalPtr, sys_len) < 0)
{
perror("write error");
}
- memset(syslog_buff,0,MAX_BUFFER_SIZE);
+ // memset(syslog_buff,0,MAX_BUFFER_SIZE);
+ memset(sys_globalPtr, 0, MAX_BUFFER_SIZE);
+ sys_globalPtr =NULL;
}
- if(fcntl(tmp_rd_fd, F_GETFL) != -1 && strlen(radiolog_buff) > 0)
+ if(fcntl(tmp_rd_fd, F_GETFL) != -1 && radio_globalPtr !=NULL)
{
- if(write(tmp_rd_fd, radiolog_buff, strlen(radiolog_buff)) < 0)
+ if(write(tmp_rd_fd, radio_globalPtr, radio_len) < 0)
{
perror("write error");
}
- memset(radiolog_buff,0,MAX_BUFFER_SIZE);
+
+ //memset(radiolog_buff,0,MAX_BUFFER_SIZE);
+ memset(radio_globalPtr, 0, MAX_BUFFER_SIZE);
+ radio_globalPtr =NULL;
+
}
}
diff --git a/mbtk/mbtk_logd/syslog_read.c b/mbtk/mbtk_logd/syslog_read.c
index 36df306..04bedb0 100755
--- a/mbtk/mbtk_logd/syslog_read.c
+++ b/mbtk/mbtk_logd/syslog_read.c
@@ -68,7 +68,11 @@
#define MAX_BUFFER_SIZE (8*1024)
extern int tmp_syslog_fd;
-extern char syslog_buff[MAX_BUFFER_SIZE];
+//extern char syslog_buff[MAX_BUFFER_SIZE];
+
+extern char *sys_globalPtr;
+extern int sys_len;
+
static const struct blobmsg_policy log_policy[] = {
[LOG_MSG] = { .name = "msg", .type = BLOBMSG_TYPE_STRING },
@@ -191,7 +195,9 @@
static char buffer[MAX_BUFFER_SIZE] = {0};
static int buffer_index = 0;
-
+
+ sys_globalPtr = buffer;
+
//
//sprintf(tmp_buf, "/tmp/log%s", strstr_tail(log_file, "/"));
@@ -301,7 +307,8 @@
{
memcpy(buffer + buffer_index, buf, len);
buffer_index += len;
- memcpy(syslog_buff,buffer,buffer_index);
+ sys_len = buffer_index;
+ //memcpy(syslog_buff,buffer,buffer_index);
}