summaryrefslogtreecommitdiff
path: root/dbd
diff options
context:
space:
mode:
authorJeff Trawick <trawick@apache.org>2011-03-07 11:19:29 +0000
committerJeff Trawick <trawick@apache.org>2011-03-07 11:19:29 +0000
commit02f21a8c9b6b49aa31a14bbf48e759ad65ae1b3c (patch)
tree99289a787c74ab88a94c5986a20e123a7ebc8bbb /dbd
parent33ce19bef46ec15049c229e001790e08cca07f9c (diff)
downloadapr-02f21a8c9b6b49aa31a14bbf48e759ad65ae1b3c.tar.gz
replace some strcpy() calls with apr_cpystrn()
(no overflow currently) git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1078744 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'dbd')
-rw-r--r--dbd/apr_dbd_odbc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/dbd/apr_dbd_odbc.c b/dbd/apr_dbd_odbc.c
index 67cbc9026..f7769fcb8 100644
--- a/dbd/apr_dbd_odbc.c
+++ b/dbd/apr_dbd_odbc.c
@@ -914,10 +914,12 @@ static void check_error(apr_dbd_t *dbc, const char *step, SQLRETURN rc,
/* set info about last error in dbc - fast return for SQL_SUCCESS */
if (rc == SQL_SUCCESS) {
char successMsg[] = "[dbd_odbc] SQL_SUCCESS ";
+ apr_size_t successMsgLen = sizeof successMsg - 1;
dbc->lasterrorcode = SQL_SUCCESS;
- strcpy(dbc->lastError, successMsg);
- strcpy(dbc->lastError + sizeof(successMsg) - 1, step);
+ apr_cpystrn(dbc->lastError, successMsg, sizeof dbc->lastError);
+ apr_cpystrn(dbc->lastError + successMsgLen, step,
+ sizeof dbc->lastError - successMsgLen);
return;
}
switch (rc) {
@@ -974,7 +976,8 @@ static APR_INLINE int odbc_check_rollback(apr_dbd_t *handle)
{
if (handle->can_commit == APR_DBD_TRANSACTION_ROLLBACK) {
handle->lasterrorcode = SQL_ERROR;
- strcpy(handle->lastError, "[dbd_odbc] Rollback pending ");
+ apr_cpystrn(handle->lastError, "[dbd_odbc] Rollback pending ",
+ sizeof handle->lastError);
return 1;
}
return 0;