In message <9404271156.AA09411@soc.staffs.ac.uk>, Craig Morgan writes:
> Sorry if this is a FAQ (I'm currently working back through the copious
> archives of this list ...), but can anyone suggest any obvious reason I've
> overlooked for the following error ...
>
> I'm setting up majordomo v1.9b2 on one of our machines (a DECstation 5000),
> after sorting out one or two permission problems I get the following about
> tmp file access ....
>
> > # echo help | /usr/lib/sendmail -v majordomo
> > majordomo... aliased to "|/usr/local/majordomo/wrapper majordomo"
> > "|/usr/local/majordomo/wrapper majordomo"... Connecting to (prog)...
> > Can't unlink /tmp/majordomo.9262.*: No such file or directory at
> > /usr/local/majordomo/majordomo line 1147, <> line 1.
> > "|/usr/local/majordomo/wrapper majordomo"... Sent
>
> To the best of my knowledge, no temporary files have ever been created ...
>
> Thanks in advance for any help ...
This is a feature 8-). The code reads:
# delete all the temporary files; do it this long ugly way
# because of a bug in PERL filename globbing
$_ = `echo $tmp.*`;
$_ = &chop_nl($_);
foreach (split(" ", $_)) {
unlink($_) || warn("Can't unlink $_: $!") if ! /\*/;
}
Sadly the output of `echo $tmp.*` is '$tmp.*' wth $tmp expanded of
course. This is precisely because there are no temporary files that
have been created. Try changing the unlink line above to:
unlink($_) || warn("Can't unlink $_: $!") if ! /\*/;
and let me know if that fixes the problem. This is what I am planning
on using in the released 1.90. This should call unlink iff the
temporary "file" has been wildcard expanded.
Earlier versions of the code didn't report this error because of a
couple of misplaced ()'s.
-- John
John Rouillard
Special Projects Volunteer University of Massachusetts at Boston
rouilj@cs.umb.edu (preferred) Boston, MA, (617) 287-6480
===============================================================================
My employers don't acknowledge my existence much less my opinions.
References:
|
|