From 0aae99ca8f5e7262745e10508af7b87df446ca53 Mon Sep 17 00:00:00 2001 From: dapan1121 Date: Wed, 9 Oct 2024 14:03:12 +0800 Subject: [PATCH] fix: replace unsafe function --- source/libs/scheduler/src/schTask.c | 4 ++-- source/os/src/osDir.c | 8 ++++---- source/os/src/osLocale.c | 2 +- source/os/src/osString.c | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/source/libs/scheduler/src/schTask.c b/source/libs/scheduler/src/schTask.c index 4c609fa5e2..e6b68051f9 100644 --- a/source/libs/scheduler/src/schTask.c +++ b/source/libs/scheduler/src/schTask.c @@ -288,7 +288,7 @@ int32_t schProcessOnTaskSuccess(SSchJob *pJob, SSchTask *pTask) { /* if (SCH_IS_DATA_SRC_TASK(task) && job->dataSrcEps.numOfEps < SCH_MAX_CANDIDATE_EP_NUM) { - strncpy(job->dataSrcEps.fqdn[job->dataSrcEps.numOfEps], task->execAddr.fqdn, sizeof(task->execAddr.fqdn)); + tstrncpy(job->dataSrcEps.fqdn[job->dataSrcEps.numOfEps], task->execAddr.fqdn, sizeof(task->execAddr.fqdn)); job->dataSrcEps.port[job->dataSrcEps.numOfEps] = task->execAddr.port; ++job->dataSrcEps.numOfEps; @@ -840,7 +840,7 @@ int32_t schSetTaskCandidateAddrs(SSchJob *pJob, SSchTask *pTask) { /* for (int32_t i = 0; i < job->dataSrcEps.numOfEps && addNum < SCH_MAX_CANDIDATE_EP_NUM; ++i) { - strncpy(epSet->fqdn[epSet->numOfEps], job->dataSrcEps.fqdn[i], sizeof(job->dataSrcEps.fqdn[i])); + tstrncpy(epSet->fqdn[epSet->numOfEps], job->dataSrcEps.fqdn[i], sizeof(job->dataSrcEps.fqdn[i])); epSet->port[epSet->numOfEps] = job->dataSrcEps.port[i]; ++epSet->numOfEps; diff --git a/source/os/src/osDir.c b/source/os/src/osDir.c index 1043c2f825..497769a71c 100644 --- a/source/os/src/osDir.c +++ b/source/os/src/osDir.c @@ -341,7 +341,7 @@ int32_t taosExpandDir(const char *dirname, char *outname, int32_t maxlen) { } if (full_path.we_wordv != NULL && full_path.we_wordv[0] != NULL) { - (void)strncpy(outname, full_path.we_wordv[0], maxlen); + tstrncpy(outname, full_path.we_wordv[0], maxlen); } wordfree(&full_path); @@ -358,9 +358,9 @@ int32_t taosRealPath(char *dirname, char *realPath, int32_t maxlen) { #endif if (strlen(tmp) < maxlen) { if (realPath == NULL) { - (void)strncpy(dirname, tmp, maxlen); + tstrncpy(dirname, tmp, maxlen); } else { - (void)strncpy(realPath, tmp, maxlen); + tstrncpy(realPath, tmp, maxlen); } return 0; } @@ -559,6 +559,6 @@ void taosGetCwd(char *buf, int32_t len) { char *unused __attribute__((unused)); unused = getcwd(buf, len - 1); #else - strncpy(buf, "not implemented on windows", len - 1); + tstrncpy(buf, "not implemented on windows", len); #endif } diff --git a/source/os/src/osLocale.c b/source/os/src/osLocale.c index cc4cc9ca9e..becf0d5a70 100644 --- a/source/os/src/osLocale.c +++ b/source/os/src/osLocale.c @@ -137,7 +137,7 @@ void taosGetSystemLocale(char *outLocale, char *outCharset) { char *revisedCharset = taosCharsetReplace(str); if (NULL == revisedCharset) { - (void)tstrncpy(outCharset, "UTF-8", TD_CHARSET_LEN); + tstrncpy(outCharset, "UTF-8", TD_CHARSET_LEN); } else { tstrncpy(outCharset, revisedCharset, TD_CHARSET_LEN); diff --git a/source/os/src/osString.c b/source/os/src/osString.c index 7913effcc2..15f12e9db8 100644 --- a/source/os/src/osString.c +++ b/source/os/src/osString.c @@ -71,7 +71,7 @@ char *taosStrndup(const char *s, int size) { if (l > size) l = size; s2 = malloc(l + 1); if (s2) { - strncpy(s2, s, l); + tstrncpy(s2, s, l + 1); s2[l] = '\0'; } else { terrno = TSDB_CODE_OUT_OF_MEMORY;