summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-11-01 15:56:25 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-11-30 20:43:25 +0100
commit691c2e2e8833c838cdd2f67fcbdcadab01552960 (patch)
tree0ea3ad028830256fb7a0fad5918b2499305cc2e7 /src
parentutil-lib: add cleanup function for crypt_free (diff)
downloadsystemd-691c2e2e8833c838cdd2f67fcbdcadab01552960.tar.xz
systemd-691c2e2e8833c838cdd2f67fcbdcadab01552960.zip
util-lib: export cryptsetup logging glue function
Diffstat (limited to 'src')
-rw-r--r--src/basic/crypt-util.c27
-rw-r--r--src/basic/crypt-util.h2
-rw-r--r--src/basic/meson.build1
-rw-r--r--src/cryptsetup/cryptsetup.c8
-rw-r--r--src/veritysetup/veritysetup.c8
5 files changed, 34 insertions, 12 deletions
diff --git a/src/basic/crypt-util.c b/src/basic/crypt-util.c
new file mode 100644
index 0000000000..193cf65dfc
--- /dev/null
+++ b/src/basic/crypt-util.c
@@ -0,0 +1,27 @@
+/***
+ This file is part of systemd.
+
+ Copyright 2017 Zbigniew Jędrzejewski-Szmek
+
+ systemd 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 2.1 of the License, or
+ (at your option) any later version.
+
+ systemd 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#if HAVE_LIBCRYPTSETUP
+#include "crypt-util.h"
+#include "log.h"
+
+void cryptsetup_log_glue(int level, const char *msg, void *usrptr) {
+ log_debug("%s", msg);
+}
+#endif
diff --git a/src/basic/crypt-util.h b/src/basic/crypt-util.h
index b95eb9a4e7..e8e753275a 100644
--- a/src/basic/crypt-util.h
+++ b/src/basic/crypt-util.h
@@ -24,4 +24,6 @@
#include "macro.h"
DEFINE_TRIVIAL_CLEANUP_FUNC(struct crypt_device *, crypt_free);
+
+void cryptsetup_log_glue(int level, const char *msg, void *usrptr);
#endif
diff --git a/src/basic/meson.build b/src/basic/meson.build
index 68064ab693..a37e279e57 100644
--- a/src/basic/meson.build
+++ b/src/basic/meson.build
@@ -61,6 +61,7 @@ basic_sources_plain = files('''
copy.h
cpu-set-util.c
cpu-set-util.h
+ crypt-util.c
crypt-util.h
def.h
device-nodes.c
diff --git a/src/cryptsetup/cryptsetup.c b/src/cryptsetup/cryptsetup.c
index 38468023cb..84bcdb467d 100644
--- a/src/cryptsetup/cryptsetup.c
+++ b/src/cryptsetup/cryptsetup.c
@@ -255,10 +255,6 @@ static int parse_options(const char *options) {
return 0;
}
-static void log_glue(int level, const char *msg, void *usrptr) {
- log_debug("%s", msg);
-}
-
static int disk_major_minor(const char *path, char **ret) {
struct stat st;
@@ -667,7 +663,7 @@ int main(int argc, char *argv[]) {
goto finish;
}
- crypt_set_log_callback(cd, log_glue, NULL);
+ crypt_set_log_callback(cd, cryptsetup_log_glue, NULL);
status = crypt_status(cd, argv[2]);
if (IN_SET(status, CRYPT_ACTIVE, CRYPT_BUSY)) {
@@ -751,7 +747,7 @@ int main(int argc, char *argv[]) {
goto finish;
}
- crypt_set_log_callback(cd, log_glue, NULL);
+ crypt_set_log_callback(cd, cryptsetup_log_glue, NULL);
r = crypt_deactivate(cd, argv[2]);
if (r < 0) {
diff --git a/src/veritysetup/veritysetup.c b/src/veritysetup/veritysetup.c
index 2376f1dc2c..d3066ca429 100644
--- a/src/veritysetup/veritysetup.c
+++ b/src/veritysetup/veritysetup.c
@@ -41,10 +41,6 @@ static int help(void) {
return 0;
}
-static void log_glue(int level, const char *msg, void *usrptr) {
- log_debug("%s", msg);
-}
-
int main(int argc, char *argv[]) {
_cleanup_(crypt_freep) struct crypt_device *cd = NULL;
int r;
@@ -89,7 +85,7 @@ int main(int argc, char *argv[]) {
goto finish;
}
- crypt_set_log_callback(cd, log_glue, NULL);
+ crypt_set_log_callback(cd, cryptsetup_log_glue, NULL);
status = crypt_status(cd, argv[2]);
if (IN_SET(status, CRYPT_ACTIVE, CRYPT_BUSY)) {
@@ -127,7 +123,7 @@ int main(int argc, char *argv[]) {
goto finish;
}
- crypt_set_log_callback(cd, log_glue, NULL);
+ crypt_set_log_callback(cd, cryptsetup_log_glue, NULL);
r = crypt_deactivate(cd, argv[2]);
if (r < 0) {