From: segwon Date: Fri, 2 Dec 2016 02:20:35 +0000 (+0900) Subject: Modified strcpy function to stable strncpy function. X-Git-Tag: submit/tizen/20161205.014435^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=54c91b6d1f8601657be3df5cd9e1b0c430abf303;p=platform%2Fcore%2Fconvergence%2Fd2d-conv-manager.git Modified strcpy function to stable strncpy function. Signed-off-by: segwon Change-Id: I388f2df56f9ccbf101854f0d4ce2875a0160d2c7 --- diff --git a/daemon/access_control/ACLManager.cpp b/daemon/access_control/ACLManager.cpp index 84ebef5..4188ebf 100644 --- a/daemon/access_control/ACLManager.cpp +++ b/daemon/access_control/ACLManager.cpp @@ -16,6 +16,8 @@ #include "ACLManager.h" +#define MAC_ADDRESS_LEN 17 + typedef struct { conv::acl_manager::PopupCallback callback; void *userdata; @@ -273,9 +275,11 @@ ACLResult conv::acl_manager::SetDeviceInfoAndACL(const char *macAddress, const c return ACLResult_Error; } - char _mac[50]; - strcpy(_mac, macAddress); + char _mac[MAC_ADDRESS_LEN + 1]; + strncpy(_mac, macAddress, MAC_ADDRESS_LEN); _mac[1] = convert_mac(_mac[1]); + _mac[MAC_ADDRESS_LEN] = '\0'; + ret = sqlite3_bind_text(stmt, 1, _mac, strlen(_mac), SQLITE_TRANSIENT); if (ret != SQLITE_OK) { _E("Statement binding the macAddress text is fail. (%d: %s)", ret, sqlite3_errmsg(database)); @@ -320,9 +324,11 @@ ACLResult conv::acl_manager::GetACLState(const char *macAddress, ACManagerPolicy return ACLResult_Error; } - char _mac[50]; - strcpy(_mac, macAddress); + char _mac[MAC_ADDRESS_LEN + 1]; + strncpy(_mac, macAddress, MAC_ADDRESS_LEN); _mac[1] = convert_mac(_mac[1]); + _mac[MAC_ADDRESS_LEN] = '\0'; + ret = sqlite3_bind_text(stmt, 1, _mac, strlen(_mac), SQLITE_TRANSIENT); if (ret != SQLITE_OK) { _E("MacAddress Bind fail. (%d: %s)", ret, sqlite3_errmsg(database)); @@ -392,9 +398,11 @@ static void ChangeACLState(conv::Request *requestObj, const char *macAddress, co _E("Statement binding the aclState integer is fail. (%d: %s)", ret, sqlite3_errmsg(database)); } - char _mac[50]; - strcpy(_mac, macAddress); + char _mac[MAC_ADDRESS_LEN + 1]; + strncpy(_mac, macAddress, MAC_ADDRESS_LEN); _mac[1] = convert_mac(_mac[1]); + _mac[MAC_ADDRESS_LEN] = '\0'; + ret = sqlite3_bind_text(stmt, 3, _mac, strlen(_mac), SQLITE_TRANSIENT); if (ret != SQLITE_OK) { _E("Statement binding the macAddress text is fail. (%d: %s)", ret, sqlite3_errmsg(database)); @@ -430,9 +438,11 @@ static void SetACLState(conv::Request *requestObj, const char *macAddress, const return; } - char _mac[50]; - strcpy(_mac, macAddress); + char _mac[MAC_ADDRESS_LEN + 1]; + strncpy(_mac, macAddress, MAC_ADDRESS_LEN); _mac[1] = convert_mac(_mac[1]); + _mac[MAC_ADDRESS_LEN] = '\0'; + ret = sqlite3_bind_text(stmt, 1, _mac, strlen(_mac), SQLITE_TRANSIENT); if (ret != SQLITE_OK) { _E("Statement binding the macAddress text is fail. (%d: %s)", ret, sqlite3_errmsg(database)); @@ -471,9 +481,11 @@ static void RemoveACLDevice(conv::Request *requestObj, const char *macAddress) return; } - char _mac[50]; - strcpy(_mac, macAddress); + char _mac[MAC_ADDRESS_LEN + 1]; + strncpy(_mac, macAddress, MAC_ADDRESS_LEN); _mac[1] = convert_mac(_mac[1]); + _mac[MAC_ADDRESS_LEN] = '\0'; + ret = sqlite3_bind_text(stmt, 1, _mac, strlen(_mac), SQLITE_TRANSIENT); if (ret != SQLITE_OK) { _E("Statement binding the macAddress text is fail. (%d: %s)", ret, sqlite3_errmsg(database));