[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: still a small error in .48 ?
> Hi,
>
> While running .44 to .48 i always noted the same:
>
> expn majordomo
> 250-Usage: login2uid login
> 250-Usage: fullname key
> 250-Usage: recase [ -u | -l | -p ] string
> 250-Usage: fullname key
> 550 no such user: <"|/usr/local/majordomo-1.94.1/wrapper majordomo">
> quit
> 221 2.0.0 cal026031.student.utwente.nl Out
> Connection closed by foreign host.
>
> This happens to pipes. I noted there were some patches, but pipes still
> don't work well.
>
> The following solved it for me (by editing rrouter.cf):
Nope, wrong location. Problems existed at two locations:
- aliases.cf
- server.cf
Proper patches below. Also appended to the "patch1".
(tomorrow starts "patch2", if need be..)
Here are some of my tests:
EXPN "|pipe"
250 local delivery for <|pipe>
EXPN "|pipe space"
250 local delivery for <"|pipe space">
EXPN mea
250 Matti Aarnio <mea@smtp.inet.fi>
EXPN nobodypipe
250 local delivery for <"| cat > /dev/null">
EXPN nobody
250 local delivery for </dev/null>
EXPN test-domo
250 local delivery for <"|/usr/local/majordomo-1.94.1/wrapper majordomo">
EXPN no-such-user
550 no such user: <no-such-user>
Do note that the users can write ANYTHING they want into
that parameter, and the system may claim the delivery to
succeed, while it very likely will fault it -- because of
privilege violation, or some such.
The VRFY is even shorter in its flow-thru. It perhaps should
be able to tell that some address is actually a list, or some
user, but now it won't do that.
...
> Then everything works fine (of course you will have to define filepipe als
> a channel in scheduler.conf).
>
> As local channel i'm using procmail delivery.
> 2.99.48 is already better here..mail to nonexistent adresses now come back
> to you (with cc to postoffice) where in .46 it was just dumped to
> /dev/null or so...you never saw an errormail come back...scheduler dumped
> it.
>
> Someone with good ideas ?
> Is it procmail perhaps ?
You lost me. What is "it" above ?
> Mark
> -------------------------------------------------------------------------
> Mark Visser | Student Civiele Technologie & Management
> Calslaan 26 - 31 | E-mail: mark@cal026031.student.utwente.nl
> 7522 MC Enschede | SNT-mail: mark@snt.student.utwente.nl
> Telephone: 053-4895038 |
/Matti Aarnio <mea@nic.funet.fi>
--- zmailer-2.99.48/proto/cf/aliases.cf~ Tue Feb 18 10:50:05 1997
+++ zmailer-2.99.48/proto/cf/aliases.cf Fri Apr 25 19:56:47 1997
@@ -359,7 +359,7 @@
if [ -n "$pobox" ]; then
db add expansions "$key" pobox
- priv=$(login2uid $user)
+ priv=$(login2uid "$user")
return (((local "pob:$user" "$pobox$plustail$domain" $(newattribute $attr privilege $priv))))
fi
--- zmailer-2.99.48/proto/cf/server.cf~ Wed Jan 3 10:14:16 1996
+++ zmailer-2.99.48/proto/cf/server.cf Fri Apr 25 20:27:10 1997
@@ -5,24 +5,39 @@
#| This is a prettyprinter for address quads. What it prints is what someone
#| doing a VRFY or EXPN query to the SMTP server will see.
- local text
+ local text user user2
+ user="$(user $quad)"
case $(channel $quad) in
- local) sift "$(user $quad)" in
+ local) ssift "$user" in
[|/].* text="local delivery for"
+ break
;;
- .* text=$(login2uid $(user $quad)) # ignore return value
- if text="$(fullname $(user $quad))"; then
+ .*
+ user2="$user"
+ ssift "$user2" in
+ (.*)@([^@]+) # FQDN format address ?
+ user2="\1" ;;
+ .* ;;
+ tfiss
+ ssift "$user2" in
+ (.*)\+(.*) # A "+" in the name ?
+ user2="\1" ;;
+ .* ;;
+ tfiss
+
+ text="$(login2uid "$user2")" # ignore return value
+ if text="$(fullname "$user2")"; then
text="$text"
else
- if text="$(fullname $(recase -l $(user $quad)))"; then
+ if text="$(fullname "$(recase -l "$user2")")"; then
text="$text"
else
text="550 no such user:"
fi
fi
;;
- tfis
+ tfiss
;;
usenet) text="newsgroup:" ;;
*) text="$(channel $quad) delivery"
@@ -32,7 +47,7 @@
esac
;;
esac
- echo "$text <$(user $quad)>"
+ echo "$text <$user>"
}
server (key) {