mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
MNDR:
- rename the macro for updating the connection state
This commit is contained in:
parent
109dc08ffd
commit
280c834c49
6 changed files with 90 additions and 87 deletions
|
@ -295,7 +295,7 @@ mysqlnd_read_packet_header_and_body(MYSQLND_PACKET_HEADER * packet_header, MYSQL
|
|||
DBG_ENTER("mysqlnd_read_packet_header_and_body");
|
||||
DBG_INF_FMT("buf=%p size=%u", buf, buf_size);
|
||||
if (FAIL == mysqlnd_read_header(conn->net, packet_header, conn->stats, conn->error_info)) {
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
SET_CLIENT_ERROR(conn->error_info, CR_SERVER_GONE_ERROR, UNKNOWN_SQLSTATE, mysqlnd_server_gone);
|
||||
php_error_docref(NULL, E_WARNING, "%s", mysqlnd_server_gone);
|
||||
DBG_ERR_FMT("Can't read %s's header", packet_type_as_text);
|
||||
|
@ -307,7 +307,7 @@ mysqlnd_read_packet_header_and_body(MYSQLND_PACKET_HEADER * packet_header, MYSQL
|
|||
DBG_RETURN(FAIL);
|
||||
}
|
||||
if (FAIL == conn->net->data->m.receive_ex(conn->net, buf, packet_header->size, conn->stats, conn->error_info)) {
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
SET_CLIENT_ERROR(conn->error_info, CR_SERVER_GONE_ERROR, UNKNOWN_SQLSTATE, mysqlnd_server_gone);
|
||||
php_error_docref(NULL, E_WARNING, "%s", mysqlnd_server_gone);
|
||||
DBG_ERR_FMT("Empty '%s' packet body", packet_type_as_text);
|
||||
|
@ -668,7 +668,7 @@ size_t php_mysqlnd_auth_write(void * _packet)
|
|||
} else {
|
||||
size_t sent = conn->net->data->m.send_ex(conn->net, buffer, p - buffer - MYSQLND_HEADER_SIZE, conn->stats, conn->error_info);
|
||||
if (!sent) {
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
}
|
||||
DBG_RETURN(sent);
|
||||
}
|
||||
|
@ -837,7 +837,7 @@ php_mysqlnd_change_auth_response_write(void * _packet)
|
|||
mnd_efree(buffer);
|
||||
}
|
||||
if (!sent) {
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
}
|
||||
DBG_RETURN(sent);
|
||||
}
|
||||
|
@ -1091,7 +1091,7 @@ end:
|
|||
EG(error_reporting) = error_reporting;
|
||||
}
|
||||
if (!sent) {
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
}
|
||||
DBG_RETURN(sent);
|
||||
}
|
||||
|
@ -2660,7 +2660,7 @@ mysqlnd_protocol_payload_decoder_factory_free(MYSQLND_PROTOCOL_PAYLOAD_DECODER_F
|
|||
|
||||
|
||||
|
||||
/* {{{ mysqlnd_conn_data::send_command_do_request */
|
||||
/* {{{ send_command_do_request */
|
||||
static enum_func_status
|
||||
send_command_do_request(
|
||||
MYSQLND_CONN_DATA * const conn,
|
||||
|
@ -2669,7 +2669,7 @@ send_command_do_request(
|
|||
const zend_bool silent,
|
||||
const zend_bool ignore_upsert_status,
|
||||
|
||||
enum mysqlnd_connection_state conn_state,
|
||||
struct st_mysqlnd_connection_state * connection_state,
|
||||
MYSQLND_ERROR_INFO * error_info,
|
||||
MYSQLND_UPSERT_STATUS * upsert_status,
|
||||
MYSQLND_STATS * stats,
|
||||
|
@ -2682,8 +2682,9 @@ send_command_do_request(
|
|||
DBG_INF_FMT("command=%s silent=%u", mysqlnd_command_to_text[command], silent);
|
||||
DBG_INF_FMT("server_status=%u", upsert_status->server_status);
|
||||
DBG_INF_FMT("sending %u bytes", arg_len + 1); /* + 1 is for the command */
|
||||
enum mysqlnd_connection_state state = connection_state->m->get(connection_state);
|
||||
|
||||
switch (conn_state) {
|
||||
switch (state) {
|
||||
case CONN_READY:
|
||||
break;
|
||||
case CONN_QUIT_SENT:
|
||||
|
@ -2692,7 +2693,7 @@ send_command_do_request(
|
|||
DBG_RETURN(FAIL);
|
||||
default:
|
||||
SET_CLIENT_ERROR(error_info, CR_COMMANDS_OUT_OF_SYNC, UNKNOWN_SQLSTATE, mysqlnd_out_of_sync);
|
||||
DBG_ERR_FMT("Command out of sync. State=%u", conn_state);
|
||||
DBG_ERR_FMT("Command out of sync. State=%u", state);
|
||||
DBG_RETURN(FAIL);
|
||||
}
|
||||
|
||||
|
@ -2718,7 +2719,7 @@ send_command_do_request(
|
|||
DBG_ERR_FMT("Error while sending %s packet", mysqlnd_command_to_text[command]);
|
||||
php_error(E_WARNING, "Error while sending %s packet. PID=%d", mysqlnd_command_to_text[command], getpid());
|
||||
}
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
connection_state->m->set(connection_state, CONN_QUIT_SENT);
|
||||
conn->m->send_close(conn);
|
||||
DBG_ERR("Server is gone");
|
||||
ret = FAIL;
|
||||
|
@ -2778,7 +2779,7 @@ mysqlnd_com_set_option_run(void *cmd)
|
|||
int2store(buffer, (unsigned int) option);
|
||||
|
||||
ret = send_command_do_request(conn, COM_SET_OPTION, buffer, sizeof(buffer), FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_EOF_PACKET, FALSE, COM_SET_OPTION, TRUE);
|
||||
}
|
||||
|
@ -2820,7 +2821,7 @@ mysqlnd_com_debug_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_debug_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_DEBUG, NULL, 0, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_EOF_PACKET, COM_DEBUG, COM_DEBUG, TRUE);
|
||||
}
|
||||
|
@ -2872,7 +2873,7 @@ mysqlnd_com_init_db_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_init_db_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_INIT_DB, (zend_uchar*) command->context.db.s, command->context.db.l, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_OK_PACKET, FALSE, COM_INIT_DB, TRUE);
|
||||
}
|
||||
|
@ -2914,7 +2915,7 @@ mysqlnd_com_ping_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_ping_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_PING, NULL, 0, TRUE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_OK_PACKET, TRUE, COM_PING, TRUE);
|
||||
}
|
||||
|
@ -2982,7 +2983,7 @@ mysqlnd_com_field_list_run(void *cmd)
|
|||
}
|
||||
|
||||
ret = send_command_do_request(conn, COM_FIELD_LIST, buff, p - buff, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3022,7 +3023,7 @@ mysqlnd_com_statistics_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_statistics_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_STATISTICS, NULL, 0, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3073,7 +3074,7 @@ mysqlnd_com_process_kill_run(void *cmd)
|
|||
int4store(buff, command->context.process_id);
|
||||
|
||||
ret = send_command_do_request(conn, COM_PROCESS_KILL, buff, 4, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret && command->context.read_response) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_OK_PACKET, FALSE, COM_PROCESS_KILL, TRUE);
|
||||
}
|
||||
|
@ -3128,7 +3129,7 @@ mysqlnd_com_refresh_run(void *cmd)
|
|||
int1store(bits, command->context.options);
|
||||
|
||||
ret = send_command_do_request(conn, COM_REFRESH, bits, 1, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_OK_PACKET, FALSE, COM_REFRESH, TRUE);
|
||||
}
|
||||
|
@ -3183,7 +3184,7 @@ mysqlnd_com_shutdown_run(void *cmd)
|
|||
int1store(bits, command->context.level);
|
||||
|
||||
ret = send_command_do_request(conn, COM_SHUTDOWN, bits, 1, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
if (PASS == ret) {
|
||||
ret = conn->m->send_command_handle_response(conn, PROT_OK_PACKET, FALSE, COM_SHUTDOWN, TRUE);
|
||||
}
|
||||
|
@ -3235,7 +3236,7 @@ mysqlnd_com_quit_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_quit_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_QUIT, NULL, 0, TRUE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3283,10 +3284,10 @@ mysqlnd_com_query_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_query_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_QUERY, (zend_uchar*) command->context.query.s, command->context.query.l, FALSE, FALSE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
if (PASS == ret) {
|
||||
CONN_SET_STATE(conn, CONN_QUERY_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUERY_SENT);
|
||||
}
|
||||
|
||||
DBG_RETURN(ret);
|
||||
|
@ -3337,7 +3338,7 @@ mysqlnd_com_change_user_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_change_user_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_CHANGE_USER, (zend_uchar*) command->context.payload.s, command->context.payload.l, command->context.silent, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3383,7 +3384,7 @@ mysqlnd_com_reap_result_run(void *cmd)
|
|||
struct st_mysqlnd_protocol_com_reap_result_command * command = (struct st_mysqlnd_protocol_com_reap_result_command *) cmd;
|
||||
enum_func_status ret = FAIL;
|
||||
MYSQLND_CONN_DATA * conn = command->context.conn;
|
||||
const enum_mysqlnd_connection_state state = CONN_GET_STATE(conn);
|
||||
const enum_mysqlnd_connection_state state = GET_CONNECTION_STATE(&conn->state);
|
||||
|
||||
DBG_ENTER("mysqlnd_com_reap_result_run");
|
||||
if (state <= CONN_READY || state == CONN_QUIT_SENT) {
|
||||
|
@ -3440,7 +3441,7 @@ mysqlnd_com_stmt_prepare_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_stmt_prepare_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_STMT_PREPARE, (zend_uchar*) command->context.query.s, command->context.query.l, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3490,7 +3491,7 @@ mysqlnd_com_stmt_execute_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_stmt_execute_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_STMT_EXECUTE, (zend_uchar*) command->context.payload.s, command->context.payload.l, FALSE, FALSE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3540,7 +3541,7 @@ mysqlnd_com_stmt_fetch_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_stmt_fetch_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_STMT_FETCH, (zend_uchar*) command->context.payload.s, command->context.payload.l, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3592,7 +3593,7 @@ mysqlnd_com_stmt_reset_run(void *cmd)
|
|||
|
||||
int4store(cmd_buf, command->context.stmt_id);
|
||||
ret = send_command_do_request(conn, COM_STMT_RESET, cmd_buf, sizeof(cmd_buf), FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3642,7 +3643,7 @@ mysqlnd_com_stmt_send_long_data_run(void *cmd)
|
|||
DBG_ENTER("mysqlnd_com_stmt_send_long_data_run");
|
||||
|
||||
ret = send_command_do_request(conn, COM_STMT_SEND_LONG_DATA, (zend_uchar*) command->context.payload.s, command->context.payload.l, FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3694,7 +3695,7 @@ mysqlnd_com_stmt_close_run(void *cmd)
|
|||
|
||||
int4store(cmd_buf, command->context.stmt_id);
|
||||
ret = send_command_do_request(conn, COM_STMT_CLOSE, cmd_buf, sizeof(cmd_buf), FALSE, TRUE,
|
||||
CONN_GET_STATE(conn), conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
&conn->state, conn->error_info, conn->upsert_status, conn->stats, conn->payload_decoder_factory);
|
||||
|
||||
DBG_RETURN(ret);
|
||||
}
|
||||
|
@ -3819,7 +3820,7 @@ end:
|
|||
DBG_RETURN(ret);
|
||||
|
||||
close_conn:
|
||||
CONN_SET_STATE(conn, CONN_QUIT_SENT);
|
||||
SET_CONNECTION_STATE(&conn->state, CONN_QUIT_SENT);
|
||||
conn->m->send_close(conn);
|
||||
SET_CLIENT_ERROR(conn->error_info, CR_SERVER_GONE_ERROR, UNKNOWN_SQLSTATE, mysqlnd_server_gone);
|
||||
PACKET_FREE(auth_packet);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue