TCRYPT: fix activation and hidden device offsets.
[platform/upstream/cryptsetup.git] / lib / tcrypt / tcrypt.h
index 61afa7d..d67f8f1 100644 (file)
 #define TCRYPT_HDR_MAGIC "TRUE"
 #define TCRYPT_HDR_MAGIC_LEN 4
 
+#define TCRYPT_HDR_HIDDEN_OFFSET_OLD -1536
 #define TCRYPT_HDR_HIDDEN_OFFSET 65536
 
+#define TCRYPT_HDR_HIDDEN_OFFSET_BCK -65536
+#define TCRYPT_HDR_OFFSET_BCK -131072
+
 #define TCRYPT_LRW_IKEY_LEN 16
 #define TCRYPT_KEY_POOL_LEN 64
 #define TCRYPT_KEYFILE_LEN  1048576
@@ -87,12 +91,21 @@ int TCRYPT_activate(struct crypt_device *cd,
 int TCRYPT_deactivate(struct crypt_device *cd,
                      const char *name);
 
-uint64_t TCRYPT_get_data_offset(struct tcrypt_phdr *hdr);
-uint64_t TCRYPT_get_iv_offset(struct tcrypt_phdr *hdr);
+uint64_t TCRYPT_get_data_offset(struct crypt_device *cd,
+                               struct tcrypt_phdr *hdr,
+                               struct crypt_params_tcrypt *params);
+
+uint64_t TCRYPT_get_iv_offset(struct crypt_device *cd,
+                             struct tcrypt_phdr *hdr,
+                             struct crypt_params_tcrypt *params);
 
 int TCRYPT_get_volume_key(struct crypt_device *cd,
                          struct tcrypt_phdr *hdr,
                          struct crypt_params_tcrypt *params,
                          struct volume_key **vk);
 
+int TCRYPT_dump(struct crypt_device *cd,
+               struct tcrypt_phdr *hdr,
+               struct crypt_params_tcrypt *params);
+
 #endif