diff options
author | Jeff Trawick <trawick@apache.org> | 2011-03-07 11:19:29 +0000 |
---|---|---|
committer | Jeff Trawick <trawick@apache.org> | 2011-03-07 11:19:29 +0000 |
commit | 02f21a8c9b6b49aa31a14bbf48e759ad65ae1b3c (patch) | |
tree | 99289a787c74ab88a94c5986a20e123a7ebc8bbb /dbd | |
parent | 33ce19bef46ec15049c229e001790e08cca07f9c (diff) | |
download | apr-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.c | 9 |
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; |