xref: /PHP-7.2/ext/mysqlnd/mysqlnd_auth.h (revision 03740ef7)
1 /*
2   +----------------------------------------------------------------------+
3   | PHP Version 7                                                        |
4   +----------------------------------------------------------------------+
5   | Copyright (c) 2006-2018 The PHP Group                                |
6   +----------------------------------------------------------------------+
7   | This source file is subject to version 3.01 of the PHP license,      |
8   | that is bundled with this package in the file LICENSE, and is        |
9   | available through the world-wide-web at the following url:           |
10   | http://www.php.net/license/3_01.txt                                  |
11   | If you did not receive a copy of the PHP license and are unable to   |
12   | obtain it through the world-wide-web, please send a note to          |
13   | license@php.net so we can mail you a copy immediately.               |
14   +----------------------------------------------------------------------+
15   | Authors: Andrey Hristov <andrey@php.net>                             |
16   |          Ulf Wendel <uw@php.net>                                     |
17   +----------------------------------------------------------------------+
18 */
19 
20 #ifndef MYSQLND_AUTH_H
21 #define MYSQLND_AUTH_H
22 enum_func_status
23 mysqlnd_auth_handshake(MYSQLND_CONN_DATA * conn,
24 						const char * const user,
25 						const char * const passwd,
26 						const size_t passwd_len,
27 						const char * const db,
28 						const size_t db_len,
29 						const MYSQLND_SESSION_OPTIONS * const session_options,
30 						zend_ulong mysql_flags,
31 						unsigned int server_charset_no,
32 						zend_bool use_full_blown_auth_packet,
33 						const char * const auth_protocol,
34 						const zend_uchar * const auth_plugin_data,
35 						const size_t auth_plugin_data_len,
36 						char ** switch_to_auth_protocol,
37 						size_t * switch_to_auth_protocol_len,
38 						zend_uchar ** switch_to_auth_protocol_data,
39 						size_t * switch_to_auth_protocol_data_len
40 						);
41 
42 enum_func_status
43 mysqlnd_auth_handshake(MYSQLND_CONN_DATA * conn,
44 						const char * const user,
45 						const char * const passwd,
46 						const size_t passwd_len,
47 						const char * const db,
48 						const size_t db_len,
49 						const MYSQLND_SESSION_OPTIONS * const session_options,
50 						zend_ulong mysql_flags,
51 						unsigned int server_charset_no,
52 						zend_bool use_full_blown_auth_packet,
53 						const char * const auth_protocol,
54 						const zend_uchar * const auth_plugin_data,
55 						const size_t auth_plugin_data_len,
56 						char ** switch_to_auth_protocol,
57 						size_t * switch_to_auth_protocol_len,
58 						zend_uchar ** switch_to_auth_protocol_data,
59 						size_t * switch_to_auth_protocol_data_len
60 						);
61 
62 enum_func_status
63 mysqlnd_auth_change_user(MYSQLND_CONN_DATA * const conn,
64 								const char * const user,
65 								const size_t user_len,
66 								const char * const passwd,
67 								const size_t passwd_len,
68 								const char * const db,
69 								const size_t db_len,
70 								const zend_bool silent,
71 								zend_bool use_full_blown_auth_packet,
72 								const char * const auth_protocol,
73 								zend_uchar * auth_plugin_data,
74 								size_t auth_plugin_data_len,
75 								char ** switch_to_auth_protocol,
76 								size_t * switch_to_auth_protocol_len,
77 								zend_uchar ** switch_to_auth_protocol_data,
78 								size_t * switch_to_auth_protocol_data_len
79 								);
80 
81 
82 enum_func_status
83 mysqlnd_connect_run_authentication(
84 			MYSQLND_CONN_DATA * conn,
85 			const char * const user,
86 			const char * const passwd,
87 			const char * const db,
88 			size_t db_len,
89 			size_t passwd_len,
90 			MYSQLND_STRING authentication_plugin_data,
91 			const char * const authentication_protocol,
92 			const unsigned int charset_no,
93 			size_t server_capabilities,
94 			const MYSQLND_SESSION_OPTIONS * const session_options,
95 			zend_ulong mysql_flags
96 			);
97 
98 enum_func_status
99 mysqlnd_run_authentication(
100 			MYSQLND_CONN_DATA * conn,
101 			const char * const user,
102 			const char * const passwd,
103 			const size_t passwd_len,
104 			const char * const db,
105 			const size_t db_len,
106 			const MYSQLND_STRING auth_plugin_data,
107 			const char * const auth_protocol,
108 			unsigned int charset_no,
109 			const MYSQLND_SESSION_OPTIONS * const session_options,
110 			zend_ulong mysql_flags,
111 			zend_bool silent,
112 			zend_bool is_change_user
113 			);
114 
115 PHPAPI void php_mysqlnd_scramble(zend_uchar * const buffer, const zend_uchar * const scramble, const zend_uchar * const pass, const size_t pass_len);
116 
117 #endif /* MYSQLND_AUTH_H */
118 
119 /*
120  * Local variables:
121  * tab-width: 4
122  * c-basic-offset: 4
123  * End:
124  * vim600: noet sw=4 ts=4 fdm=marker
125  * vim<600: noet sw=4 ts=4
126  */
127