denyfs-0.2.1.tar.bz2 41Kb (source) sha1sum: c213f6b3e4d82d4b5b26704d5f6b8d248f9670bb
denyfs-0.2.1.ebuild 1Kb (gentoo/funtoo)
denyfs_0.2.1-1_i386.deb 15Kb (debian) sha1sum: 46cf176b8772427af1d2834d27faaf553f4d05b4

What’s new:
- dfstest released
- dfstouch –size option accepts M/G/T bytes
- dfstouch now displays a percent progress bar
- dfsopen –password prefix

aspire ~ # dfstest -h
Usage:
/usr/sbin/dfstest [options]

Options:
-f, --file [/path/fs] Path to your container
-l, --loop [loopback dev] Loopback device (typically /dev/loop0)
-s, --size [int]M/G/T Size of filesystem
-i, --hidden [int] Number of hidden devices
-b, --blocks [int] Number of blocks per hidden device
-p, --password [prefix] Provide an iterative password prefix
-h, --help This
-v, --version Version


Exampe:
/usr/sbin/dfstest -f /tmp/fs -l loop0 -s 400M -i 3

aspire ~ #

‘dfstest’ is now shipped within the denyfs project. It aims at running automatic create/open/inject data/close/reopen/compare data/reclose processes. You can provide parameters such the number of hidden device and/or the number of blocks (size of hidden device) per device.

By running ‘dfstest’ one will know whether your device design works or not. It prevents the user from manually testing all combinations. ‘dfstest’ will help the user finding the correct ‘dfstouch/dfsopen’ parameters.
‘dfstest’ is just an upper layer of ‘dfstouch/dfsopen/dfsclose’ where ‘dfsopen’ is an upper layer of ‘denyfs’ (it makes sense at the end).

Here is an example of what it would look like:

aspire denyfs-0.2.1 # dfstest -f /tmp/fs -l loop0 -s 400M -i 3 -b 2
>>> Creating filesystem 100%
>>> Binding to /dev/loop0 ... OK
>>> Setting up cryptsetup block devices ...
/dev/mapper/fs1 OK
/dev/mapper/fs2 OK
/dev/mapper/fs3 OK
>>> Sizing up block devices ...
Enlarging ...
Empty block 161 becomes block 0 of /dev/mapper/fs1
Empty block 60 becomes block 1 of /dev/mapper/fs1
Enlarging ...
Empty block 182 becomes block 0 of /dev/mapper/fs2
Empty block 187 becomes block 1 of /dev/mapper/fs2
Enlarging ...
Empty block 91 becomes block 0 of /dev/mapper/fs3
Empty block 124 becomes block 1 of /dev/mapper/fs3
>>> Mapping crytpsetup block devices to a new filesystem...
>>> Creating filesystems ...
>>> Mounting filesystems ...
/mnt/here1 mounted
/mnt/here2 mounted
/mnt/here3 mounted
>>> Injecting data ...
hidden1 > /mnt/here1/hidden1
hidden2 > /mnt/here2/hidden2
hidden3 > /mnt/here3/hidden3
>>> Dumping data ...
hidden1
hidden2
hidden3
>>> Unmounting filesystems ...
/dev/mapper/fs1_new OK
/dev/mapper/fs2_new OK
/dev/mapper/fs3_new OK
>>> Unmapping dmsetup block devices ...
/dev/mapper/fs1_new OK
/dev/mapper/fs2_new OK
/dev/mapper/fs3_new OK
>>> Unmapping cryptsetup devices ...
/dev/mapper/fs1 OK
/dev/mapper/fs2 OK
/dev/mapper/fs3 OK
>>> Unbinding /dev/loop0 ...
>>> Binding to /dev/loop0 ... OK
>>> Setting up cryptsetup block devices ...
/dev/mapper/fs1 OK
/dev/mapper/fs2 OK
/dev/mapper/fs3 OK
>>> Sizing up block devices ...
>>> Mapping crytpsetup block devices to a new filesystem...
>>> Mounting filesystems ...
/mnt/here1 mounted
/mnt/here2 mounted
/mnt/here3 mounted
>>> Comparing data ...
/mnt/here1/hidden1 data OK
/mnt/here2/hidden2 data OK
/mnt/here3/hidden3 data OK
Nb of blocks Device Device nb Size
+ 2 /dev/mapper/fs1 1 4Mb
+ 2 /dev/mapper/fs2 2 4Mb
+ 2 /dev/mapper/fs3 3 4Mb
+ 193 < -- Total nb of free blocks
-----------
= 199 <-- Total nb of blocks
space ratio: 96% free
>>> Unmounting filesystems ...
/dev/mapper/fs1_new OK
/dev/mapper/fs2_new OK
/dev/mapper/fs3_new OK
>>> Unmapping dmsetup block devices ...
/dev/mapper/fs1_new OK
/dev/mapper/fs2_new OK
/dev/mapper/fs3_new OK
>>> Unmapping cryptsetup devices ...
/dev/mapper/fs1 OK
/dev/mapper/fs2 OK
/dev/mapper/fs3 OK
>>> Unbinding /dev/loop0 ...
>>> SUCCESS
aspire denyfs-0.2.1 #

« »