diff options
author | hcpp <hcpp@ydb.tech> | 2023-11-08 12:09:41 +0300 |
---|---|---|
committer | hcpp <hcpp@ydb.tech> | 2023-11-08 12:56:14 +0300 |
commit | a361f5b98b98b44ea510d274f6769164640dd5e1 (patch) | |
tree | c47c80962c6e2e7b06798238752fd3da0191a3f6 /contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h | |
parent | 9478806fde1f4d40bd5a45e7cbe77237dab613e9 (diff) | |
download | ydb-a361f5b98b98b44ea510d274f6769164640dd5e1.tar.gz |
metrics have been added
Diffstat (limited to 'contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h')
-rw-r--r-- | contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h b/contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h new file mode 100644 index 0000000000..5de26bc87e --- /dev/null +++ b/contrib/libs/libmysql_r/include/wolfssl_fix_namespace_pollution.h @@ -0,0 +1,64 @@ +/* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License, version 2.0, +as published by the Free Software Foundation. + +This program is also distributed with certain software (including +but not limited to OpenSSL) that is licensed under separate terms, +as designated in a particular file or component or in included license +documentation. The authors of MySQL hereby grant you an additional +permission to link the program and your derivative works with the +separately licensed software that they have included with MySQL. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License, version 2.0, for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + +/** + The WolfSSL library does #define certain global symbol that pollute the + C namespace. + This file is to be included after the wolf headers to fix this. +*/ +#ifndef WOLFSSL_FIX_NAMESPACE_POLLUTION_H +#define WOLFSSL_FIX_NAMESPACE_POLLUTION_H 1 + +#ifdef HAVE_WOLFSSL + +#if defined(_WIN32) +/* defined in wolfssl's io.h. Replaces all mentions of the word close */ +#if defined(close) +#undef close +#endif + +/* + Defined in wolfssl's io.h. + Conflict with the same constants defined in mysql + Keep in sync with my_io.h +*/ +#if defined(SOCKET_EWOULDBLOCK) +#undef SOCKET_EWOULDBLOCK +#define SOCKET_EWOULDBLOCK WSAEWOULDBLOCK +#endif +#if defined(SOCKET_EAGAIN) +#undef SOCKET_EAGAIN +#define SOCKET_EAGAIN WSAEINPROGRESS +#endif +#if defined(SOCKET_ECONNRESET) +#undef SOCKET_ECONNRESET +#define SOCKET_ECONNRESET WSAECONNRESET +#endif +#if defined(SOCKET_EINTR) +#undef SOCKET_EINTR +#define SOCKET_EINTR WSAEINTR +#endif + +#endif /* _WIN32 */ +#endif /* HAVE_WOLFSSL */ + +#endif /* WOLFSSL_FIX_NAMESPACE_POLLUTION_H */ |