Comment 2 for bug 201974

Revision history for this message
giang nguyen (cauthu-hotmail) wrote :

fired up gdb:

ROOT [tmp]$ ls newdir/
ROOT [tmp]$ gdb --args /var/tmp/encfs-1.4.1.1/bin/encfsctl export /tmp/eee /tmp/newdir
GNU gdb Red Hat Linux (6.3.0.0-1.143.el4rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) b DirNode.cpp:354
No source file named DirNode.cpp.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (DirNode.cpp:354) pending.
(gdb) r
Starting program: /var/tmp/encfs-1.4.1.1/bin/encfsctl export /tmp/eee /tmp/newdir
[Thread debugging using libthread_db enabled]
[New Thread -1209100608 (LWP 6803)]
Breakpoint 2 at 0x2202fd: file DirNode.cpp, line 354.
Pending breakpoint "DirNode.cpp:354" resolved
EncFS Password:
[Switching to Thread -1209100608 (LWP 6803)]

Breakpoint 2, DirNode::plainPath (this=0x875a6a0, cipherPath_=0xbfe65d40 "fp2j,G,DF2WVrekSa1Mq7EN8n,v0N,9OJQfPCwXkfES-R,Dwi7oHk93z,5WO8QuMyg,") at DirNode.cpp:354
354 rError("decode err: %s", err.message());
(gdb) c
Continuing.
15:59:37 (DirNode.cpp:354) decode err: invalid padding size

Program exited normally.
(gdb) ROOT [tmp]$
ROOT [tmp]$
ROOT [tmp]$ ls eee/fp2j,G,DF2WVrekSa1Mq7EN8n,v0N,9OJQfPCwXkfES-R,
eee/fp2j,G,DF2WVrekSa1Mq7EN8n,v0N,9OJQfPCwXkfES-R,
ROOT [tmp]$ ls eee/*Dwi7*
eee/fgZz9DZf05o0Ry1YTRXgjiUiiVUPVjdg0VSOMh2fPeTcAuDwi7oHk93z,5WO8QuMyg,
ROOT [tmp]$

perhaps some buffer overrun?
the "cipherPath_=0xbfe65d40 "fp2j,G,DF2WVrekSa1Mq7EN8n,v0N,9OJQfPCwXkfES-R,Dwi7oHk93z,5WO8QuMyg,"

contains the full name of this file "fp2j,G,DF2WVrekSa1Mq7EN8n,v0N,9OJQfPCwXkfES-R,"
and then the "Dwi7oHk93z,5WO8QuMyg," belongs to the other file "fgZz9DZf05o0Ry1YTRXgjiUiiVUPVjdg0VSOMh2fPeTcAuDwi7oHk93z,5WO8QuMyg,"