summaryrefslogtreecommitdiff
path: root/src/integritysetup/integrity-util.h
diff options
context:
space:
mode:
authorTony Asleson <tasleson@redhat.com>2021-09-26 11:53:42 -0500
committerTony Asleson <tasleson@redhat.com>2021-10-15 10:19:54 -0500
commit1f1a2243c0920bed1ba0ffd8e94e1de0172259ac (patch)
tree88a345aa7a9d6a92bfaf4765c4e36f7f8471d959 /src/integritysetup/integrity-util.h
parent9a2a6ec4e31abe4b58b140767a82200f79c8645f (diff)
downloadsystemd-1f1a2243c0920bed1ba0ffd8e94e1de0172259ac.tar.gz
Add stand-alone dm-integrity support
This adds support for dm integrity targets and an associated /etc/integritytab file which is required as the dm integrity device super block doesn't include all of the required metadata to bring up the device correctly. See integritytab man page for details.
Diffstat (limited to 'src/integritysetup/integrity-util.h')
-rw-r--r--src/integritysetup/integrity-util.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/integritysetup/integrity-util.h b/src/integritysetup/integrity-util.h
new file mode 100644
index 0000000000..b27975c7db
--- /dev/null
+++ b/src/integritysetup/integrity-util.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#pragma once
+
+#include <stdint.h>
+
+#include "cryptsetup-util.h"
+#include "time-util.h"
+
+
+int parse_integrity_options(
+ const char *options,
+ uint32_t *ret_activate_flags,
+ int *ret_percent,
+ usec_t *ret_commit_time,
+ char **ret_data_device,
+ char **ret_integrity_alg);
+
+#define DM_HMAC_256 "hmac(sha256)"
+#define DM_MAX_KEY_SIZE 4096 /* Maximum size of key allowed for dm-integrity */