]> xenbits.xen.org Git - xenclient/build.git/commitdiff
Rename cryptsetup to xcryptsetup since busybox dependencies are a joke...
authorChristian Limpach <Christian.Limpach@citrix.com>
Fri, 8 Jan 2010 03:30:25 +0000 (03:30 +0000)
committerChristian Limpach <Christian.Limpach@citrix.com>
Fri, 8 Jan 2010 03:30:25 +0000 (03:30 +0000)
package/Config.in
package/cryptsetup/Config.in [deleted file]
package/cryptsetup/cryptsetup.mk [deleted file]
package/cryptsetup/luks-check-key.diff [deleted file]
package/e2fsprogs/e2fsprogs.mk
package/xcryptsetup/Config.in [new file with mode: 0644]
package/xcryptsetup/luks-check-key.diff [new file with mode: 0644]
package/xcryptsetup/xcryptsetup.mk [new file with mode: 0644]

index 6ecf304b056ce6094d298a06677770eb644d87de..56011220a248b805f5048236dcefb1c2925ffc97 100644 (file)
@@ -232,7 +232,7 @@ endmenu
 
 menu "Hardware handling / blockdevices and filesystem maintenance"
 source "package/acpid/Config.in"
-source "package/cryptsetup/Config.in"
+source "package/xcryptsetup/Config.in"
 source "package/dbus/Config.in"
 source "package/dbus-glib/Config.in"
 source "package/devmem2/Config.in"
diff --git a/package/cryptsetup/Config.in b/package/cryptsetup/Config.in
deleted file mode 100644 (file)
index 09c4353..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-config BR2_PACKAGE_CRYPTSETUP
-       bool "cryptsetup"
-       default n
-       select BR2_PACKAGE_LIBGCRYPT
-       select BR2_PACKAGE_POPT
-       help
-               Not avaiable
-
diff --git a/package/cryptsetup/cryptsetup.mk b/package/cryptsetup/cryptsetup.mk
deleted file mode 100644 (file)
index a0cad18..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-#############################################################
-#
-# cryptsetup
-#
-#############################################################
-CRYPTSETUP_VERSION:=1.0.7
-CRYPTSETUP_SOURCE:=cryptsetup-$(CRYPTSETUP_VERSION).tar.bz2
-CRYPTSETUP_SITE:=http://cryptsetup.googlecode.com/files
-CRYPTSETUP_DIR:=$(BUILD_DIR)/cryptsetup-$(CRYPTSETUP_VERSION)
-CRYPTSETUP_BINARY:=src/cryptsetup
-CRYPTSETUP_TARGET_BINARY:=sbin/cryptsetup
-
-$(DL_DIR)/$(CRYPTSETUP_SOURCE):
-        $(WGET) -P $(DL_DIR) $(CRYPTSETUP_SITE)/$(CRYPTSETUP_SOURCE)
-
-$(CRYPTSETUP_DIR)/.source: $(DL_DIR)/$(CRYPTSETUP_SOURCE)
-       $(BZCAT) $(DL_DIR)/$(CRYPTSETUP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-       toolchain/patch-kernel.sh $(CRYPTSETUP_DIR) package/cryptsetup/ \*.diff
-       touch $@
-
-$(CRYPTSETUP_DIR)/.configured: $(CRYPTSETUP_DIR)/.source
-       (cd $(CRYPTSETUP_DIR); rm -rf config.cache; \
-               $(TARGET_CONFIGURE_OPTS) \
-               $(TARGET_CONFIGURE_ARGS) \
-               $(TARGET_CONFIGURE_ENV) \
-               ./configure \
-               --target=$(GNU_TARGET_NAME) \
-               --host=$(GNU_TARGET_NAME) \
-               --build=$(GNU_HOST_NAME) \
-               --prefix=/usr \
-               --sysconfdir=/etc \
-               --disable-shared-library \
-               $(DISABLE_NLS); \
-               $(SED)  's:^hardcode_libdir_flag_spec.*$$:hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ ":'   -i libtool; \
-       )
-       touch $@
-
-$(CRYPTSETUP_DIR)/$(CRYPTSETUP_BINARY): $(CRYPTSETUP_DIR)/.configured 
-       $(MAKE) CC=$(TARGET_CC) -C $(CRYPTSETUP_DIR)
-
-$(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY): $(CRYPTSETUP_DIR)/$(CRYPTSETUP_BINARY)
-       $(MAKE) prefix=$(TARGET_DIR)/usr exec_prefix=$(TARGET_DIR) -C $(CRYPTSETUP_DIR) install
-       rm $(TARGET_DIR)/lib/libcryptsetup*
-       rmdir $(TARGET_DIR)/lib/cryptsetup
-       rm $(TARGET_DIR)/usr/include/libcryptsetup.h
-       rm -Rf $(TARGET_DIR)/usr/share/man
-       $(STRIPCMD) $(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY)
-
-
-cryptsetup: libgcrypt libgpg-error popt e2fsprogs uclibc $(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY)
-
-cryptsetup-source: $(DL_DIR)/$(CRYPTSETUP_SOURCE)
-
-
-cryptsetup-clean:
-       $(MAKE) prefix=$(TARGET_DIR)/usr exec_prefix=$(TARGET_DIR) -C $(CRYPTSETUP_DIR) uninstall
-       -$(MAKE) -C $(CRYPTSETUP_DIR) clean
-
-cryptsetup-dirclean:
-       rm -rf $(CRYPTSETUP_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(strip $(BR2_PACKAGE_CRYPTSETUP)),y)
-TARGETS+=cryptsetup
-endif
-
diff --git a/package/cryptsetup/luks-check-key.diff b/package/cryptsetup/luks-check-key.diff
deleted file mode 100644 (file)
index 29c91a2..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-diff -ru cryptsetup-1.0.7.orig/lib/libcryptsetup.h cryptsetup-1.0.7/lib/libcryptsetup.h
---- cryptsetup-1.0.7.orig/lib/libcryptsetup.h  2009-07-22 11:12:44.000000000 +0000
-+++ cryptsetup-1.0.7/lib/libcryptsetup.h       2009-12-17 22:00:00.000000000 +0000
-@@ -64,6 +64,7 @@
- int crypt_isLuks(struct crypt_options *options);
- int crypt_luksFormat(struct crypt_options *options);
- int crypt_luksDump(struct crypt_options *options);
-+int crypt_luksCheckKey(struct crypt_options *options);
- void crypt_get_error(char *buf, size_t size);
- void crypt_put_options(struct crypt_options *options);
-diff -ru cryptsetup-1.0.7.orig/lib/setup.c cryptsetup-1.0.7/lib/setup.c
---- cryptsetup-1.0.7.orig/lib/setup.c  2009-07-22 11:12:44.000000000 +0000
-+++ cryptsetup-1.0.7/lib/setup.c       2009-12-17 22:27:20.000000000 +0000
-@@ -744,6 +744,57 @@
-       return luks_remove_helper(arg, backend, options, 1);
- }
-+static int __crypt_luks_check_key(int arg, struct setup_backend *backend, struct crypt_options *options)
-+{
-+      struct luks_masterkey *mk=NULL;
-+      struct luks_phdr hdr;
-+      char *prompt = NULL;
-+      char *password=NULL; unsigned int passwordLen;
-+        unsigned int keyIndex;
-+      const char *device = options->device;
-+      int r;
-+
-+      if (!LUKS_device_ready(options->device, O_RDWR))
-+              return -ENOTBLK;
-+
-+      r = LUKS_read_phdr(device, &hdr);
-+      if(r < 0) return r;
-+
-+      if(asprintf(&prompt, "Enter LUKS passphrase for %s: ", device) < 0)
-+              return -ENOMEM;
-+      get_key(prompt,
-+                &password,
-+                &passwordLen, 
-+                0,
-+                options->key_file, 
-+                options->passphrase_fd, 
-+                options->timeout, 
-+                options->flags & ~(CRYPT_FLAG_VERIFY | CRYPT_FLAG_VERIFY_IF_POSSIBLE));
-+
-+      if(!password) {
-+              r = -EINVAL; goto out;
-+      }
-+        if (options->key_slot != -1) {
-+                mk=LUKS_alloc_masterkey(hdr.keyBytes);
-+                r = LUKS_open_key(device, options->key_slot, password, passwordLen, &hdr, mk, backend);
-+        } else
-+                r = LUKS_open_any_key_with_hdr(device, password, passwordLen, &hdr, &mk, backend);
-+      if(r < 0) {
-+              options->icb->log(CRYPT_LOG_ERROR,"No key available with this passphrase.\n");
-+              r = -EPERM; goto out;
-+      } else
-+              logger(options, CRYPT_LOG_NORMAL,"key slot %d unlocked.\n", r);
-+
-+      r = 0;
-+out:
-+      safe_free(password);
-+      LUKS_dealloc_masterkey(mk);
-+
-+      free(prompt);
-+
-+      return r;
-+}
-+
- static int crypt_job(int (*job)(int arg, struct setup_backend *backend,
-                                 struct crypt_options *options),
-@@ -891,6 +942,11 @@
-       return 0;
- }
-+int crypt_luksCheckKey(struct crypt_options *options)
-+{
-+      return crypt_job(__crypt_luks_check_key, 0, options);
-+}
-+
- void crypt_get_error(char *buf, size_t size)
- {
-diff -ru cryptsetup-1.0.7.orig/src/cryptsetup.c cryptsetup-1.0.7/src/cryptsetup.c
---- cryptsetup-1.0.7.orig/src/cryptsetup.c     2009-07-22 11:12:44.000000000 +0000
-+++ cryptsetup-1.0.7/src/cryptsetup.c  2009-12-17 22:11:15.000000000 +0000
-@@ -49,6 +49,7 @@
- static int action_isLuks(int arg);
- static int action_luksUUID(int arg);
- static int action_luksDump(int arg);
-+static int action_luksCheckKey(int arg);
- static struct action_type {
-       const char *type;
-@@ -72,6 +73,7 @@
-       { "luksClose",  action_remove, 0, 1, N_("<name>"), N_("remove LUKS mapping") },
-       { "luksDump",   action_luksDump, 0, 1, N_("<device>"), N_("dump LUKS partition information") },
-       { "luksDelKey",  action_luksDelKey, 0, 2, N_("<device> <key slot>"), N_("identical to luksKillSlot - DEPRECATED - see man page") },
-+      { "luksCheckKey",       action_luksCheckKey, 0, 1, N_("<device>"), N_("check key can open LUKS device") },
-       { "reload",     action_create, 1, 2, N_("<name> <device>"), N_("modify active device - DEPRECATED - see man page") },
-       { NULL, NULL, 0, 0, NULL }
- };
-@@ -402,6 +404,25 @@
-       return r;
- }
-+static int action_luksCheckKey(int arg)
-+{
-+      struct crypt_options options = {
-+              .device = action_argv[0],
-+              .key_file = opt_key_file,
-+              .key_slot = opt_key_slot,
-+              .timeout = opt_timeout,
-+              .tries = opt_tries,
-+              .icb = &cmd_icb,
-+      };
-+      int r; 
-+
-+      opt_verbose = 1;
-+        options.flags = CRYPT_FLAG_NON_EXCLUSIVE_ACCESS;
-+      r = crypt_luksCheckKey(&options);
-+      show_status(-r);
-+      return r;
-+}
-+
- static void usage(poptContext popt_context, int exitcode,
-                   const char *error, const char *more)
- {
index c2ad7df1e17713dd5c7c297f2c4687da62b5dbd2..09fd53d30cbbe0ea2fca51f8dc3e8ba8809c6c8c 100644 (file)
@@ -123,7 +123,7 @@ endif
        rm -rf $(TARGET_DIR)/usr/share/doc
        touch -c $@
 
-e2fsprogs: uclibc util-linux-ng pkgconfig \
+e2fsprogs: uclibc util-linux-ng \
        $(TARGET_DIR)/$(E2FSPROGS_TARGET_BINARY)
 
 e2fsprogs-clean:
diff --git a/package/xcryptsetup/Config.in b/package/xcryptsetup/Config.in
new file mode 100644 (file)
index 0000000..09c4353
--- /dev/null
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_CRYPTSETUP
+       bool "cryptsetup"
+       default n
+       select BR2_PACKAGE_LIBGCRYPT
+       select BR2_PACKAGE_POPT
+       help
+               Not avaiable
+
diff --git a/package/xcryptsetup/luks-check-key.diff b/package/xcryptsetup/luks-check-key.diff
new file mode 100644 (file)
index 0000000..29c91a2
--- /dev/null
@@ -0,0 +1,129 @@
+diff -ru cryptsetup-1.0.7.orig/lib/libcryptsetup.h cryptsetup-1.0.7/lib/libcryptsetup.h
+--- cryptsetup-1.0.7.orig/lib/libcryptsetup.h  2009-07-22 11:12:44.000000000 +0000
++++ cryptsetup-1.0.7/lib/libcryptsetup.h       2009-12-17 22:00:00.000000000 +0000
+@@ -64,6 +64,7 @@
+ int crypt_isLuks(struct crypt_options *options);
+ int crypt_luksFormat(struct crypt_options *options);
+ int crypt_luksDump(struct crypt_options *options);
++int crypt_luksCheckKey(struct crypt_options *options);
+ void crypt_get_error(char *buf, size_t size);
+ void crypt_put_options(struct crypt_options *options);
+diff -ru cryptsetup-1.0.7.orig/lib/setup.c cryptsetup-1.0.7/lib/setup.c
+--- cryptsetup-1.0.7.orig/lib/setup.c  2009-07-22 11:12:44.000000000 +0000
++++ cryptsetup-1.0.7/lib/setup.c       2009-12-17 22:27:20.000000000 +0000
+@@ -744,6 +744,57 @@
+       return luks_remove_helper(arg, backend, options, 1);
+ }
++static int __crypt_luks_check_key(int arg, struct setup_backend *backend, struct crypt_options *options)
++{
++      struct luks_masterkey *mk=NULL;
++      struct luks_phdr hdr;
++      char *prompt = NULL;
++      char *password=NULL; unsigned int passwordLen;
++        unsigned int keyIndex;
++      const char *device = options->device;
++      int r;
++
++      if (!LUKS_device_ready(options->device, O_RDWR))
++              return -ENOTBLK;
++
++      r = LUKS_read_phdr(device, &hdr);
++      if(r < 0) return r;
++
++      if(asprintf(&prompt, "Enter LUKS passphrase for %s: ", device) < 0)
++              return -ENOMEM;
++      get_key(prompt,
++                &password,
++                &passwordLen, 
++                0,
++                options->key_file, 
++                options->passphrase_fd, 
++                options->timeout, 
++                options->flags & ~(CRYPT_FLAG_VERIFY | CRYPT_FLAG_VERIFY_IF_POSSIBLE));
++
++      if(!password) {
++              r = -EINVAL; goto out;
++      }
++        if (options->key_slot != -1) {
++                mk=LUKS_alloc_masterkey(hdr.keyBytes);
++                r = LUKS_open_key(device, options->key_slot, password, passwordLen, &hdr, mk, backend);
++        } else
++                r = LUKS_open_any_key_with_hdr(device, password, passwordLen, &hdr, &mk, backend);
++      if(r < 0) {
++              options->icb->log(CRYPT_LOG_ERROR,"No key available with this passphrase.\n");
++              r = -EPERM; goto out;
++      } else
++              logger(options, CRYPT_LOG_NORMAL,"key slot %d unlocked.\n", r);
++
++      r = 0;
++out:
++      safe_free(password);
++      LUKS_dealloc_masterkey(mk);
++
++      free(prompt);
++
++      return r;
++}
++
+ static int crypt_job(int (*job)(int arg, struct setup_backend *backend,
+                                 struct crypt_options *options),
+@@ -891,6 +942,11 @@
+       return 0;
+ }
++int crypt_luksCheckKey(struct crypt_options *options)
++{
++      return crypt_job(__crypt_luks_check_key, 0, options);
++}
++
+ void crypt_get_error(char *buf, size_t size)
+ {
+diff -ru cryptsetup-1.0.7.orig/src/cryptsetup.c cryptsetup-1.0.7/src/cryptsetup.c
+--- cryptsetup-1.0.7.orig/src/cryptsetup.c     2009-07-22 11:12:44.000000000 +0000
++++ cryptsetup-1.0.7/src/cryptsetup.c  2009-12-17 22:11:15.000000000 +0000
+@@ -49,6 +49,7 @@
+ static int action_isLuks(int arg);
+ static int action_luksUUID(int arg);
+ static int action_luksDump(int arg);
++static int action_luksCheckKey(int arg);
+ static struct action_type {
+       const char *type;
+@@ -72,6 +73,7 @@
+       { "luksClose",  action_remove, 0, 1, N_("<name>"), N_("remove LUKS mapping") },
+       { "luksDump",   action_luksDump, 0, 1, N_("<device>"), N_("dump LUKS partition information") },
+       { "luksDelKey",  action_luksDelKey, 0, 2, N_("<device> <key slot>"), N_("identical to luksKillSlot - DEPRECATED - see man page") },
++      { "luksCheckKey",       action_luksCheckKey, 0, 1, N_("<device>"), N_("check key can open LUKS device") },
+       { "reload",     action_create, 1, 2, N_("<name> <device>"), N_("modify active device - DEPRECATED - see man page") },
+       { NULL, NULL, 0, 0, NULL }
+ };
+@@ -402,6 +404,25 @@
+       return r;
+ }
++static int action_luksCheckKey(int arg)
++{
++      struct crypt_options options = {
++              .device = action_argv[0],
++              .key_file = opt_key_file,
++              .key_slot = opt_key_slot,
++              .timeout = opt_timeout,
++              .tries = opt_tries,
++              .icb = &cmd_icb,
++      };
++      int r; 
++
++      opt_verbose = 1;
++        options.flags = CRYPT_FLAG_NON_EXCLUSIVE_ACCESS;
++      r = crypt_luksCheckKey(&options);
++      show_status(-r);
++      return r;
++}
++
+ static void usage(poptContext popt_context, int exitcode,
+                   const char *error, const char *more)
+ {
diff --git a/package/xcryptsetup/xcryptsetup.mk b/package/xcryptsetup/xcryptsetup.mk
new file mode 100644 (file)
index 0000000..bfddfa0
--- /dev/null
@@ -0,0 +1,70 @@
+#############################################################
+#
+# cryptsetup
+#
+#############################################################
+CRYPTSETUP_VERSION:=1.0.7
+CRYPTSETUP_SOURCE:=cryptsetup-$(CRYPTSETUP_VERSION).tar.bz2
+CRYPTSETUP_SITE:=http://cryptsetup.googlecode.com/files
+CRYPTSETUP_DIR:=$(BUILD_DIR)/cryptsetup-$(CRYPTSETUP_VERSION)
+CRYPTSETUP_BINARY:=src/cryptsetup
+CRYPTSETUP_TARGET_BINARY:=sbin/cryptsetup
+
+$(DL_DIR)/$(CRYPTSETUP_SOURCE):
+        $(WGET) -P $(DL_DIR) $(CRYPTSETUP_SITE)/$(CRYPTSETUP_SOURCE)
+
+$(CRYPTSETUP_DIR)/.source: $(DL_DIR)/$(CRYPTSETUP_SOURCE)
+       $(BZCAT) $(DL_DIR)/$(CRYPTSETUP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+       toolchain/patch-kernel.sh $(CRYPTSETUP_DIR) package/cryptsetup/ \*.diff
+       touch $@
+
+$(CRYPTSETUP_DIR)/.configured: $(CRYPTSETUP_DIR)/.source
+       (cd $(CRYPTSETUP_DIR); rm -rf config.cache; \
+               $(TARGET_CONFIGURE_OPTS) \
+               $(TARGET_CONFIGURE_ARGS) \
+               $(TARGET_CONFIGURE_ENV) \
+               ./configure \
+               --target=$(GNU_TARGET_NAME) \
+               --host=$(GNU_TARGET_NAME) \
+               --build=$(GNU_HOST_NAME) \
+               --prefix=/usr \
+               --sysconfdir=/etc \
+               --disable-shared-library \
+               $(DISABLE_NLS); \
+               $(SED)  's:^hardcode_libdir_flag_spec.*$$:hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ ":'   -i libtool; \
+       )
+       touch $@
+
+$(CRYPTSETUP_DIR)/$(CRYPTSETUP_BINARY): $(CRYPTSETUP_DIR)/.configured 
+       $(MAKE) CC=$(TARGET_CC) -C $(CRYPTSETUP_DIR)
+
+$(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY): $(CRYPTSETUP_DIR)/$(CRYPTSETUP_BINARY)
+       $(MAKE) prefix=$(TARGET_DIR)/usr exec_prefix=$(TARGET_DIR) -C $(CRYPTSETUP_DIR) install
+       rm $(TARGET_DIR)/lib/libcryptsetup*
+       rmdir $(TARGET_DIR)/lib/cryptsetup
+       rm $(TARGET_DIR)/usr/include/libcryptsetup.h
+       rm -Rf $(TARGET_DIR)/usr/share/man
+       $(STRIPCMD) $(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY)
+
+
+xcryptsetup: libgcrypt libgpg-error popt e2fsprogs uclibc $(TARGET_DIR)/$(CRYPTSETUP_TARGET_BINARY)
+
+xcryptsetup-source: $(DL_DIR)/$(CRYPTSETUP_SOURCE)
+
+
+xcryptsetup-clean:
+       $(MAKE) prefix=$(TARGET_DIR)/usr exec_prefix=$(TARGET_DIR) -C $(CRYPTSETUP_DIR) uninstall
+       -$(MAKE) -C $(CRYPTSETUP_DIR) clean
+
+xcryptsetup-dirclean:
+       rm -rf $(CRYPTSETUP_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_CRYPTSETUP)),y)
+TARGETS+=xcryptsetup
+endif
+