summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/ContextBase.h13
-rw-r--r--gnss/GnssAdapter.cpp5
-rw-r--r--utils/loc_cfg.cpp2
-rw-r--r--utils/loc_cfg.h14
4 files changed, 14 insertions, 20 deletions
diff --git a/core/ContextBase.h b/core/ContextBase.h
index d268f5a..bdabf7b 100644
--- a/core/ContextBase.h
+++ b/core/ContextBase.h
@@ -36,9 +36,6 @@
#include <LBSProxyBase.h>
#include <loc_cfg.h>
-#define MAX_XTRA_SERVER_URL_LENGTH (256)
-#define MAX_SUPL_SERVER_URL_LENGTH (256)
-
/* GPS.conf support */
/* NOTE: the implementaiton of the parser casts number
fields to 32 bit. To ensure all 'n' fields working,
@@ -53,9 +50,9 @@ typedef struct loc_gps_cfg_s
uint32_t CAPABILITIES;
uint32_t LPP_PROFILE;
uint32_t XTRA_VERSION_CHECK;
- char XTRA_SERVER_1[MAX_XTRA_SERVER_URL_LENGTH];
- char XTRA_SERVER_2[MAX_XTRA_SERVER_URL_LENGTH];
- char XTRA_SERVER_3[MAX_XTRA_SERVER_URL_LENGTH];
+ char XTRA_SERVER_1[LOC_MAX_PARAM_STRING];
+ char XTRA_SERVER_2[LOC_MAX_PARAM_STRING];
+ char XTRA_SERVER_3[LOC_MAX_PARAM_STRING];
uint32_t USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL;
uint32_t NMEA_PROVIDER;
uint32_t GPS_LOCK;
@@ -65,10 +62,10 @@ typedef struct loc_gps_cfg_s
uint32_t LPPE_CP_TECHNOLOGY;
uint32_t LPPE_UP_TECHNOLOGY;
uint32_t EXTERNAL_DR_ENABLED;
- char SUPL_HOST[MAX_SUPL_SERVER_URL_LENGTH];
+ char SUPL_HOST[LOC_MAX_PARAM_STRING];
uint32_t SUPL_PORT;
uint32_t MODEM_TYPE;
- char MO_SUPL_HOST[MAX_SUPL_SERVER_URL_LENGTH];
+ char MO_SUPL_HOST[LOC_MAX_PARAM_STRING];
uint32_t MO_SUPL_PORT;
} loc_gps_cfg_s_type;
diff --git a/gnss/GnssAdapter.cpp b/gnss/GnssAdapter.cpp
index b9653fb..a40fe71 100644
--- a/gnss/GnssAdapter.cpp
+++ b/gnss/GnssAdapter.cpp
@@ -629,10 +629,7 @@ GnssAdapter::setSuplHostServer(const char* server, int port, LocServerType type)
url.assign(serverUrl);
if (LOC_AGPS_SUPL_SERVER == type) {
- int nCharsToCopy = strlen(server) < MAX_SUPL_SERVER_URL_LENGTH ?
- strlen(server) : (MAX_SUPL_SERVER_URL_LENGTH - 1);
- strlcpy(ContextBase::mGps_conf.SUPL_HOST, server, nCharsToCopy);
- ContextBase::mGps_conf.SUPL_HOST[nCharsToCopy] = '\0';
+ strlcpy(ContextBase::mGps_conf.SUPL_HOST, server, LOC_MAX_PARAM_STRING);
ContextBase::mGps_conf.SUPL_PORT = port;
}
diff --git a/utils/loc_cfg.cpp b/utils/loc_cfg.cpp
index 4c3bc58..7de6714 100644
--- a/utils/loc_cfg.cpp
+++ b/utils/loc_cfg.cpp
@@ -141,7 +141,7 @@ int loc_set_config_entry(const loc_param_s_type* config_entry, loc_param_v_type*
else {
strlcpy((char*) config_entry->param_ptr,
config_value->param_str_value,
- LOC_MAX_PARAM_STRING + 1);
+ LOC_MAX_PARAM_STRING);
}
/* Log INI values */
LOC_LOGD("%s: PARAM %s = %s", __FUNCTION__,
diff --git a/utils/loc_cfg.h b/utils/loc_cfg.h
index f0334d0..3057abc 100644
--- a/utils/loc_cfg.h
+++ b/utils/loc_cfg.h
@@ -37,7 +37,7 @@
#include <grp.h>
#define LOC_MAX_PARAM_NAME 80
-#define LOC_MAX_PARAM_STRING 170
+#define LOC_MAX_PARAM_STRING 172
#define LOC_MAX_PARAM_LINE (LOC_MAX_PARAM_NAME + LOC_MAX_PARAM_STRING)
#define LOC_FEATURE_MODE_DISABLED "DISABLED"
@@ -72,12 +72,12 @@
*============================================================================*/
typedef struct
{
- const char *param_name;
- void *param_ptr;
- uint8_t *param_set; /* indicate value set by config file */
- char param_type; /* 'n' for number,
- 's' for string,
- 'f' for double */
+ const char *param_name;
+ void *param_ptr; /* for string type, buf size need to be LOC_MAX_PARAM_STRING */
+ uint8_t *param_set; /* indicate value set by config file */
+ char param_type; /* 'n' for number,
+ 's' for string, NOTE: buf size need to be LOC_MAX_PARAM_STRING
+ 'f' for double */
} loc_param_s_type;
typedef enum {