Running under Apache, I get this:
No #! line at /usr/libexec/webmin/oschooser.pl line 1.
logged in my error log frequently on a clean Webmin install (ie, no defined OS), and Webmin is unable to detect the OS. Because it has to be perl -U under apache, byt oschooser.pl is launched with a system call to perl as defined in perlpath, it then complains because the arguments in the shebang don't match those used to launch the program in the system() call. However, it seems to work fine under 1.5.30 on another system.
I'd like to sugegst that oschooser.pl should just have the perl bang path added so it can be a stand-alone script, and then the system call in webmin-lib.pl can just call it directly. This would impact the setup script, which also needs to call oschooser and may have a new perl path. That, however, could be resolved by moving the run of perlpath.pl in the setup script up to an earlier point in the process.
A possible alternative is that the UnderApache documentation could be made to indicate that /etc/webmin/perlpath needs updated to include the -U, as this also seems to work. But that potentially complicates things like scripts which want to insert perl into things like cron jobs, as now they have to remember to strip off the -U if present. There's a mechanism in place to make stand-alone scripts work fine, so I vote for using it. :)
Log in to post a comment.