@@ -516,8 +516,7 @@ size_t php_mysqlnd_auth_write(MYSQLND_CONN_DATA * conn, void * _packet)
516516
517517 if (packet -> send_auth_data || packet -> is_change_user_packet ) {
518518 len = MIN (strlen (packet -> user ), MYSQLND_MAX_ALLOWED_USER_LEN );
519- memcpy (p , packet -> user , len );
520- p += len ;
519+ p = zend_mempcpy (p , packet -> user , len );
521520 * p ++ = '\0' ;
522521
523522 /* defensive coding */
@@ -540,15 +539,13 @@ size_t php_mysqlnd_auth_write(MYSQLND_CONN_DATA * conn, void * _packet)
540539 DBG_RETURN (0 );
541540 }
542541 if (packet -> auth_data_len ) {
543- memcpy (p , packet -> auth_data , packet -> auth_data_len );
544- p += packet -> auth_data_len ;
542+ p = zend_mempcpy (p , packet -> auth_data , packet -> auth_data_len );
545543 }
546544
547545 if (packet -> db_len > 0 ) {
548546 /* CLIENT_CONNECT_WITH_DB should have been set */
549547 size_t real_db_len = MIN (MYSQLND_MAX_ALLOWED_DB_LEN , packet -> db_len );
550- memcpy (p , packet -> db , real_db_len );
551- p += real_db_len ;
548+ p = zend_mempcpy (p , packet -> db , real_db_len );
552549 * p ++ = '\0' ;
553550 } else if (packet -> is_change_user_packet ) {
554551 * p ++ = '\0' ;
@@ -564,8 +561,7 @@ size_t php_mysqlnd_auth_write(MYSQLND_CONN_DATA * conn, void * _packet)
564561
565562 if (packet -> auth_plugin_name ) {
566563 len = MIN (strlen (packet -> auth_plugin_name ), sizeof (buffer ) - (p - buffer ) - 1 );
567- memcpy (p , packet -> auth_plugin_name , len );
568- p += len ;
564+ p = zend_mempcpy (p , packet -> auth_plugin_name , len );
569565 * p ++ = '\0' ;
570566 }
571567
@@ -599,12 +595,10 @@ size_t php_mysqlnd_auth_write(MYSQLND_CONN_DATA * conn, void * _packet)
599595
600596 /* copy key */
601597 p = php_mysqlnd_net_store_length (p , ZSTR_LEN (key ));
602- memcpy (p , ZSTR_VAL (key ), ZSTR_LEN (key ));
603- p += ZSTR_LEN (key );
598+ p = zend_mempcpy (p , ZSTR_VAL (key ), ZSTR_LEN (key ));
604599 /* copy value */
605600 p = php_mysqlnd_net_store_length (p , value_len );
606- memcpy (p , Z_STRVAL_P (entry_value ), value_len );
607- p += value_len ;
601+ p = zend_mempcpy (p , Z_STRVAL_P (entry_value ), value_len );
608602 }
609603 } ZEND_HASH_FOREACH_END ();
610604 }
@@ -766,8 +760,7 @@ php_mysqlnd_change_auth_response_write(MYSQLND_CONN_DATA * conn, void * _packet)
766760 DBG_ENTER ("php_mysqlnd_change_auth_response_write" );
767761
768762 if (packet -> auth_data_len ) {
769- memcpy (p , packet -> auth_data , packet -> auth_data_len );
770- p += packet -> auth_data_len ;
763+ p = zend_mempcpy (p , packet -> auth_data , packet -> auth_data_len );
771764 }
772765
773766 {
0 commit comments