Hi

I've traced the issue.

The problem is in lka_session.c

unsafe has been changed to include '/' and so the '/'s in the path get
replaced by ':'s in the code at line 710.  This behaviour is not
escaped by 'replace' - I'm not sure if it should be or if there is
something more subtle going on so I haven't provided a patch.

Thanks

JC


On Sun, 23 Feb 2014 12:16:54 +0000, you wrote:

>it seems I can't cut/paste - I was using 201402071556 not 201312081716
>as previously stated. - sorry about the mispost.
>
>JC
>
>>Hi
>>
>>I tried installing opensmtpd-201312081716 (master) on my OpenBSD 5.4
>>system whch had had 5.4.1 running perfectly happily and mail delivery
>>to my maildir failed when it had worked perfertly happily before.
>>
>>The relevent delivery line in smtpd.conf is:
>>
>>accept from any for domain <localdomains> virtual <uphall-virtuser>
>>deliver to maildir "%{user.directory}/Maildir"
>>
>>/home/jc/Maildir exists perfectly happily and has permissions for jc
>>only
>>
>>When I reverted to 5.4.1 all messages in the delivery queue were lost
>>which was mildly annoying but I guess I should have expected it.  Mail
>>delivery then resumed as normal.
>>
>>Any ideas?
>>
>>Thanks
>>
>>JC
>>
>>Debug output from failed delivery:
>>
>>imsg: control <- scheduler: IMSG_STAT_INCREMENT (len=62)
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=58)
>>imsg: mda <- queue: IMSG_MDA_DELIVER (len=512)
>>mda: new user ba8b76112d043e33 for "<getpwnam>:jc"
>>imsg: lka <- mda: IMSG_LKA_USERINFO (len=25)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=43)
>>debug: lka: userinfo <getpwnam>:jc
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=47)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=46)
>>lookup: lookup "jc" as USERINFO in table getpwnam:<getpwnam> ->
>>"jc:1000:1000:/home/jc"
>>imsg: mda <- lka: IMSG_LKA_USERINFO (len=1087)
>>debug: mda: new session ba8b7612f4678c72 for user "<getpwnam>:jc"
>>evpid 82836f5f28c3bee7
>>debug: mda: no more envelope for "<getpwnam>:jc"
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=46)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=46)
>>imsg: queue <- mda: IMSG_QUEUE_MESSAGE_FD (len=14)
>>queue-backend: queue_message_fd_r(82836f5f) -> 4
>>imsg: mda <- queue: IMSG_QUEUE_MESSAGE_FD (len=9, fd=4)
>>debug: mda: got message fd 4 for session ba8b7612f4678c72 evpid
>>82836f5f28c3bee7
>>debug: mda: querying mda fd for session ba8b7612f4678c72 evpid
>>82836f5f28c3bee7
>>imsg: parent <- mda: IMSG_PARENT_FORK_MDA (len=3166)
>>debug: smtpd: forking mda for session ba8b7612f4678c72:
>>":home:jc/Maildir" as jc
>>imsg: mda <- parent: IMSG_PARENT_FORK_MDA (len=9, fd=5)
>>debug: mda: got mda fd 5 for session ba8b7612f4678c72 evpid
>>82836f5f28c3bee7
>>mda: 0xaded03c9600: IO_LOWAT <io:0xaded03c9618 fd=5 to=-1 fl=W ib=0
>>ob=0>
>>debug: mda: end-of-file for session ba8b7612f4678c72 evpid
>>82836f5f28c3bee7
>>mda: 0xaded03c9600: IO_LOWAT <io:0xaded03c9618 fd=5 to=-1 fl=W ib=0
>>ob=0>
>>debug: mda: all data sent for session ba8b7612f4678c72 evpid
>>82836f5f28c3bee7
>>debug: smtpd: mda process done for session ba8b7612f4678c72: exited
>>abnormally
>>imsg: mda <- parent: IMSG_MDA_DONE (len=28, fd=4)
>>delivery: TempFail for 82836f5f28c3bee7: from=<>,
>>to=<[email protected]>, user=jc, method=maildir,
>>delay=11h15m, stat=Error ("cannot cd to maildir: No such file or
>>directory")
>>debug: mda: session ba8b7612f4678c72 done
>>debug: mda: user "jc" becomes runnable
>>debug: mda: all done for user "<getpwnam>:jc"
>>imsg: queue <- mda: IMSG_DELIVERY_TEMPFAIL (len=65)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=47)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=46)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=43)
>>queue-backend: queue_envelope_update(82836f5f28c3bee7) -> 1
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=58)
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=60)
>>imsg: scheduler <- queue: IMSG_DELIVERY_TEMPFAIL (len=503)
>>scheduler: updating evp:82836f5f28c3bee7
>>scheduler: getting next batch
>>scheduler: typemask=0x7e
>>scheduler: mask=0x1
>>scheduler: SCHED_DELAY 34s
>>imsg: control <- scheduler: IMSG_STAT_INCREMENT (len=62)
>>imsg: control <- scheduler: IMSG_STAT_DECREMENT (len=62)
>>scheduler: getting next batch
>>scheduler: typemask=0x7e
>>scheduler: SCHED_MDA 1
>>debug: scheduler: evp:a6a8659c953623be scheduled (mda)
>>scheduler: mask=0x1
>>scheduler: getting next batch
>>scheduler: typemask=0x7e
>>scheduler: mask=0x1
>>imsg: queue <- scheduler: IMSG_MDA_DELIVER (len=9)
>>imsg: control <- scheduler: IMSG_STAT_INCREMENT (len=62)
>>scheduler: SCHED_DELAY 10s
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=58)
>>imsg: mda <- queue: IMSG_MDA_DELIVER (len=572)
>>mda: new user ba8b7613b86d9447 for "<getpwnam>:jc"
>>imsg: lka <- mda: IMSG_LKA_USERINFO (len=25)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=43)
>>debug: lka: userinfo <getpwnam>:jc
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=47)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=46)
>>lookup: lookup "jc" as USERINFO in table getpwnam:<getpwnam> ->
>>"jc:1000:1000:/home/jc"
>>imsg: mda <- lka: IMSG_LKA_USERINFO (len=1087)
>>debug: mda: new session ba8b76147197e9bf for user "<getpwnam>:jc"
>>evpid a6a8659c953623be
>>debug: mda: no more envelope for "<getpwnam>:jc"
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=46)
>>imsg: control <- mda: IMSG_STAT_INCREMENT (len=46)
>>imsg: queue <- mda: IMSG_QUEUE_MESSAGE_FD (len=14)
>>queue-backend: queue_message_fd_r(a6a8659c) -> 4
>>imsg: mda <- queue: IMSG_QUEUE_MESSAGE_FD (len=9, fd=4)
>>debug: mda: got message fd 4 for session ba8b76147197e9bf evpid
>>a6a8659c953623be
>>debug: mda: querying mda fd for session ba8b76147197e9bf evpid
>>a6a8659c953623be
>>imsg: parent <- mda: IMSG_PARENT_FORK_MDA (len=3166)
>>debug: smtpd: forking mda for session ba8b76147197e9bf:
>>":home:jc/Maildir" as jc
>>imsg: mda <- parent: IMSG_PARENT_FORK_MDA (len=9, fd=5)
>>debug: mda: got mda fd 5 for session ba8b76147197e9bf evpid
>>a6a8659c953623be
>>mda: 0xaded03c9600: IO_LOWAT <io:0xaded03c9618 fd=5 to=-1 fl=W ib=0
>>ob=0>
>>debug: mda: end-of-file for session ba8b76147197e9bf evpid
>>a6a8659c953623be
>>mda: 0xaded03c9600: IO_LOWAT <io:0xaded03c9618 fd=5 to=-1 fl=W ib=0
>>ob=0>
>>debug: mda: all data sent for session ba8b76147197e9bf evpid
>>a6a8659c953623be
>>debug: smtpd: mda process done for session ba8b76147197e9bf: exited
>>abnormally
>>imsg: mda <- parent: IMSG_MDA_DONE (len=28, fd=4)
>>delivery: TempFail for a6a8659c953623be:
>>from=<[email protected]>,
>>to=<[email protected]>, user=jc, method=maildir,
>>delay=2h56m20s, stat=Error ("cannot cd to maildir: No such file or
>>directory")
>>debug: mda: session ba8b76147197e9bf done
>>debug: mda: user "jc" becomes runnable
>>debug: mda: all done for user "<getpwnam>:jc"
>>imsg: queue <- mda: IMSG_DELIVERY_TEMPFAIL (len=65)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=47)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=46)
>>imsg: control <- mda: IMSG_STAT_DECREMENT (len=43)
>>queue-backend: queue_envelope_update(a6a8659c953623be) -> 1
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=58)
>>imsg: control <- queue: IMSG_STAT_INCREMENT (len=60)
>>imsg: scheduler <- queue: IMSG_DELIVERY_TEMPFAIL (len=563)

--
You received this mail because you are subscribed to [email protected]
To unsubscribe, send a mail to: [email protected]

Reply via email to