SA Bugzilla – Bug 3190
spamd/sa-learn can't start under chroot/su
Last modified: 2005-02-19 12:29:27 UTC
In 2.6x versions of spamd/sa-learn there was a eval 'exec /usr/local/bin/perl -T -w -S $0 ${1+"$@"}' if 0; string at the beginning of each script file. Now it is not. And when you try to start the process as chroot /dir /bin/su - user /path/to/spamd OPTIONS the starting procedure failes. If one adds this eval, all starts as before. What was the reason for deleting this eval from the code?
Subject: Re: New: spamd/sa-learn can't start under chroot/su -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 >In 2.6x versions of spamd/sa-learn there was a > > eval 'exec /usr/local/bin/perl -T -w -S $0 ${1+"$@"}' if 0; > >string at the beginning of each script file. Now it is not. >And when you try to start the process as > > chroot /dir /bin/su - user /path/to/spamd OPTIONS > >the starting procedure failes. If one adds this eval, all starts >as before. This is added during "make install". Have you done that? - --j. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Exmh CVS iD8DBQFAWgF6QTcbUG5Y7woRArWDAJ9n3Vnf8l35DMNNlFSD1loFI4Q4pwCdGpC0 sHFz88brVk3zxX64L+nQWeE= =sdEp -----END PGP SIGNATURE-----
Subject: Re: spamd/sa-learn can't start under chroot/su On Thu, Mar 18, 2004 at 12:07:35PM -0800, bugzilla-daemon@bugzilla.spamassassin.org wrote: > http://bugzilla.spamassassin.org/show_bug.cgi?id=3190 > > ------- Additional Comments From jm@jmason.org 2004-03-18 12:07 ------- > Subject: Re: New: spamd/sa-learn can't start under chroot/su > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > > >In 2.6x versions of spamd/sa-learn there was a > > > > eval 'exec /usr/local/bin/perl -T -w -S $0 ${1+"$@"}' if 0; > > > >string at the beginning of each script file. Now it is not. > >And when you try to start the process as > > > > chroot /dir /bin/su - user /path/to/spamd OPTIONS > > > >the starting procedure failes. If one adds this eval, all starts > >as before. > > This is added during "make install". Have you done that? Certainly yes. But nothing appeared. Only this license header: #!/usr/local/bin/perl5.8.3 -T -w # <@LICENSE> # Copyright 2004 Apache Software Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # </@LICENSE> ________ ANDY > > - --j. > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.4 (GNU/Linux) > Comment: Exmh CVS > > iD8DBQFAWgF6QTcbUG5Y7woRArWDAJ9n3Vnf8l35DMNNlFSD1loFI4Q4pwCdGpC0 > sHFz88brVk3zxX64L+nQWeE= > =sdEp > -----END PGP SIGNATURE----- > > > > > > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter.
Probably this is a bug in ExtUtils::MM_Unix.pm: if one has FULLPERL (in Makefile) as /path/perl1.2.3, then make install will not add the eval string, if the name of Perl binary doesn't end with digits, the eval string will be added.
well, ignoring the eval thing ... why can't the normal version be used under chroot/su ? su definitely shouldn't be a problem. chroot() will have the normal issues related to paths and such.
oh, forgot to mention... I do still get the eval bit with 3.0.
I don't think this is an issue in 3.x. if it is, we can reopen.