source: src/router/php7/ext/mysqlnd/mysqlnd_connection.h @ 31874

Last change on this file since 31874 was 31874, checked in by brainslayer, 6 weeks ago

update php

File size: 3.4 KB
Line 
1/*
2  +----------------------------------------------------------------------+
3  | PHP Version 7                                                        |
4  +----------------------------------------------------------------------+
5  | Copyright (c) 2006-2017 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_CONNECTION_H
21#define MYSQLND_CONNECTION_H
22
23PHPAPI extern const char * const mysqlnd_out_of_sync;
24PHPAPI extern const char * const mysqlnd_server_gone;
25PHPAPI extern const char * const mysqlnd_out_of_memory;
26
27
28void mysqlnd_upsert_status_init(MYSQLND_UPSERT_STATUS * const upsert_status);
29
30#define UPSERT_STATUS_RESET(status)                                                     (status)->m->reset((status))
31
32#define UPSERT_STATUS_GET_SERVER_STATUS(status)                         (status)->server_status
33#define UPSERT_STATUS_SET_SERVER_STATUS(status, server_st)      (status)->server_status = (server_st)
34
35#define UPSERT_STATUS_GET_WARNINGS(status)                                      (status)->warning_count
36#define UPSERT_STATUS_SET_WARNINGS(status, warnings)            (status)->warning_count = (warnings)
37
38#define UPSERT_STATUS_GET_AFFECTED_ROWS(status)                         (status)->affected_rows
39#define UPSERT_STATUS_SET_AFFECTED_ROWS(status, rows)           (status)->affected_rows = (rows)
40#define UPSERT_STATUS_SET_AFFECTED_ROWS_TO_ERROR(status)        (status)->m->set_affected_rows_to_error((status))
41
42#define UPSERT_STATUS_GET_LAST_INSERT_ID(status)                        (status)->last_insert_id
43#define UPSERT_STATUS_SET_LAST_INSERT_ID(status, id)            (status)->last_insert_id = (id)
44
45
46/* Error handling */
47#define SET_NEW_MESSAGE(buf, buf_len, message, len, persistent) \
48        {\
49                if ((buf)) { \
50                        mnd_pefree((buf), (persistent)); \
51                } \
52                if ((message)) { \
53                        (buf) = mnd_pestrndup((message), (len), (persistent)); \
54                } else { \
55                        (buf) = NULL; \
56                } \
57                (buf_len) = (len); \
58        }
59
60#define SET_EMPTY_MESSAGE(buf, buf_len, persistent) \
61        {\
62                if ((buf)) { \
63                        mnd_pefree((buf), (persistent)); \
64                        (buf) = NULL; \
65                } \
66                (buf_len) = 0; \
67        }
68
69
70PHPAPI enum_func_status mysqlnd_error_info_init(MYSQLND_ERROR_INFO * const info, const zend_bool persistent);
71PHPAPI void     mysqlnd_error_info_free_contents(MYSQLND_ERROR_INFO * const info);
72
73#define GET_CONNECTION_STATE(state_struct)              (state_struct)->m->get((state_struct))
74#define SET_CONNECTION_STATE(state_struct, s)   (state_struct)->m->set((state_struct), (s))
75
76PHPAPI void mysqlnd_connection_state_init(struct st_mysqlnd_connection_state * const state);
77
78#endif /* MYSQLND_CONNECTION_H */
79
80/*
81 * Local variables:
82 * tab-width: 4
83 * c-basic-offset: 4
84 * End:
85 * vim600: noet sw=4 ts=4 fdm=marker
86 * vim<600: noet sw=4 ts=4
87 */
Note: See TracBrowser for help on using the repository browser.