MySQL 8.4.0
Source Code Documentation
errmsg.h
Go to the documentation of this file.
1#ifndef ERRMSG_INCLUDED
2#define ERRMSG_INCLUDED
3
4/* Copyright (c) 2000, 2024, Oracle and/or its affiliates.
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, version 2.0,
8 as published by the Free Software Foundation.
9
10 This program is designed to work with certain software (including
11 but not limited to OpenSSL) that is licensed under separate terms,
12 as designated in a particular file or component or in included license
13 documentation. The authors of MySQL hereby grant you an additional
14 permission to link the program and your derivative works with the
15 separately licensed software that they have either included with
16 the program or referenced in the documentation.
17
18 Without limiting anything contained in the foregoing, this file,
19 which is part of C Driver for MySQL (Connector/C), is also subject to the
20 Universal FOSS Exception, version 1.0, a copy of which can be found at
21 http://oss.oracle.com/licenses/universal-foss-exception.
22
23 This program is distributed in the hope that it will be useful,
24 but WITHOUT ANY WARRANTY; without even the implied warranty of
25 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 GNU General Public License, version 2.0, for more details.
27
28 You should have received a copy of the GNU General Public License
29 along with this program; if not, write to the Free Software
30 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
31
32/**
33 @file include/errmsg.h
34
35 Error messages for MySQL clients.
36 These are constant and use the CR_ prefix.
37 <mysqlclient_ername.h> will contain auto-generated mappings
38 containing the symbolic name and the number from this file,
39 and the english error messages in libmysql/errmsg.c.
40
41 Dynamic error messages for the daemon are in share/language/errmsg.sys.
42 The server equivalent to <errmsg.h> is <mysqld_error.h>.
43 The server equivalent to <mysqlclient_ername.h> is <mysqld_ername.h>.
44
45 Note that the auth subsystem also uses codes with a CR_ prefix.
46*/
47
48void init_client_errs(void);
49void finish_client_errs(void);
50extern const char *client_errors[]; /* Error messages */
51
52#define CR_MIN_ERROR 2000 /* For easier client code */
53#define CR_MAX_ERROR 2999
54#define CLIENT_ERRMAP 2 /* Errormap used by my_error() */
55
56/* Do not add error numbers before CR_ERROR_FIRST. */
57/* If necessary to add lower numbers, change CR_ERROR_FIRST accordingly. */
58#define CR_ERROR_FIRST 2000 /*Copy first error nr.*/
59#define CR_UNKNOWN_ERROR 2000
60#define CR_SOCKET_CREATE_ERROR 2001
61#define CR_CONNECTION_ERROR 2002
62#define CR_CONN_HOST_ERROR 2003
63#define CR_IPSOCK_ERROR 2004
64#define CR_UNKNOWN_HOST 2005
65#define CR_SERVER_GONE_ERROR 2006
66#define CR_VERSION_ERROR 2007
67#define CR_OUT_OF_MEMORY 2008
68#define CR_WRONG_HOST_INFO 2009
69#define CR_LOCALHOST_CONNECTION 2010
70#define CR_TCP_CONNECTION 2011
71#define CR_SERVER_HANDSHAKE_ERR 2012
72#define CR_SERVER_LOST 2013
73#define CR_COMMANDS_OUT_OF_SYNC 2014
74#define CR_NAMEDPIPE_CONNECTION 2015
75#define CR_NAMEDPIPEWAIT_ERROR 2016
76#define CR_NAMEDPIPEOPEN_ERROR 2017
77#define CR_NAMEDPIPESETSTATE_ERROR 2018
78#define CR_CANT_READ_CHARSET 2019
79#define CR_NET_PACKET_TOO_LARGE 2020
80#define CR_EMBEDDED_CONNECTION 2021
81#define CR_PROBE_REPLICA_STATUS 2022
82#define CR_PROBE_REPLICA_HOSTS 2023
83#define CR_PROBE_REPLICA_CONNECT 2024
84#define CR_PROBE_SOURCE_CONNECT 2025
85#define CR_SSL_CONNECTION_ERROR 2026
86#define CR_MALFORMED_PACKET 2027
87#define CR_WRONG_LICENSE 2028
88
89/* new 4.1 error codes */
90#define CR_NULL_POINTER 2029
91#define CR_NO_PREPARE_STMT 2030
92#define CR_PARAMS_NOT_BOUND 2031
93#define CR_DATA_TRUNCATED 2032
94#define CR_NO_PARAMETERS_EXISTS 2033
95#define CR_INVALID_PARAMETER_NO 2034
96#define CR_INVALID_BUFFER_USE 2035
97#define CR_UNSUPPORTED_PARAM_TYPE 2036
98
99#define CR_SHARED_MEMORY_CONNECTION 2037
100#define CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR 2038
101#define CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR 2039
102#define CR_SHARED_MEMORY_CONNECT_FILE_MAP_ERROR 2040
103#define CR_SHARED_MEMORY_CONNECT_MAP_ERROR 2041
104#define CR_SHARED_MEMORY_FILE_MAP_ERROR 2042
105#define CR_SHARED_MEMORY_MAP_ERROR 2043
106#define CR_SHARED_MEMORY_EVENT_ERROR 2044
107#define CR_SHARED_MEMORY_CONNECT_ABANDONED_ERROR 2045
108#define CR_SHARED_MEMORY_CONNECT_SET_ERROR 2046
109#define CR_CONN_UNKNOW_PROTOCOL 2047
110#define CR_INVALID_CONN_HANDLE 2048
111#define CR_UNUSED_1 2049
112#define CR_FETCH_CANCELED 2050
113#define CR_NO_DATA 2051
114#define CR_NO_STMT_METADATA 2052
115#define CR_NO_RESULT_SET 2053
116#define CR_NOT_IMPLEMENTED 2054
117#define CR_SERVER_LOST_EXTENDED 2055
118#define CR_STMT_CLOSED 2056
119#define CR_NEW_STMT_METADATA 2057
120#define CR_ALREADY_CONNECTED 2058
121#define CR_AUTH_PLUGIN_CANNOT_LOAD 2059
122#define CR_DUPLICATE_CONNECTION_ATTR 2060
123#define CR_AUTH_PLUGIN_ERR 2061
124#define CR_INSECURE_API_ERR 2062
125#define CR_FILE_NAME_TOO_LONG 2063
126#define CR_SSL_FIPS_MODE_ERR 2064
127#define CR_DEPRECATED_COMPRESSION_NOT_SUPPORTED 2065
128#define CR_COMPRESSION_WRONGLY_CONFIGURED 2066
129#define CR_KERBEROS_USER_NOT_FOUND 2067
130#define CR_LOAD_DATA_LOCAL_INFILE_REJECTED 2068
131#define CR_LOAD_DATA_LOCAL_INFILE_REALPATH_FAIL 2069
132#define CR_DNS_SRV_LOOKUP_FAILED 2070
133#define CR_MANDATORY_TRACKER_NOT_FOUND 2071
134#define CR_INVALID_FACTOR_NO 2072
135#define CR_CANT_GET_SESSION_DATA 2073
136#define CR_INVALID_CLIENT_CHARSET 2074
137#define CR_TLS_SERVER_NOT_FOUND 2075
138#define CR_ERROR_LAST /*Copy last error nr:*/ 2075
139/* Add error numbers before CR_ERROR_LAST and change it accordingly. */
140
141/* Visual Studio requires '__inline' for C code */
142static inline const char *ER_CLIENT(int client_errno) {
143 if (client_errno >= CR_ERROR_FIRST && client_errno <= CR_ERROR_LAST)
144 return client_errors[client_errno - CR_ERROR_FIRST];
146}
147
148#endif /* ERRMSG_INCLUDED */
void init_client_errs(void)
Definition: errmsg.cc:144
static const char * ER_CLIENT(int client_errno)
Definition: errmsg.h:142
#define CR_ERROR_LAST
Definition: errmsg.h:138
#define CR_UNKNOWN_ERROR
Definition: errmsg.h:59
const char * client_errors[]
Definition: errmsg.cc:36
void finish_client_errs(void)
Definition: errmsg.cc:161
#define CR_ERROR_FIRST
Definition: errmsg.h:58