Can I Set Process Name?

Drew Tomlinson drew at mykitchentable.net
Tue Jul 8 08:43:14 PDT 2003


----- Original Message ----- 
From: "Daniel Bye" <dan at slightlystrange.org>
To: "FreeBSD Questions" <freebsd-questions at freebsd.org>
Sent: Tuesday, July 08, 2003 8:29 AM

On Tue, Jul 08, 2003 at 08:26:45AM -0700, Drew Tomlinson wrote:
> >
> > $0='webmin';
             ^
> >
> > However when starting the program it dies with the following
message:
> >
> > Is there something really easy I'm missing?  If it's complicated I'm
> > going to forget it as it's not that important.

> Yes - a `;' at the end of the line  ;-)

Thanks.  That removed the error but failed to change the process name.
I looked at the code a little more.  I'm not experienced in this but it
seems to me that the 'package miniserv;' line calls a precompiled
program?  Here's the beginning of the script:

#!/usr/bin/perl
# A very simple perl web server used by Webmin

$0='webmin';

# Require basic libraries
package miniserv;
use Socket;
use POSIX;

Then a little farther in the script, I see this code:

# Get miniserv's perl path and location
$miniserv_path = $0;
open(SOURCE, $miniserv_path);
<SOURCE> =~ /^#!(\S+)/; $perl_path = $1;
close(SOURCE);
@miniserv_argv = @ARGV;

So I suspect the process name gets set in this somewhere?

Thanks,

Drew





More information about the freebsd-questions mailing list