Hi Zeno,

On Tue, 22 Oct 2002 18:48:08 +0200
Zeno Davatz <[EMAIL PROTECTED]> wrote:

>> [EMAIL PROTECTED] \
>> P=your_password \
>> printf "$U\0$P\0SDKFJSD\0" | \
>> strace -o /tmp/vchkpw.log -s 256 -f -e trace=file,read \
>> /home/vpopmail/bin/vchkpw /bin/true 3<&0; echo $?
> 
> I get:
> alphonse:/usr/src/v/vpopmail-5.2.1# [EMAIL PROTECTED] P=info
> printf"$U\0$P\0SDKFJSD\0" | strace -o /tmp/vchkpw.log -s 256 -f -e
> trace=file,read/home/vpopmail/bin/vchkpw /bin/true 3<&0; echo $?
> strace: /home/vpopmail/bin/vchkpw: command not found
> 1

OK ... shouldn't be that hard, really.

Replace '/home/vpopmail/' with the path to vpopmail home directory (e.g.
'~vpopmail/') of your installation. Should have been obvious you should
do a test run of vchkpw, _of course_ with correct paths :-/

>> Kill them all, shut down your POP3 daemon and run 'clearopensmtp' in
>> a'strace' call. See where it hangs, what it does last before not
>> continuing. 
> The last couple of lines are:
> 
> close(3)                                = 0
> munmap(0x40014000, 4096)                = 0
> close(4)                                = 0
> rename("/etc/vpopmail/open-smtp.tmp", "/etc/vpopmail/open-smtp") = 0
> chown32(0x804908b, 0xfa14, 0xfa14)      = 0
> umask(022)                              = 022
> getpid()                                = 12266
> pipe([3, 4])                            = 0
> vfork(

OK, there's a fork. See below.

>>(Hint: use '-o' parameter for strace; makes life a lot
>> easier, especially when looking at the output from a second
>> console).

> You mean: 
> strace -o clearopensmtp

I mean: have a look at the strace man page if you don't know the
parameters.

-o expects the name (and maybe path) to a log file which strace will
take to put it's output in, instead of dumping it to the console.

So use

strace -f -s 512 -o /tmp/clearopensmtp.strace /path/to/clearopensmtp

and _PLEASE_ replace '/path/to/' with the correct path to clearopensmtp.
-- 
Pit

Reply via email to