diff --git a/ext/mysqli/mysqli.c b/ext/mysqli/mysqli.c index 9f031706eaa34..8d2d2b8847b0e 100644 --- a/ext/mysqli/mysqli.c +++ b/ext/mysqli/mysqli.c @@ -533,167 +533,6 @@ PHP_MINIT_FUNCTION(mysqli) MYSQLI_ADD_PROPERTIES(&mysqli_stmt_properties, mysqli_stmt_property_entries); zend_hash_add_ptr(&classes, mysqli_stmt_class_entry->name, &mysqli_stmt_properties); - /* mysqli_options */ - REGISTER_LONG_CONSTANT("MYSQLI_READ_DEFAULT_GROUP", MYSQL_READ_DEFAULT_GROUP, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_READ_DEFAULT_FILE", MYSQL_READ_DEFAULT_FILE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_CONNECT_TIMEOUT", MYSQL_OPT_CONNECT_TIMEOUT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOCAL_INFILE", MYSQL_OPT_LOCAL_INFILE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOAD_DATA_LOCAL_DIR", MYSQL_OPT_LOAD_DATA_LOCAL_DIR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_INIT_COMMAND", MYSQL_INIT_COMMAND, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_READ_TIMEOUT", MYSQL_OPT_READ_TIMEOUT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_CMD_BUFFER_SIZE", MYSQLND_OPT_NET_CMD_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_READ_BUFFER_SIZE", MYSQLND_OPT_NET_READ_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_INT_AND_FLOAT_NATIVE", MYSQLND_OPT_INT_AND_FLOAT_NATIVE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_SSL_VERIFY_SERVER_CERT", MYSQL_OPT_SSL_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_SERVER_PUBLIC_KEY", MYSQL_SERVER_PUBLIC_KEY, CONST_CS | CONST_PERSISTENT); - - /* mysqli_real_connect flags */ - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL", CLIENT_SSL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_COMPRESS",CLIENT_COMPRESS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_INTERACTIVE", CLIENT_INTERACTIVE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_IGNORE_SPACE", CLIENT_IGNORE_SPACE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_NO_SCHEMA", CLIENT_NO_SCHEMA, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_FOUND_ROWS", CLIENT_FOUND_ROWS, CONST_CS | CONST_PERSISTENT); -#ifdef CLIENT_SSL_VERIFY_SERVER_CERT - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL_VERIFY_SERVER_CERT", CLIENT_SSL_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT", CLIENT_SSL_DONT_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); -#endif - REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS", CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_OPT_CAN_HANDLE_EXPIRED_PASSWORDS", MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS, CONST_CS | CONST_PERSISTENT); - - /* for mysqli_query */ - REGISTER_LONG_CONSTANT("MYSQLI_STORE_RESULT", MYSQLI_STORE_RESULT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_USE_RESULT", MYSQLI_USE_RESULT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_ASYNC", MYSQLI_ASYNC, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_STORE_RESULT_COPY_DATA", MYSQLI_STORE_RESULT_COPY_DATA, CONST_CS | CONST_PERSISTENT); - - /* for mysqli_fetch_assoc */ - REGISTER_LONG_CONSTANT("MYSQLI_ASSOC", MYSQLI_ASSOC, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_NUM", MYSQLI_NUM, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_BOTH", MYSQLI_BOTH, CONST_CS | CONST_PERSISTENT); - - /* for mysqli_stmt_set_attr */ - REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH", STMT_ATTR_UPDATE_MAX_LENGTH, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_CURSOR_TYPE", STMT_ATTR_CURSOR_TYPE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_NO_CURSOR", CURSOR_TYPE_NO_CURSOR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_READ_ONLY", CURSOR_TYPE_READ_ONLY, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_FOR_UPDATE", CURSOR_TYPE_FOR_UPDATE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_SCROLLABLE", CURSOR_TYPE_SCROLLABLE, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_PREFETCH_ROWS", STMT_ATTR_PREFETCH_ROWS, CONST_CS | CONST_PERSISTENT); - - /* column information */ - REGISTER_LONG_CONSTANT("MYSQLI_NOT_NULL_FLAG", NOT_NULL_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_PRI_KEY_FLAG", PRI_KEY_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_UNIQUE_KEY_FLAG", UNIQUE_KEY_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_MULTIPLE_KEY_FLAG", MULTIPLE_KEY_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_BLOB_FLAG", BLOB_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_UNSIGNED_FLAG", UNSIGNED_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_ZEROFILL_FLAG", ZEROFILL_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_AUTO_INCREMENT_FLAG", AUTO_INCREMENT_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TIMESTAMP_FLAG", TIMESTAMP_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_SET_FLAG", SET_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_NUM_FLAG", NUM_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_PART_KEY_FLAG", PART_KEY_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_GROUP_FLAG", GROUP_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_ENUM_FLAG", ENUM_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_BINARY_FLAG", BINARY_FLAG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_NO_DEFAULT_VALUE_FLAG", NO_DEFAULT_VALUE_FLAG, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_ON_UPDATE_NOW_FLAG", ON_UPDATE_NOW_FLAG, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DECIMAL", FIELD_TYPE_DECIMAL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TINY", FIELD_TYPE_TINY, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_SHORT", FIELD_TYPE_SHORT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONG", FIELD_TYPE_LONG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_FLOAT", FIELD_TYPE_FLOAT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DOUBLE", FIELD_TYPE_DOUBLE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NULL", FIELD_TYPE_NULL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TIMESTAMP", FIELD_TYPE_TIMESTAMP, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONGLONG", FIELD_TYPE_LONGLONG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_INT24", FIELD_TYPE_INT24, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DATE", FIELD_TYPE_DATE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TIME", FIELD_TYPE_TIME, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DATETIME", FIELD_TYPE_DATETIME , CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_YEAR", FIELD_TYPE_YEAR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NEWDATE", FIELD_TYPE_NEWDATE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_ENUM", FIELD_TYPE_ENUM, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_SET", FIELD_TYPE_SET, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TINY_BLOB", FIELD_TYPE_TINY_BLOB, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_MEDIUM_BLOB", FIELD_TYPE_MEDIUM_BLOB, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONG_BLOB", FIELD_TYPE_LONG_BLOB, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_BLOB", FIELD_TYPE_BLOB, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_VAR_STRING", FIELD_TYPE_VAR_STRING, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_STRING", FIELD_TYPE_STRING, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_CHAR", FIELD_TYPE_CHAR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_INTERVAL", FIELD_TYPE_INTERVAL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_GEOMETRY", FIELD_TYPE_GEOMETRY, CONST_CS | CONST_PERSISTENT); -#ifdef FIELD_TYPE_JSON - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_JSON", FIELD_TYPE_JSON, CONST_CS | CONST_PERSISTENT); -#endif - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NEWDECIMAL", FIELD_TYPE_NEWDECIMAL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TYPE_BIT", FIELD_TYPE_BIT, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_SET_CHARSET_NAME", MYSQL_SET_CHARSET_NAME, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_SET_CHARSET_DIR", MYSQL_SET_CHARSET_DIR, CONST_CS | CONST_PERSISTENT); - - /* bind support */ - REGISTER_LONG_CONSTANT("MYSQLI_NO_DATA", MYSQL_NO_DATA, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); -#ifdef MYSQL_DATA_TRUNCATED - REGISTER_LONG_CONSTANT("MYSQLI_DATA_TRUNCATED", MYSQL_DATA_TRUNCATED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); -#endif - - /* reporting */ - REGISTER_LONG_CONSTANT("MYSQLI_REPORT_INDEX", MYSQLI_REPORT_INDEX, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REPORT_ERROR", MYSQLI_REPORT_ERROR, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REPORT_STRICT", MYSQLI_REPORT_STRICT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REPORT_ALL", MYSQLI_REPORT_ALL, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REPORT_OFF", 0, CONST_CS | CONST_PERSISTENT); - - /* We use non-nested macros with expansion, as VC has problems */ - REGISTER_LONG_CONSTANT("MYSQLI_DEBUG_TRACE_ENABLED", MYSQLND_DBG_ENABLED, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED", SERVER_QUERY_NO_GOOD_INDEX_USED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); - REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_NO_INDEX_USED", SERVER_QUERY_NO_INDEX_USED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); -#ifdef SERVER_QUERY_WAS_SLOW - REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_WAS_SLOW", SERVER_QUERY_WAS_SLOW, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); -#endif -#ifdef SERVER_PS_OUT_PARAMS - REGISTER_LONG_CONSTANT("MYSQLI_SERVER_PS_OUT_PARAMS", SERVER_PS_OUT_PARAMS, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); -#endif - - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_GRANT", REFRESH_GRANT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_LOG", REFRESH_LOG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_TABLES", REFRESH_TABLES, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_HOSTS", REFRESH_HOSTS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_STATUS", REFRESH_STATUS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_THREADS", REFRESH_THREADS, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_REPLICA", REFRESH_SLAVE, CONST_CS | CONST_PERSISTENT); - /* temporarily for backward compatibility */ - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_SLAVE", REFRESH_SLAVE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_MASTER", REFRESH_MASTER, CONST_CS | CONST_PERSISTENT); -#ifdef REFRESH_BACKUP_LOG - REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_BACKUP_LOG", REFRESH_BACKUP_LOG, CONST_CS | CONST_PERSISTENT); -#endif - - - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT", TRANS_START_WITH_CONSISTENT_SNAPSHOT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_READ_WRITE", TRANS_START_READ_WRITE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_READ_ONLY", TRANS_START_READ_ONLY, CONST_CS | CONST_PERSISTENT); - - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_AND_CHAIN", TRANS_COR_AND_CHAIN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_AND_NO_CHAIN", TRANS_COR_AND_NO_CHAIN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_RELEASE", TRANS_COR_RELEASE, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_NO_RELEASE", TRANS_COR_NO_RELEASE, CONST_CS | CONST_PERSISTENT); - -#ifdef MARIADB_BASE_VERSION - REGISTER_BOOL_CONSTANT("MYSQLI_IS_MARIADB", 1, CONST_CS | CONST_PERSISTENT); -#else - REGISTER_BOOL_CONSTANT("MYSQLI_IS_MARIADB", 0, CONST_CS | CONST_PERSISTENT); -#endif - register_mysqli_symbols(module_number); mysqlnd_reverse_api_register_api(&mysqli_reverse_api); diff --git a/ext/mysqli/mysqli.stub.php b/ext/mysqli/mysqli.stub.php index 1821b8271c26b..5c6128deccbd8 100644 --- a/ext/mysqli/mysqli.stub.php +++ b/ext/mysqli/mysqli.stub.php @@ -2,6 +2,617 @@ /** @generate-class-entries */ +/* mysqli_options */ +/** + * @var int + * @cname MYSQL_READ_DEFAULT_GROUP + */ +const MYSQLI_READ_DEFAULT_GROUP = UNKNOWN; +/** + * @var int + * @cname MYSQL_READ_DEFAULT_FILE + */ +const MYSQLI_READ_DEFAULT_FILE = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_CONNECT_TIMEOUT + */ +const MYSQLI_OPT_CONNECT_TIMEOUT = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_LOCAL_INFILE + */ +const MYSQLI_OPT_LOCAL_INFILE = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_LOAD_DATA_LOCAL_DIR + */ +const MYSQLI_OPT_LOAD_DATA_LOCAL_DIR = UNKNOWN; +/** + * @var int + * @cname MYSQL_INIT_COMMAND + */ +const MYSQLI_INIT_COMMAND = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_READ_TIMEOUT + */ +const MYSQLI_OPT_READ_TIMEOUT = UNKNOWN; +/** + * @var int + * @cname MYSQLND_OPT_NET_CMD_BUFFER_SIZE + */ +const MYSQLI_OPT_NET_CMD_BUFFER_SIZE = UNKNOWN; +/** + * @var int + * @cname MYSQLND_OPT_NET_READ_BUFFER_SIZE + */ +const MYSQLI_OPT_NET_READ_BUFFER_SIZE = UNKNOWN; +/** + * @var int + * @cname MYSQLND_OPT_INT_AND_FLOAT_NATIVE + */ +const MYSQLI_OPT_INT_AND_FLOAT_NATIVE = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_SSL_VERIFY_SERVER_CERT + */ +const MYSQLI_OPT_SSL_VERIFY_SERVER_CERT = UNKNOWN; + +/** + * @var int + * @cname MYSQL_SERVER_PUBLIC_KEY + */ +const MYSQLI_SERVER_PUBLIC_KEY = UNKNOWN; + +/* mysqli_real_connect flags */ +/** + * @var int + * @cname CLIENT_SSL + */ +const MYSQLI_CLIENT_SSL = UNKNOWN; +/** + * @var int + * @cname CLIENT_COMPRESS + */ +const MYSQLI_CLIENT_COMPRESS = UNKNOWN; +/** + * @var int + * @cname CLIENT_INTERACTIVE + */ +const MYSQLI_CLIENT_INTERACTIVE = UNKNOWN; +/** + * @var int + * @cname CLIENT_IGNORE_SPACE + */ +const MYSQLI_CLIENT_IGNORE_SPACE = UNKNOWN; +/** + * @var int + * @cname CLIENT_NO_SCHEMA + */ +const MYSQLI_CLIENT_NO_SCHEMA = UNKNOWN; +/** + * @var int + * @cname CLIENT_FOUND_ROWS + */ +const MYSQLI_CLIENT_FOUND_ROWS = UNKNOWN; +#ifdef CLIENT_SSL_VERIFY_SERVER_CERT +/** + * @var int + * @cname CLIENT_SSL_VERIFY_SERVER_CERT + */ +const MYSQLI_CLIENT_SSL_VERIFY_SERVER_CERT = UNKNOWN; +/** + * @var int + * @cname CLIENT_SSL_DONT_VERIFY_SERVER_CERT + */ +const MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT = UNKNOWN; +#endif +/** + * @var int + * @cname CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS + */ +const MYSQLI_CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS = UNKNOWN; +/** + * @var int + * @cname MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS + */ +const MYSQLI_OPT_CAN_HANDLE_EXPIRED_PASSWORDS = UNKNOWN; + +/* for mysqli_query */ +/** + * @var int + * @cname MYSQLI_STORE_RESULT + */ +const MYSQLI_STORE_RESULT = UNKNOWN; +/** + * @var int + * @cname MYSQLI_USE_RESULT + */ +const MYSQLI_USE_RESULT = UNKNOWN; +/** + * @var int + * @cname MYSQLI_ASYNC + */ +const MYSQLI_ASYNC = UNKNOWN; +/** + * @var int + * @cname MYSQLI_STORE_RESULT_COPY_DATA + */ +const MYSQLI_STORE_RESULT_COPY_DATA = UNKNOWN; + +/* for mysqli_fetch_assoc */ +/** + * @var int + * @cname MYSQLI_ASSOC + */ +const MYSQLI_ASSOC = UNKNOWN; +/** + * @var int + * @cname MYSQLI_NUM + */ +const MYSQLI_NUM = UNKNOWN; +/** + * @var int + * @cname MYSQLI_BOTH + */ +const MYSQLI_BOTH = UNKNOWN; + +/* for mysqli_stmt_set_attr */ +/** + * @var int + * @cname STMT_ATTR_UPDATE_MAX_LENGTH + */ +const MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH = UNKNOWN; + +/** + * @var int + * @cname STMT_ATTR_CURSOR_TYPE + */ +const MYSQLI_STMT_ATTR_CURSOR_TYPE = UNKNOWN; +/** + * @var int + * @cname CURSOR_TYPE_NO_CURSOR + */ +const MYSQLI_CURSOR_TYPE_NO_CURSOR = UNKNOWN; +/** + * @var int + * @cname CURSOR_TYPE_READ_ONLY + */ +const MYSQLI_CURSOR_TYPE_READ_ONLY = UNKNOWN; +/** + * @var int + * @cname CURSOR_TYPE_FOR_UPDATE + */ +const MYSQLI_CURSOR_TYPE_FOR_UPDATE = UNKNOWN; +/** + * @var int + * @cname CURSOR_TYPE_SCROLLABLE + */ +const MYSQLI_CURSOR_TYPE_SCROLLABLE = UNKNOWN; +/** + * @var int + * @cname STMT_ATTR_PREFETCH_ROWS + */ +const MYSQLI_STMT_ATTR_PREFETCH_ROWS = UNKNOWN; + +/* column information */ +/** + * @var int + * @cname NOT_NULL_FLAG + */ +const MYSQLI_NOT_NULL_FLAG = UNKNOWN; +/** + * @var int + * @cname PRI_KEY_FLAG + */ +const MYSQLI_PRI_KEY_FLAG = UNKNOWN; +/** + * @var int + * @cname UNIQUE_KEY_FLAG + */ +const MYSQLI_UNIQUE_KEY_FLAG = UNKNOWN; +/** + * @var int + * @cname MULTIPLE_KEY_FLAG + */ +const MYSQLI_MULTIPLE_KEY_FLAG = UNKNOWN; +/** + * @var int + * @cname BLOB_FLAG + */ +const MYSQLI_BLOB_FLAG = UNKNOWN; +/** + * @var int + * @cname UNSIGNED_FLAG + */ +const MYSQLI_UNSIGNED_FLAG = UNKNOWN; +/** + * @var int + * @cname ZEROFILL_FLAG + */ +const MYSQLI_ZEROFILL_FLAG = UNKNOWN; +/** + * @var int + * @cname AUTO_INCREMENT_FLAG + */ +const MYSQLI_AUTO_INCREMENT_FLAG = UNKNOWN; +/** + * @var int + * @cname TIMESTAMP_FLAG + */ +const MYSQLI_TIMESTAMP_FLAG = UNKNOWN; +/** + * @var int + * @cname SET_FLAG + */ +const MYSQLI_SET_FLAG = UNKNOWN; +/** + * @var int + * @cname NUM_FLAG + */ +const MYSQLI_NUM_FLAG = UNKNOWN; +/** + * @var int + * @cname PART_KEY_FLAG + */ +const MYSQLI_PART_KEY_FLAG = UNKNOWN; +/** + * @var int + * @cname GROUP_FLAG + */ +const MYSQLI_GROUP_FLAG = UNKNOWN; +/** + * @var int + * @cname ENUM_FLAG + */ +const MYSQLI_ENUM_FLAG = UNKNOWN; +/** + * @var int + * @cname BINARY_FLAG + */ +const MYSQLI_BINARY_FLAG = UNKNOWN; +/** + * @var int + * @cname NO_DEFAULT_VALUE_FLAG + */ +const MYSQLI_NO_DEFAULT_VALUE_FLAG = UNKNOWN; + +/** + * @var int + * @cname ON_UPDATE_NOW_FLAG + */ +const MYSQLI_ON_UPDATE_NOW_FLAG = UNKNOWN; + +/** + * @var int + * @cname FIELD_TYPE_DECIMAL + */ +const MYSQLI_TYPE_DECIMAL = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_TINY + */ +const MYSQLI_TYPE_TINY = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_SHORT + */ +const MYSQLI_TYPE_SHORT = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_LONG + */ +const MYSQLI_TYPE_LONG = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_FLOAT + */ +const MYSQLI_TYPE_FLOAT = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_DOUBLE + */ +const MYSQLI_TYPE_DOUBLE = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_NULL + */ +const MYSQLI_TYPE_NULL = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_TIMESTAMP + */ +const MYSQLI_TYPE_TIMESTAMP = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_LONGLONG + */ +const MYSQLI_TYPE_LONGLONG = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_INT24 + */ +const MYSQLI_TYPE_INT24 = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_DATE + */ +const MYSQLI_TYPE_DATE = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_TIME + */ +const MYSQLI_TYPE_TIME = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_DATETIME + */ +const MYSQLI_TYPE_DATETIME = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_YEAR + */ +const MYSQLI_TYPE_YEAR = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_NEWDATE + */ +const MYSQLI_TYPE_NEWDATE = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_ENUM + */ +const MYSQLI_TYPE_ENUM = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_SET + */ +const MYSQLI_TYPE_SET = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_TINY_BLOB + */ +const MYSQLI_TYPE_TINY_BLOB = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_MEDIUM_BLOB + */ +const MYSQLI_TYPE_MEDIUM_BLOB = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_LONG_BLOB + */ +const MYSQLI_TYPE_LONG_BLOB = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_BLOB + */ +const MYSQLI_TYPE_BLOB = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_VAR_STRING + */ +const MYSQLI_TYPE_VAR_STRING = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_STRING + */ +const MYSQLI_TYPE_STRING = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_CHAR + */ +const MYSQLI_TYPE_CHAR = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_INTERVAL + */ +const MYSQLI_TYPE_INTERVAL = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_GEOMETRY + */ +const MYSQLI_TYPE_GEOMETRY = UNKNOWN; +#ifdef FIELD_TYPE_JSON +/** + * @var int + * @cname FIELD_TYPE_JSON + */ +const MYSQLI_TYPE_JSON = UNKNOWN; +#endif +/** + * @var int + * @cname FIELD_TYPE_NEWDECIMAL + */ +const MYSQLI_TYPE_NEWDECIMAL = UNKNOWN; +/** + * @var int + * @cname FIELD_TYPE_BIT + */ +const MYSQLI_TYPE_BIT = UNKNOWN; +/** + * @var int + * @cname MYSQL_SET_CHARSET_NAME + */ +const MYSQLI_SET_CHARSET_NAME = UNKNOWN; +/** + * @var int + * @cname MYSQL_SET_CHARSET_DIR + */ +const MYSQLI_SET_CHARSET_DIR = UNKNOWN; + +/* bind support */ +/** + * @var int + * @cname MYSQL_NO_DATA + * @deprecated + */ +const MYSQLI_NO_DATA = UNKNOWN; +#ifdef MYSQL_DATA_TRUNCATED +/** + * @var int + * @cname MYSQL_DATA_TRUNCATED + * @deprecated + */ +const MYSQLI_DATA_TRUNCATED = UNKNOWN; +#endif + +/* reporting */ +/** + * @var int + * @cname MYSQLI_REPORT_INDEX + */ +const MYSQLI_REPORT_INDEX = UNKNOWN; +/** + * @var int + * @cname MYSQLI_REPORT_ERROR + */ +const MYSQLI_REPORT_ERROR = UNKNOWN; +/** + * @var int + * @cname MYSQLI_REPORT_STRICT + */ +const MYSQLI_REPORT_STRICT = UNKNOWN; +/** + * @var int + * @cname MYSQLI_REPORT_ALL + */ +const MYSQLI_REPORT_ALL = UNKNOWN; +/** + * @var int + * @cname MYSQLI_REPORT_OFF + */ +const MYSQLI_REPORT_OFF = UNKNOWN; + +/** + * @var int + * @cname MYSQLND_DBG_ENABLED + */ +const MYSQLI_DEBUG_TRACE_ENABLED = UNKNOWN; + +/** + * @var int + * @cname SERVER_QUERY_NO_GOOD_INDEX_USED + * @deprecated + */ +const MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED = UNKNOWN; +/** + * @var int + * @cname SERVER_QUERY_NO_INDEX_USED + * @deprecated + */ +const MYSQLI_SERVER_QUERY_NO_INDEX_USED = UNKNOWN; +#ifdef SERVER_QUERY_WAS_SLOW +/** + * @var int + * @cname SERVER_QUERY_WAS_SLOW + * @deprecated + */ +const MYSQLI_SERVER_QUERY_WAS_SLOW = UNKNOWN; +#endif +#ifdef SERVER_PS_OUT_PARAMS +/** + * @var int + * @cname SERVER_PS_OUT_PARAMS + * @deprecated + */ +const MYSQLI_SERVER_PS_OUT_PARAMS = UNKNOWN; +#endif + +/** + * @var int + * @cname REFRESH_GRANT + */ +const MYSQLI_REFRESH_GRANT = UNKNOWN; +/** + * @var int + * @cname REFRESH_LOG + */ +const MYSQLI_REFRESH_LOG = UNKNOWN; +/** + * @var int + * @cname REFRESH_TABLES + */ +const MYSQLI_REFRESH_TABLES = UNKNOWN; +/** + * @var int + * @cname REFRESH_HOSTS + */ +const MYSQLI_REFRESH_HOSTS = UNKNOWN; +/** + * @var int + * @cname REFRESH_STATUS + */ +const MYSQLI_REFRESH_STATUS = UNKNOWN; +/** + * @var int + * @cname REFRESH_THREADS + */ +const MYSQLI_REFRESH_THREADS = UNKNOWN; +/** + * @var int + * @cname REFRESH_SLAVE + */ +const MYSQLI_REFRESH_REPLICA = UNKNOWN; +/** + * @var int + * @cname REFRESH_SLAVE + */ +const MYSQLI_REFRESH_SLAVE = UNKNOWN; +/** + * @var int + * @cname REFRESH_MASTER + */ +const MYSQLI_REFRESH_MASTER = UNKNOWN; +#ifdef REFRESH_BACKUP_LOG +/** + * @var int + * @cname REFRESH_BACKUP_LOG + */ +const MYSQLI_REFRESH_BACKUP_LOG = UNKNOWN; +#endif + +/** + * @var int + * @cname TRANS_START_WITH_CONSISTENT_SNAPSHOT + */ +const MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT = UNKNOWN; +/** + * @var int + * @cname TRANS_START_READ_WRITE + */ +const MYSQLI_TRANS_START_READ_WRITE = UNKNOWN; +/** + * @var int + * @cname TRANS_START_READ_ONLY + */ +const MYSQLI_TRANS_START_READ_ONLY = UNKNOWN; + +/** + * @var int + * @cname TRANS_COR_AND_CHAIN + */ +const MYSQLI_TRANS_COR_AND_CHAIN = UNKNOWN; +/** + * @var int + * @cname TRANS_COR_AND_NO_CHAIN + */ +const MYSQLI_TRANS_COR_AND_NO_CHAIN = UNKNOWN; +/** + * @var int + * @cname TRANS_COR_RELEASE + */ +const MYSQLI_TRANS_COR_RELEASE = UNKNOWN; +/** + * @var int + * @cname TRANS_COR_NO_RELEASE + */ +const MYSQLI_TRANS_COR_NO_RELEASE = UNKNOWN; + +/** @var bool */ +const MYSQLI_IS_MARIADB = false; + final class mysqli_driver { /** @readonly */ diff --git a/ext/mysqli/mysqli_arginfo.h b/ext/mysqli/mysqli_arginfo.h index b26cc0ccf429c..756a3a65d7343 100644 --- a/ext/mysqli/mysqli_arginfo.h +++ b/ext/mysqli/mysqli_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: 9db7bea22e25a7f3d70a556f0945c74511866de2 */ + * Stub hash: ff2b7cd8ab89ecd882e42d3de36429418876dba8 */ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_affected_rows, 0, 1, MAY_BE_LONG|MAY_BE_STRING) ZEND_ARG_OBJ_INFO(0, mysql, mysqli, 0) @@ -1045,6 +1045,135 @@ static const zend_function_entry class_mysqli_sql_exception_methods[] = { static void register_mysqli_symbols(int module_number) { + REGISTER_LONG_CONSTANT("MYSQLI_READ_DEFAULT_GROUP", MYSQL_READ_DEFAULT_GROUP, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_READ_DEFAULT_FILE", MYSQL_READ_DEFAULT_FILE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_CONNECT_TIMEOUT", MYSQL_OPT_CONNECT_TIMEOUT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOCAL_INFILE", MYSQL_OPT_LOCAL_INFILE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_LOAD_DATA_LOCAL_DIR", MYSQL_OPT_LOAD_DATA_LOCAL_DIR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_INIT_COMMAND", MYSQL_INIT_COMMAND, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_READ_TIMEOUT", MYSQL_OPT_READ_TIMEOUT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_CMD_BUFFER_SIZE", MYSQLND_OPT_NET_CMD_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_NET_READ_BUFFER_SIZE", MYSQLND_OPT_NET_READ_BUFFER_SIZE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_INT_AND_FLOAT_NATIVE", MYSQLND_OPT_INT_AND_FLOAT_NATIVE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_SSL_VERIFY_SERVER_CERT", MYSQL_OPT_SSL_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_SERVER_PUBLIC_KEY", MYSQL_SERVER_PUBLIC_KEY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL", CLIENT_SSL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_COMPRESS", CLIENT_COMPRESS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_INTERACTIVE", CLIENT_INTERACTIVE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_IGNORE_SPACE", CLIENT_IGNORE_SPACE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_NO_SCHEMA", CLIENT_NO_SCHEMA, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_FOUND_ROWS", CLIENT_FOUND_ROWS, CONST_CS | CONST_PERSISTENT); +#if defined(CLIENT_SSL_VERIFY_SERVER_CERT) + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL_VERIFY_SERVER_CERT", CLIENT_SSL_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); +#endif +#if defined(CLIENT_SSL_VERIFY_SERVER_CERT) + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT", CLIENT_SSL_DONT_VERIFY_SERVER_CERT, CONST_CS | CONST_PERSISTENT); +#endif + REGISTER_LONG_CONSTANT("MYSQLI_CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS", CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_OPT_CAN_HANDLE_EXPIRED_PASSWORDS", MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_STORE_RESULT", MYSQLI_STORE_RESULT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_USE_RESULT", MYSQLI_USE_RESULT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_ASYNC", MYSQLI_ASYNC, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_STORE_RESULT_COPY_DATA", MYSQLI_STORE_RESULT_COPY_DATA, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_ASSOC", MYSQLI_ASSOC, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_NUM", MYSQLI_NUM, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_BOTH", MYSQLI_BOTH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH", STMT_ATTR_UPDATE_MAX_LENGTH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_CURSOR_TYPE", STMT_ATTR_CURSOR_TYPE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_NO_CURSOR", CURSOR_TYPE_NO_CURSOR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_READ_ONLY", CURSOR_TYPE_READ_ONLY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_FOR_UPDATE", CURSOR_TYPE_FOR_UPDATE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_CURSOR_TYPE_SCROLLABLE", CURSOR_TYPE_SCROLLABLE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_STMT_ATTR_PREFETCH_ROWS", STMT_ATTR_PREFETCH_ROWS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_NOT_NULL_FLAG", NOT_NULL_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_PRI_KEY_FLAG", PRI_KEY_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_UNIQUE_KEY_FLAG", UNIQUE_KEY_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_MULTIPLE_KEY_FLAG", MULTIPLE_KEY_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_BLOB_FLAG", BLOB_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_UNSIGNED_FLAG", UNSIGNED_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_ZEROFILL_FLAG", ZEROFILL_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_AUTO_INCREMENT_FLAG", AUTO_INCREMENT_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TIMESTAMP_FLAG", TIMESTAMP_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_SET_FLAG", SET_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_NUM_FLAG", NUM_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_PART_KEY_FLAG", PART_KEY_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_GROUP_FLAG", GROUP_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_ENUM_FLAG", ENUM_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_BINARY_FLAG", BINARY_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_NO_DEFAULT_VALUE_FLAG", NO_DEFAULT_VALUE_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_ON_UPDATE_NOW_FLAG", ON_UPDATE_NOW_FLAG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DECIMAL", FIELD_TYPE_DECIMAL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TINY", FIELD_TYPE_TINY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_SHORT", FIELD_TYPE_SHORT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONG", FIELD_TYPE_LONG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_FLOAT", FIELD_TYPE_FLOAT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DOUBLE", FIELD_TYPE_DOUBLE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NULL", FIELD_TYPE_NULL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TIMESTAMP", FIELD_TYPE_TIMESTAMP, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONGLONG", FIELD_TYPE_LONGLONG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_INT24", FIELD_TYPE_INT24, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DATE", FIELD_TYPE_DATE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TIME", FIELD_TYPE_TIME, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_DATETIME", FIELD_TYPE_DATETIME, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_YEAR", FIELD_TYPE_YEAR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NEWDATE", FIELD_TYPE_NEWDATE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_ENUM", FIELD_TYPE_ENUM, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_SET", FIELD_TYPE_SET, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_TINY_BLOB", FIELD_TYPE_TINY_BLOB, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_MEDIUM_BLOB", FIELD_TYPE_MEDIUM_BLOB, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_LONG_BLOB", FIELD_TYPE_LONG_BLOB, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_BLOB", FIELD_TYPE_BLOB, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_VAR_STRING", FIELD_TYPE_VAR_STRING, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_STRING", FIELD_TYPE_STRING, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_CHAR", FIELD_TYPE_CHAR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_INTERVAL", FIELD_TYPE_INTERVAL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_GEOMETRY", FIELD_TYPE_GEOMETRY, CONST_CS | CONST_PERSISTENT); +#if defined(FIELD_TYPE_JSON) + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_JSON", FIELD_TYPE_JSON, CONST_CS | CONST_PERSISTENT); +#endif + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_NEWDECIMAL", FIELD_TYPE_NEWDECIMAL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TYPE_BIT", FIELD_TYPE_BIT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_SET_CHARSET_NAME", MYSQL_SET_CHARSET_NAME, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_SET_CHARSET_DIR", MYSQL_SET_CHARSET_DIR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_NO_DATA", MYSQL_NO_DATA, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); +#if defined(MYSQL_DATA_TRUNCATED) + REGISTER_LONG_CONSTANT("MYSQLI_DATA_TRUNCATED", MYSQL_DATA_TRUNCATED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); +#endif + REGISTER_LONG_CONSTANT("MYSQLI_REPORT_INDEX", MYSQLI_REPORT_INDEX, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REPORT_ERROR", MYSQLI_REPORT_ERROR, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REPORT_STRICT", MYSQLI_REPORT_STRICT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REPORT_ALL", MYSQLI_REPORT_ALL, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REPORT_OFF", MYSQLI_REPORT_OFF, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_DEBUG_TRACE_ENABLED", MYSQLND_DBG_ENABLED, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED", SERVER_QUERY_NO_GOOD_INDEX_USED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); + REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_NO_INDEX_USED", SERVER_QUERY_NO_INDEX_USED, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); +#if defined(SERVER_QUERY_WAS_SLOW) + REGISTER_LONG_CONSTANT("MYSQLI_SERVER_QUERY_WAS_SLOW", SERVER_QUERY_WAS_SLOW, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); +#endif +#if defined(SERVER_PS_OUT_PARAMS) + REGISTER_LONG_CONSTANT("MYSQLI_SERVER_PS_OUT_PARAMS", SERVER_PS_OUT_PARAMS, CONST_CS | CONST_PERSISTENT | CONST_DEPRECATED); +#endif + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_GRANT", REFRESH_GRANT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_LOG", REFRESH_LOG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_TABLES", REFRESH_TABLES, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_HOSTS", REFRESH_HOSTS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_STATUS", REFRESH_STATUS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_THREADS", REFRESH_THREADS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_REPLICA", REFRESH_SLAVE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_SLAVE", REFRESH_SLAVE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_MASTER", REFRESH_MASTER, CONST_CS | CONST_PERSISTENT); +#if defined(REFRESH_BACKUP_LOG) + REGISTER_LONG_CONSTANT("MYSQLI_REFRESH_BACKUP_LOG", REFRESH_BACKUP_LOG, CONST_CS | CONST_PERSISTENT); +#endif + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT", TRANS_START_WITH_CONSISTENT_SNAPSHOT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_READ_WRITE", TRANS_START_READ_WRITE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_START_READ_ONLY", TRANS_START_READ_ONLY, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_AND_CHAIN", TRANS_COR_AND_CHAIN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_AND_NO_CHAIN", TRANS_COR_AND_NO_CHAIN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_RELEASE", TRANS_COR_RELEASE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("MYSQLI_TRANS_COR_NO_RELEASE", TRANS_COR_NO_RELEASE, CONST_CS | CONST_PERSISTENT); + REGISTER_BOOL_CONSTANT("MYSQLI_IS_MARIADB", false, CONST_CS | CONST_PERSISTENT); + zend_string *attribute_name_SensitiveParameter_mysqli_change_user_arg2 = zend_string_init("SensitiveParameter", sizeof("SensitiveParameter") - 1, 1); zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "mysqli_change_user", sizeof("mysqli_change_user") - 1), 2, attribute_name_SensitiveParameter_mysqli_change_user_arg2, 0);