aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzczepan Zalega <szczepan@nitrokey.com>2018-07-07 20:57:14 +0200
committerSzczepan Zalega <szczepan@nitrokey.com>2018-07-07 20:57:14 +0200
commit17ba7cbbfd6ea5c92d5a5df460751c599e65c9f3 (patch)
treee9bc2db40d17b72e63980e77746120931950ce4b
parent09eaadc5d3d2a13a094210eedafee023774914c6 (diff)
downloadlibnitrokey-17ba7cbbfd6ea5c92d5a5df460751c599e65c9f3.tar.gz
libnitrokey-17ba7cbbfd6ea5c92d5a5df460751c599e65c9f3.tar.bz2
Add general DEPRECATED macro for marking deprecated functions.
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
-rw-r--r--NK_C_API.h3
-rw-r--r--libnitrokey/deprecated.h35
2 files changed, 38 insertions, 0 deletions
diff --git a/NK_C_API.h b/NK_C_API.h
index 34d8733..84c8296 100644
--- a/NK_C_API.h
+++ b/NK_C_API.h
@@ -25,6 +25,8 @@
#include <stdbool.h>
#include <stdint.h>
+#include "deprecated.h"
+
#ifdef _MSC_VER
#define NK_C_API __declspec(dllexport)
#else
@@ -418,6 +420,7 @@ extern "C" {
NK_C_API int NK_totp_set_time_soft(uint64_t time);
// NK_totp_get_time is deprecated -- use NK_totp_set_time_soft instead
+ DEPRECATED
NK_C_API int NK_totp_get_time();
//passwords
diff --git a/libnitrokey/deprecated.h b/libnitrokey/deprecated.h
new file mode 100644
index 0000000..5a83288
--- /dev/null
+++ b/libnitrokey/deprecated.h
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2018 Nitrokey UG
+ *
+ * This file is part of libnitrokey.
+ *
+ * libnitrokey is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * libnitrokey 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with libnitrokey. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-3.0
+ */
+
+
+#ifndef LIBNITROKEY_DEPRECATED_H
+#define LIBNITROKEY_DEPRECATED_H
+
+#if defined(__GNUC__) || defined(__clang__)
+#define DEPRECATED __attribute__((deprecated))
+#elif defined(_MSC_VER)
+#define DEPRECATED __declspec(deprecated)
+#else
+#pragma message("WARNING: DEPRECATED macro is not defined for this compiler")
+#define DEPRECATED
+#endif
+
+#endif //LIBNITROKEY_DEPRECATED_H