From: "Nico R." <n-roeser@gmx.net>
To: dm-crypt@saout.de
Subject: [dm-crypt] Exhaustive key reading seems to silently stop on error
Date: Wed, 09 Dec 2009 23:25:53 +0100 [thread overview]
Message-ID: <4B2023F1.6050306@gmx.net> (raw)
[-- Attachment #1: Type: text/plain, Size: 1049 bytes --]
Hello!
Just a minute ago, I have subscribed to this list in order to let you
know about what I have found in the cryptsetup code and which seems to
be a bug to me.
In lib/utils.c (line 450f. in cryptsetup-1.0.7; line 490f. in current
SVN revision, r132, equal to r152), we see the following code:
if(read(fd, pass + i, 1) != 1 || (newline_stop && pass[i] == '\n'))
break;
If I interpret that snipped (and its surroundings) correctly, the code
will read until EOF *or* until an error occurs.
If my interpretation is true, that code causes a problem: imagine a
hardware failure while reading the key the first two times (for
luksFormat/luksOpen). The read function returns -1 and sets errno to
EIO. cryptsetup continues with a truncated key, it seems. On a later
attempt to read the key (for luksOpen), the hardware failure is gone,
and the key can be read completely. cryptsetup will not be able to open
the encrypted partition anymore.
Please correct me if I got the code wrong … :-)
Thanks
--
Nico
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
next reply other threads:[~2009-12-09 22:26 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-09 22:25 Nico R. [this message]
2009-12-11 4:06 ` [dm-crypt] Exhaustive key reading seems to silently stop on error Arno Wagner
2009-12-11 10:57 ` Nico R.
2009-12-11 11:59 ` Milan Broz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B2023F1.6050306@gmx.net \
--to=n-roeser@gmx.net \
--cc=dm-crypt@saout.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox