From: Viktor Szakats Date: Wed, 24 Dec 2025 00:08:58 +0000 (+0100) Subject: checksrc: ban `strcpy` X-Git-Tag: rc-8_18_0-3~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8636ad55dfbdbcc2809a61e65c3511baf5e7b0e8;p=thirdparty%2Fcurl.git checksrc: ban `strcpy` No longer used in the codebase. Replacement is `curlx_strcopy()`, possibly `memcpy()` or dynbuf. Also: - OS400: allow three calls. Closes #20088 --- diff --git a/packages/OS400/os400sys.c b/packages/OS400/os400sys.c index 04be163617..f3da1a4105 100644 --- a/packages/OS400/os400sys.c +++ b/packages/OS400/os400sys.c @@ -711,6 +711,7 @@ char *Curl_ldap_get_dn_a(void *ld, LDAPMessage *entry) ldap_memfree() and ldap_memalloc() does not exist. The solution is to overwrite the EBCDIC buffer with ASCII to return it. */ + /* !checksrc! disable BANNEDFUNC 1 */ strcpy(cp, cp2); free(cp2); return cp; @@ -741,6 +742,7 @@ char *Curl_ldap_first_attribute_a(void *ld, LDAPMessage *entry, ldap_memfree() and ldap_memalloc() does not exist. The solution is to overwrite the EBCDIC buffer with ASCII to return it. */ + /* !checksrc! disable BANNEDFUNC 1 */ strcpy(cp, cp2); free(cp2); return cp; @@ -771,6 +773,7 @@ char *Curl_ldap_next_attribute_a(void *ld, LDAPMessage *entry, ldap_memfree() and ldap_memalloc() does not exist. The solution is to overwrite the EBCDIC buffer with ASCII to return it. */ + /* !checksrc! disable BANNEDFUNC 1 */ strcpy(cp, cp2); free(cp2); return cp; diff --git a/scripts/checksrc.pl b/scripts/checksrc.pl index 8839f38bf6..cd5817a382 100755 --- a/scripts/checksrc.pl +++ b/scripts/checksrc.pl @@ -110,6 +110,7 @@ my %banfunc = ( "sscanf" => 1, "stat" => 1, "strcat" => 1, + "strcpy" => 1, "strdup" => 1, "strerror" => 1, "strncat" => 1,