|
1 | | -#ifndef ERRMSG_INCLUDED |
2 | | -#define ERRMSG_INCLUDED |
3 | | - |
4 | | -/* Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. |
5 | | -
|
6 | | - This program is free software; you can redistribute it and/or modify |
7 | | - it under the terms of the GNU General Public License as published by |
8 | | - the Free Software Foundation; version 2 of the License. |
9 | | -
|
10 | | - This program is distributed in the hope that it will be useful, |
| 1 | +/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB |
| 2 | + 2012-2016 SkySQL AB, MariaDB Corporation AB |
| 3 | + |
| 4 | + This library is free software; you can redistribute it and/or |
| 5 | + modify it under the terms of the GNU Library General Public |
| 6 | + License as published by the Free Software Foundation; either |
| 7 | + version 2 of the License, or (at your option) any later version. |
| 8 | + |
| 9 | + This library is distributed in the hope that it will be useful, |
11 | 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | | - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | | - GNU General Public License for more details. |
| 11 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 12 | + Library General Public License for more details. |
| 13 | + |
| 14 | + You should have received a copy of the GNU Library General Public |
| 15 | + License along with this library; if not, write to the Free |
| 16 | + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, |
| 17 | + MA 02111-1301, USA */ |
14 | 18 |
|
15 | | - You should have received a copy of the GNU General Public License |
16 | | - along with this program; if not, write to the Free Software |
17 | | - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ |
18 | | - |
19 | | -/* Error messages for MySQL clients */ |
20 | | -/* (Error messages for the daemon are in sql/share/errmsg.txt) */ |
| 19 | +/* Error messages for mysql clients */ |
| 20 | +/* error messages for the demon is in share/language/errmsg.sys */ |
| 21 | +#ifndef _errmsg_h_ |
| 22 | +#define _errmsg_h_ |
21 | 23 |
|
22 | 24 | #ifdef __cplusplus |
23 | 25 | extern "C" { |
24 | 26 | #endif |
25 | 27 | void init_client_errs(void); |
26 | | -void finish_client_errs(void); |
27 | 28 | extern const char *client_errors[]; /* Error messages */ |
| 29 | +extern const char *mariadb_client_errors[]; /* Error messages */ |
28 | 30 | #ifdef __cplusplus |
29 | 31 | } |
30 | 32 | #endif |
31 | 33 |
|
32 | 34 | #define CR_MIN_ERROR 2000 /* For easier client code */ |
33 | 35 | #define CR_MAX_ERROR 2999 |
34 | | -#if !defined(ER) |
35 | | -#define ER(X) (((X) >= CR_ERROR_FIRST && (X) <= CR_ERROR_LAST)? \ |
36 | | - client_errors[(X)-CR_ERROR_FIRST]: client_errors[CR_UNKNOWN_ERROR]) |
| 36 | +#define CER_MIN_ERROR 5000 |
| 37 | +#define CER_MAX_ERROR 5999 |
| 38 | +#define CLIENT_ERRMAP 2 /* Errormap used by ma_error() */ |
37 | 39 |
|
38 | | -#endif |
39 | | -#define CLIENT_ERRMAP 2 /* Errormap used by my_error() */ |
| 40 | +#define ER_UNKNOWN_ERROR_CODE "Unknown or undefined error code (%d)" |
40 | 41 |
|
41 | | -/* Do not add error numbers before CR_ERROR_FIRST. */ |
42 | | -/* If necessary to add lower numbers, change CR_ERROR_FIRST accordingly. */ |
43 | | -#define CR_ERROR_FIRST 2000 /*Copy first error nr.*/ |
44 | 42 | #define CR_UNKNOWN_ERROR 2000 |
45 | 43 | #define CR_SOCKET_CREATE_ERROR 2001 |
46 | 44 | #define CR_CONNECTION_ERROR 2002 |
47 | | -#define CR_CONN_HOST_ERROR 2003 |
| 45 | +#define CR_CONN_HOST_ERROR 2003 /* never sent to a client, message only */ |
48 | 46 | #define CR_IPSOCK_ERROR 2004 |
49 | 47 | #define CR_UNKNOWN_HOST 2005 |
50 | | -#define CR_SERVER_GONE_ERROR 2006 |
| 48 | +#define CR_SERVER_GONE_ERROR 2006 /* disappeared _between_ queries */ |
51 | 49 | #define CR_VERSION_ERROR 2007 |
52 | 50 | #define CR_OUT_OF_MEMORY 2008 |
53 | 51 | #define CR_WRONG_HOST_INFO 2009 |
54 | 52 | #define CR_LOCALHOST_CONNECTION 2010 |
55 | 53 | #define CR_TCP_CONNECTION 2011 |
56 | 54 | #define CR_SERVER_HANDSHAKE_ERR 2012 |
57 | | -#define CR_SERVER_LOST 2013 |
| 55 | +#define CR_SERVER_LOST 2013 /* disappeared _during_ a query */ |
58 | 56 | #define CR_COMMANDS_OUT_OF_SYNC 2014 |
59 | 57 | #define CR_NAMEDPIPE_CONNECTION 2015 |
60 | | -#define CR_NAMEDPIPEWAIT_ERROR 2016 |
61 | | -#define CR_NAMEDPIPEOPEN_ERROR 2017 |
| 58 | +#define CR_NAMEDPIPEWAIT_ERROR 2016 |
| 59 | +#define CR_NAMEDPIPEOPEN_ERROR 2017 |
62 | 60 | #define CR_NAMEDPIPESETSTATE_ERROR 2018 |
63 | 61 | #define CR_CANT_READ_CHARSET 2019 |
64 | 62 | #define CR_NET_PACKET_TOO_LARGE 2020 |
65 | | -#define CR_EMBEDDED_CONNECTION 2021 |
66 | | -#define CR_PROBE_SLAVE_STATUS 2022 |
67 | | -#define CR_PROBE_SLAVE_HOSTS 2023 |
68 | | -#define CR_PROBE_SLAVE_CONNECT 2024 |
69 | | -#define CR_PROBE_MASTER_CONNECT 2025 |
70 | 63 | #define CR_SSL_CONNECTION_ERROR 2026 |
71 | 64 | #define CR_MALFORMED_PACKET 2027 |
72 | | -#define CR_WRONG_LICENSE 2028 |
73 | | - |
74 | | -/* new 4.1 error codes */ |
75 | | -#define CR_NULL_POINTER 2029 |
76 | | -#define CR_NO_PREPARE_STMT 2030 |
77 | | -#define CR_PARAMS_NOT_BOUND 2031 |
78 | | -#define CR_DATA_TRUNCATED 2032 |
79 | | -#define CR_NO_PARAMETERS_EXISTS 2033 |
80 | | -#define CR_INVALID_PARAMETER_NO 2034 |
81 | | -#define CR_INVALID_BUFFER_USE 2035 |
| 65 | +#define CR_NO_PREPARE_STMT 2030 |
| 66 | +#define CR_PARAMS_NOT_BOUND 2031 |
| 67 | +#define CR_INVALID_PARAMETER_NO 2034 |
| 68 | +#define CR_INVALID_BUFFER_USE 2035 |
82 | 69 | #define CR_UNSUPPORTED_PARAM_TYPE 2036 |
83 | 70 |
|
84 | | -#define CR_SHARED_MEMORY_CONNECTION 2037 |
85 | | -#define CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR 2038 |
86 | | -#define CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR 2039 |
87 | | -#define CR_SHARED_MEMORY_CONNECT_FILE_MAP_ERROR 2040 |
88 | | -#define CR_SHARED_MEMORY_CONNECT_MAP_ERROR 2041 |
89 | | -#define CR_SHARED_MEMORY_FILE_MAP_ERROR 2042 |
90 | | -#define CR_SHARED_MEMORY_MAP_ERROR 2043 |
91 | | -#define CR_SHARED_MEMORY_EVENT_ERROR 2044 |
92 | | -#define CR_SHARED_MEMORY_CONNECT_ABANDONED_ERROR 2045 |
93 | | -#define CR_SHARED_MEMORY_CONNECT_SET_ERROR 2046 |
94 | | -#define CR_CONN_UNKNOW_PROTOCOL 2047 |
95 | | -#define CR_INVALID_CONN_HANDLE 2048 |
96 | | -#define CR_SECURE_AUTH 2049 |
97 | | -#define CR_FETCH_CANCELED 2050 |
98 | | -#define CR_NO_DATA 2051 |
99 | | -#define CR_NO_STMT_METADATA 2052 |
100 | | -#define CR_NO_RESULT_SET 2053 |
101 | | -#define CR_NOT_IMPLEMENTED 2054 |
102 | | -#define CR_SERVER_LOST_EXTENDED 2055 |
103 | | -#define CR_STMT_CLOSED 2056 |
104 | | -#define CR_NEW_STMT_METADATA 2057 |
105 | | -#define CR_ALREADY_CONNECTED 2058 |
106 | | -#define CR_AUTH_PLUGIN_CANNOT_LOAD 2059 |
107 | | -#define CR_ERROR_LAST /*Copy last error nr:*/ 2059 |
108 | | -/* Add error numbers before CR_ERROR_LAST and change it accordingly. */ |
| 71 | +#define CR_SHARED_MEMORY_CONNECTION 2037 |
| 72 | +#define CR_SHARED_MEMORY_CONNECT_ERROR 2038 |
| 73 | + |
| 74 | +#define CR_CONN_UNKNOWN_PROTOCOL 2047 |
| 75 | +#define CR_SECURE_AUTH 2049 |
| 76 | +#define CR_NO_DATA 2051 |
| 77 | +#define CR_NO_STMT_METADATA 2052 |
| 78 | +#define CR_NOT_IMPLEMENTED 2054 |
| 79 | +#define CR_SERVER_LOST_EXTENDED 2055 /* never sent to a client, message only */ |
| 80 | +#define CR_STMT_CLOSED 2056 |
| 81 | +#define CR_NEW_STMT_METADATA 2057 |
| 82 | +#define CR_ALREADY_CONNECTED 2058 |
| 83 | +#define CR_AUTH_PLUGIN_CANNOT_LOAD 2059 |
| 84 | +#define CR_DUPLICATE_CONNECTION_ATTR 2060 |
| 85 | +#define CR_AUTH_PLUGIN_ERR 2061 |
| 86 | +/* Always last, if you add new error codes please update the |
| 87 | + value for CR_MYSQL_LAST_ERROR */ |
| 88 | +#define CR_MYSQL_LAST_ERROR CR_AUTH_PLUGIN_ERR |
| 89 | + |
| 90 | +/* |
| 91 | + * MariaDB Connector/C errors: |
| 92 | + */ |
| 93 | +#define CR_EVENT_CREATE_FAILED 5000 |
| 94 | +#define CR_BIND_ADDR_FAILED 5001 |
| 95 | +#define CR_ASYNC_NOT_SUPPORTED 5002 |
| 96 | +#define CR_FUNCTION_NOT_SUPPORTED 5003 |
| 97 | +#define CR_FILE_NOT_FOUND 5004 |
| 98 | +#define CR_FILE_READ 5005 |
| 99 | +#define CR_BULK_WITHOUT_PARAMETERS 5006 |
| 100 | +#define CR_INVALID_STMT 5007 |
| 101 | +#define CR_VERSION_MISMATCH 5008 |
| 102 | +#define CR_ERR_NET_READ 5013 |
| 103 | +#define CR_ERR_NET_WRITE 5014 |
| 104 | +#define CR_ERR_NET_UNCOMPRESS 5015 |
| 105 | + |
| 106 | +/* Always last, if you add new error codes please update the |
| 107 | + value for CR_MARIADB_LAST_ERROR */ |
| 108 | +#define CR_MARIADB_LAST_ERROR CR_ERR_NET_UNCOMPRESS |
| 109 | +#endif |
| 110 | + |
| 111 | +#define IS_MYSQL_ERROR(code) ((code) > CR_MIN_ERROR && (code) <= CR_MYSQL_LAST_ERROR) |
| 112 | +#define IS_MARIADB_ERROR(code) ((code) > CER_MIN_ERROR && (code) <= CR_MARIADB_LAST_ERROR) |
| 113 | + |
| 114 | +#define ER(code) IS_MYSQL_ERROR((code)) ? client_errors[(code) - CR_MIN_ERROR] : \ |
| 115 | + IS_MARIADB_ERROR((code)) ? mariadb_client_errors[(code) - CER_MIN_ERROR] : \ |
| 116 | + "Unknown or undefined error code" |
| 117 | +#define CER(code) ER((code)) |
109 | 118 |
|
110 | | -#endif /* ERRMSG_INCLUDED */ |
|
0 commit comments