Not to be fixed
Created: Apr 29, 2013
Updated: Apr 19, 2018
Resolved Date: Apr 17, 2018
Previous ID: LIN4-13552
Found In Version: 6.0
Severity: Severe
Applicable for: Wind River Linux 6
Component/s: Kernel
in a system with ecryptfs enabled, the ls command outputs the contents properly only at the first run, even though "cat" works fine
same results is experienced with different mount points.
please see testcase for details
1. configure a wrlinux 4.3 project with:
--enable-board=common_pc --enable-kernel=standard --enable-rootfs=glibc_std
2. enable ecryptfs support in kernel config & add ecryptfs-utils userspace counterpart
3. build project and deploy on target
4. run the following succession of commands and observe the result:
root@localhost:/root> ecryptfsd
root@localhost:/root> mount -t ecryptfs /mnt/ecryptfs/ /mnt/ecryptfs/
Select key type to use for newly created files:
1) passphrase
2) openssl
Selection: 2
PEM key file [/root/.ecryptfs/pki/openssl/key.pem]:
Method of providing the passphrase:
1) passwd: Enter on Console
2) passwd_file: File Containing Passphrase
3) passwd_fd: File Descriptor for File Containing Passphrase
Selection [passwd]: 1
Passphrase:
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (loaded)
2) blowfish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (loaded)
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded)
7) des: blocksize = 8; min keysize = 8; max keysize = 8 (loaded)
8) arc4: blocksize = 1; min keysize = 1; max keysize = 256 (loaded)
Selection [aes]: 1
Select key bytes:
1) 16
2) 32
3) 24
Selection [16]: 1
Enable plaintext passthrough (y/n) [n]:
Attempting to mount with the following options:
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=2f297c00d76c5e78
Mounted eCryptfs
root@localhost:/root> echo test_teset > /mnt/ecryptfs/test.txt
root@localhost:/root> ls /mnt/ecryptfs/
test.txt
root@localhost:/root> ls /mnt/ecryptfs/
root@localhost:/root> cat /mnt/ecryptfs/test.txt
test_teset