Package: cryptsetup
Version: 2:1.2.0-2
Severity: normal

Hi,

usplash is dead and has been removed from the archive. Yet cryptsetup
still uses it (especially in the initramfs), see attached log.
This code should be dropped and possibly replaced by a integration with
plymouth, which is the successor of usplash.

Cheers,
Michael


-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.38-2-686 (SMP w/1 CPU core)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages cryptsetup depends on:
ii  dmsetup                      2:1.02.63-3 The Linux Kernel Device Mapper use
ii  libc6                        2.11.2-11   Embedded GNU C Library: Shared lib
ii  libcryptsetup1               2:1.2.0-2   libcryptsetup shared library
ii  libpopt0                     1.16-1      lib for parsing cmdline parameters

cryptsetup recommends no packages.

Versions of packages cryptsetup suggests:
ii  busybox                       1:1.18.4-1 Tiny utilities for small and embed
ii  dosfstools                    3.0.9-1    utilities for making and checking 
ii  initramfs-tools [linux-initra 0.98.8     tools for generating an initramfs
ii  udev                          167-1      /dev/ and hotplug management daemo

-- no debconf information
debian/changelog:    - start usplash in initramfs, since we need it for fancy passphrase input
debian/changelog:  * Hopefully fix askpass to properly handle console and usplash input
debian/changelog:  * Add support for usplash password prompt (closes: #397981)
debian/askpass.c: * usplash functions                                                         *
debian/askpass.c:#define USPLASH_WRITE_FIFO "/dev/.initramfs/usplash_fifo"
debian/askpass.c:#define USPLASH_READ_FIFO "/dev/.initramfs/usplash_outfifo"
debian/askpass.c:static size_t usplashused = 0;
debian/askpass.c:static size_t usplashsize = 0;
debian/askpass.c:static char *usplashbuf = NULL;
debian/askpass.c:static bool usplashwaiting = false;
debian/askpass.c:usplash_command(const char *cmd)
debian/askpass.c:usplash_finish(int fd)
debian/askpass.c:	debug("usplash_finish\n");
debian/askpass.c:	if (usplashwaiting) {
debian/askpass.c:		/* This is ugly, but we need to unwedge usplash if a different
debian/askpass.c:		 * method has been used to provide the passphrase and usplash
debian/askpass.c:		 * usplash's console did not seem to provide a reliable
debian/askpass.c:		debug("Unwedging usplash\n");
debian/askpass.c:		/* Changing the VT will normally terminate usplash */
debian/askpass.c:		/* Get a list of remaining usplash procs (if any) to kill */
debian/askpass.c:		plist = pidlist("usplash", &plistlen);
debian/askpass.c:		usplashwaiting = false;
debian/askpass.c:		usplash_command("TIMEOUT 15");
debian/askpass.c:	fifo_common_finish(fd, &usplashbuf, &usplashused, &usplashsize);
debian/askpass.c:usplash_read(int fd, char **buf, size_t *size)
debian/askpass.c:	debug("In usplash_read\n");
debian/askpass.c:	if (fifo_common_read(fd, &usplashbuf, &usplashused, &usplashsize)) {
debian/askpass.c:		while (usplashused > 0 && 
debian/askpass.c:		       ((usplashbuf[usplashused - 1] == '\n') ||
debian/askpass.c:		        (usplashbuf[usplashused - 1] == '\0'))) {
debian/askpass.c:			usplashused--;
debian/askpass.c:			usplashbuf[usplashused] = '\0';
debian/askpass.c:			debug("Correcting usplash read length\n");
debian/askpass.c:		*buf = usplashbuf;
debian/askpass.c:		*size = usplashused;
debian/askpass.c:		usplashwaiting = false;
debian/askpass.c:usplash_prepare(const char *prompt)
debian/askpass.c:	int usplash_cmd_len = strlen("TEXT-URGENT");
debian/askpass.c:	int cmd_input_max = strlen(prompt) + usplash_cmd_len + 2;
debian/askpass.c:	if (!usplash_command("TIMEOUT 0"))
debian/askpass.c:		line_len += usplash_cmd_len + 2;
debian/askpass.c:		if (!usplash_command(cmd_input))
debian/askpass.c:	if (!usplash_command(cmd_input))
debian/askpass.c:	/* If usplash is enabled, disable console */
debian/askpass.c:		usplashwaiting = true;
debian/askpass.c:	{ "usplash", usplash_prepare, usplash_read, usplash_finish, false, true, -1 },
debian/initramfs/cryptroot-script:	elif [ -p /dev/.initramfs/usplash_outfifo ] && [ -x /sbin/usplash_write ]; then
debian/initramfs/cryptroot-script:		usplash_write "TEXT-URGENT $@"
debian/initramfs/cryptroot-script:		if [ -x /sbin/usplash_write ]; then
debian/initramfs/cryptroot-script:			/sbin/usplash_write "TIMEOUT ${slumber}" || true
debian/initramfs/cryptroot-script:		if [ -x /sbin/usplash_write ]; then
debian/initramfs/cryptroot-script:			/sbin/usplash_write "TIMEOUT 15" || true
debian/initramfs/cryptroot-conf:# declare that we need usplash included in the initramfs, for pretty prompting
debian/scripts/decrypt_opensc:if [ -p /dev/.initramfs/usplash_outfifo ] && [ -x /sbin/usplash_write ]; then
debian/scripts/decrypt_opensc:	# Get pin number from usplash
debian/scripts/decrypt_opensc:	/sbin/usplash_write "INPUTQUIET Enter pin for $crypttarget ($cryptsource): "
debian/scripts/decrypt_opensc:	/usr/bin/pkcs15-crypt --decipher --input $1 --pkcs1 --raw --pin "$(cat /dev/.initramfs/usplash_outfifo)"
debian/scripts/decrypt_openct:if [ -p /dev/.initramfs/usplash_outfifo ] && [ -x /sbin/usplash_write ]; then
debian/scripts/decrypt_openct:	# Get pin number from usplash
debian/scripts/decrypt_openct:	/sbin/usplash_write "INPUTQUIET Enter pin for $crypttarget ($cryptsource): "
debian/scripts/decrypt_openct:	/usr/bin/pkcs15-tool --read-data-object $LABEL --pin "$(cat /dev/.initramfs/usplash_outfifo)" -o /proc/self/fd/3 3>&1 1>/dev/null 2>&1

Reply via email to