Commit Graph

701 Commits

Author SHA1 Message Date
Milan Broz
64072e0e20 Fix udev support for old libdevmapper with not compatible definition.
Some released devmapper libraries have defined dm_task_set_cookie()
with not compatible parameters (ABI break), let's check for udev support
by using flags definition (udev is for cryptsetup not usable without this anyway).

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@296 36d66b0a-2a48-0410-832c-cd162a569da5
2010-07-03 13:11:32 +00:00
Milan Broz
1e03a34ccb Fix activate_by_* API calls to handle NULL device name as documented.
And add some tests for this.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@262 36d66b0a-2a48-0410-832c-cd162a569da5
2010-06-03 15:18:14 +00:00
Milan Broz
0a68f45bb2 Fix device alignment ioctl calls parameters.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@251 36d66b0a-2a48-0410-832c-cd162a569da5
2010-06-01 14:39:10 +00:00
Milan Broz
6ec29d935f Fix (deprecated) reload device command to accept new device argument.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@241 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-30 12:23:38 +00:00
Milan Broz
49463051bc Remove device even if underlying device disappeared.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@240 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-30 12:20:56 +00:00
Milan Broz
b4ebe0be18 Add verbose log level and move unlocking keyslot messages there.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@238 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-27 18:44:14 +00:00
Milan Broz
231ab0167b Fix luksFormat/luksOpen reading passphrase from stdin and "-" keyfile.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@237 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-27 18:44:00 +00:00
Milan Broz
205d62af89 Try to make get_key() paramater more obvious...
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@236 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-27 18:43:47 +00:00
Milan Broz
cddf4d859d Fix luksClose if underlying device is another DM device
and commands fails with "Device 253:0 doesn't exist or access denied." error.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@225 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-23 13:09:33 +00:00
Milan Broz
b237358079 Fix automatic dm-crypt module loading.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@222 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-03 15:02:47 +00:00
Milan Broz
e38a19f5e9 Fix isLuks to initialise crypto backend (blkid instead is suggested anyway).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@213 36d66b0a-2a48-0410-832c-cd162a569da5
2010-05-01 14:01:43 +00:00
Milan Broz
c10aff8a9d Fix luksOpen reading of passphrase on stdin (if "-" keyfile specified) (Issue 52)
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@208 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-30 16:21:24 +00:00
Milan Broz
611278ca39 Allow no hash specification in plain device constructor (issue 63).
Fix some warnings in apitest.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@207 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-30 14:05:25 +00:00
Milan Broz
1dcd5a3de5 Detect old dm-crypt module and disable LUKS suspend/resume.
Fix apitest to work on older systems.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@205 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-30 12:03:41 +00:00
Milan Broz
346e1d1264 Fix includes for libdevmapper internals.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@204 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-29 22:26:14 +00:00
Milan Broz
0516a1a676 Do not use kernel dm-ioctl header directly and remove warnings.
Add alignment test to distributed files.
Fix write() return compiler warning.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@202 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-16 15:48:09 +00:00
Milan Broz
17c87c1148 Fix minor errors
- undefined variable
- properly closinf file descriptorif totpology not detected
- fix IV mode to test run on RHEL5

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@201 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-16 14:51:09 +00:00
Milan Broz
4f14b43a3d Fix udev support. Set flag to disable udev rules for temporary devices.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@199 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-16 11:11:37 +00:00
Milan Broz
4a42f27d78 Detect and use devmapper udev support if available (disable by --disable-udev).
If we have device-mapper, get ingo using dm_udev_get_sync_support(),
otherwise ignore udev completely.

You can disable udev support by adding --disable-udev to configure, default is enabled.
(There can be races if udev rules run some actions and cryptsetup doesn't wait it.)

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@198 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-15 15:32:42 +00:00
Milan Broz
d39b33a371 Avoid class C++ keyword in library header.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@197 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-12 11:53:47 +00:00
Milan Broz
71c0c1f26d Fix pkgconfig to use proper package version (Issue 60, thanks to Jan Engelhardt).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@196 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-12 11:53:36 +00:00
Milan Broz
743fbbc451 Support topology information for data alignment (LUKS).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@195 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-09 15:35:19 +00:00
Milan Broz
7d207b7725 Prefer some device paths in status display. (Issue 48)
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@194 36d66b0a-2a48-0410-832c-cd162a569da5
2010-04-06 15:06:36 +00:00
Milan Broz
37708b7cad Properly initialise crypto backend in header backup/restore commands. (fixes issue #49)
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@190 36d66b0a-2a48-0410-832c-cd162a569da5
2010-02-25 16:00:12 +00:00
Milan Broz
ba7e7f94bf Do not verify unlocking passphrase in luksAddKey command. (fixes issue #50)
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@189 36d66b0a-2a48-0410-832c-cd162a569da5
2010-02-25 15:41:22 +00:00
Milan Broz
1a947a573b If gcrypt compiled with capabilities, document workaround for cryptsetup (see lib/gcrypt.c).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@180 36d66b0a-2a48-0410-832c-cd162a569da5
2010-01-17 10:20:15 +00:00
Milan Broz
37d693cfc2 Fix missing includes on recent systems.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@178 36d66b0a-2a48-0410-832c-cd162a569da5
2010-01-15 11:11:37 +00:00
Milan Broz
d93a925b5c Check for required minumum gcrypt version.
(also ensure that gcrypt global init is called,
see http://lists.gnupg.org/pipermail/gcrypt-devel/2003-August/000458.html)

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@176 36d66b0a-2a48-0410-832c-cd162a569da5
2010-01-10 20:54:00 +00:00
Milan Broz
a97b56cc32 Properly initialise gcrypt in format call.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@171 36d66b0a-2a48-0410-832c-cd162a569da5
2010-01-10 20:40:41 +00:00
Milan Broz
ad224b479a Change in iterations counts:
* Fix key slot iteration count calculation (small -i value was the same as default).
  * The slot and key digest iteration minimun is now 1000.
  * The key digest iteration # is calculated from iteration time (approx 1/8 of that).

If something very strange happens, and the generated key is not completely random
(wrong RNG), attacker can skip the whole kesylot area processing and try to
brute force key according to limited set of keys.

The iteration time (default, inherited from slot iteration time, is cca 120ms)
can make this attack slower, if not impossible.

Note, that this is just theorethic problem, anyway it is better to be prepared
if possible:-)

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@159 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-30 19:02:44 +00:00
Milan Broz
163abe3520 Fix build for non-standard gcrypt library location.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@158 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-30 16:39:13 +00:00
Milan Broz
1c91890aac Always close file dscriptor on error.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@157 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-30 16:39:03 +00:00
Milan Broz
42f8e5bdce Fix some strings to use gettext.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@155 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-11 11:56:32 +00:00
Milan Broz
dc4d945e88 Fix error handling during reading passhrase.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@154 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-11 11:56:25 +00:00
Milan Broz
1c58538b6d Fix typos (Thanks to Solveig).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@148 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-28 14:43:07 +00:00
Milan Broz
7dcd983360 Add nls.h to Makefile.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@146 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-16 20:15:44 +00:00
Milan Broz
df389199d0 Use proper NLS macros and detection (so the message translation works again).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@145 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-16 20:10:20 +00:00
Milan Broz
c3064c9442 Add temporary debug code to allow better debugging of races
with various udev-event tools which wrongly scan and open
internal temporary cryptsetup devices.

If cryptsetup run in debug mode (--debug) and remove of device
fails, code scan /proc directory and tries to find process name
which locked that device.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@141 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-15 19:26:36 +00:00
Milan Broz
e618f38929 Fix status device call to fail if running as non-root.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@139 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-14 21:33:57 +00:00
Milan Broz
4a5bfd7509 Always print warning when device is not LUKS in crypt_load().
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@137 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-14 21:33:30 +00:00
Milan Broz
e698843420 Add CRYPT_ prefix to enum defined in libcryptsetup.h.
(Avoid collision with other defines.)

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@136 36d66b0a-2a48-0410-832c-cd162a569da5
2009-11-14 21:33:16 +00:00
Milan Broz
70606301ef Fix uninteded change in keysize.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@135 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-23 16:24:50 +00:00
Milan Broz
873017d0fa Allow initialisation without specifying device.
This is used e.g. when caller need only generate volume key in plain mode.

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@134 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-23 10:43:11 +00:00
Milan Broz
6a14ba8eb5 Allow manipulate with device with only header on it (no data).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@133 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-23 10:43:03 +00:00
Milan Broz
2bda053677 Rename internal locking helpers (avoids conflict when statically linking.)
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@132 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-23 10:42:56 +00:00
Milan Broz
047ed83303 Yet another libcryptsetup.sym fix (fix make distcheck).
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@130 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-01 15:21:48 +00:00
Milan Broz
3e037b7422 Move duplicated failed message to verbose level, add some debug messages, fix resize call.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@126 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-01 14:11:55 +00:00
Milan Broz
de95a38381 Move dm backend initialisation to library calls.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@125 36d66b0a-2a48-0410-832c-cd162a569da5
2009-10-01 10:14:32 +00:00
Milan Broz
8bec41ab34 Properly apply versioned symbols in library and fix problems uncovered
by doing that:-)

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@124 36d66b0a-2a48-0410-832c-cd162a569da5
2009-09-30 15:07:41 +00:00
Milan Broz
5ca9cfde59 Export header backup and restore functions.
git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@120 36d66b0a-2a48-0410-832c-cd162a569da5
2009-09-29 12:31:49 +00:00