[X2Go-Dev] Pull request: add --nofork option to x2gocleansessions

Andrew J. Hesford ajh+x2go at sideband.org
Sat Jun 26 22:15:01 CEST 2021


Mike,

Not a problem. A patch against release/4.1.0.x is attached. Please let
me know if you need anything else.

Thanks,
Andrew

On 2021-06-26 at 01:44 (UTC -0400), Mike Gabriel wrote:
> HI Andrew,
> 
> the patch looks good. Can you resend the patch as an attachment? It go
> re-formated here and does not apply cleanly with "git am".
> 
> Make sure to Cc: me directly, so that I don't miss your reply.
> 
> Thanks,
> Mike
> 
> On  Do 24 Jun 2021 16:13:06 CEST, Andrew J. Hesford wrote:
> 
> > Greetings,
> > 
> > Following is a pull request against the 4.1.0.x branch that separates
> > the no-fork behavior of x2gocleansessions from the debug output
> > behavior. A new flag, `--nofork` (`-n-` for short) determined whether
> > the program forks; `--debug` only controls the logging verbosity and
> > also forces `$nofork=1` to preserve old behavior.
> > 
> > Please let me know if anything should be changed.
> > 
> > Thanks,
> > Andrew Hesford
> > 
> > The following changes since commit cabad60865be64de219b3b477ddaefa6aef1cf43:
> > 
> >   Continue development (2018-11-29 08:09:45 +0100)
> > 
> > are available in the Git repository at:
> > 
> >   https://github.com/ahesford/x2goserver.git nofork
> > 
> > for you to fetch changes up to 4587d918c138205c252316c007fab31b75b87061:
> > 
> >   Separate non-forking behavior from --debug into --nofork (2021-05-11
> > 19:27:02 -0400)
> > 
> > ----------------------------------------------------------------
> > Andrew J. Hesford (1):
> >       Separate non-forking behavior from --debug into --nofork
> > 
> >  x2goserver/sbin/x2gocleansessions | 20 +++++++++++++-------
> >  1 file changed, 13 insertions(+), 7 deletions(-)
> > 
> > diff --git a/x2goserver/sbin/x2gocleansessions
> > b/x2goserver/sbin/x2gocleansessions
> > index e78f677a..8e2ba433 100755
> > --- a/x2goserver/sbin/x2gocleansessions
> > +++ b/x2goserver/sbin/x2gocleansessions
> > @@ -40,15 +40,17 @@ use Pod::Usage;
> >  Getopt::Long::Configure("gnu_getopt", "no_auto_abbrev");
> > 
> >  my $debug = 0;
> > +my $nofork = 0;
> >  my $help = 0;
> >  my $man = 0;
> > -GetOptions('debug|d' => \$debug, 'help|?|h' => \$help, 'man' => \$man)
> > or pod2usage(2);
> > +GetOptions('debug|d' => \$debug, 'nofork|n' => \$nofork, 'help|?|h' =>
> > \$help, 'man' => \$man) or pod2usage(2);
> >  pod2usage(1) if $help;
> >  pod2usage(-verbose => 2, -exitval => 0) if $man;
> > 
> >  openlog($0,'cons,pid','user');
> >  if ($debug)
> >  {
> > +	$nofork = 1;
> >  	setlogmask( LOG_UPTO (LOG_DEBUG) );
> >  }
> >  else
> > @@ -99,12 +101,12 @@ my $uname;
> >  my $serv = hostname;
> >  my $pid;
> > 
> > -if (! $debug)
> > +if (! $nofork)
> >  {
> >  	$pid = fork();
> >  }
> > 
> > -if ((!$debug) && (not defined $pid))
> > +if ((!$nofork) && (not defined $pid))
> >  {
> >  	print "resources not avilable.\n";
> >  }
> > @@ -128,7 +130,7 @@ elsif ($pid == 0 )
> >  	my $superenice_idle=$Config->param("superenicer.idle-nice-level");
> >  	my $superenice_ignoredusers=$Config->param("superenicer.ignored-users");
> > 
> > -	if ( ! $debug )
> > +	if ( ! $nofork )
> >  	{
> >  		# close any open file descriptor left open by our parent before the fork
> >  		my $fd;
> > @@ -377,7 +379,8 @@ x2gocleansessions [options]
> >    Options:
> >      --help|-h|-?            brief help message
> >      --man                   full documentation
> > -    --debug|-d              enable debugging and don't daemonize
> > +    --debug|-d              enable debugging; implies --nofork
> > +    --nofork|-n             don't daemonize
> > 
> >  =head1 OPTIONS
> > 
> > @@ -393,8 +396,11 @@ Prints the manual page and exits.
> > 
> >  =item B<--debug>|B<-d>
> > 
> > -Override debugging setting in global config and keep application in
> > foreground
> > -instead of daemonizing.
> > +Override debugging setting in global config; implies B<--nofork>.
> > +
> > +=item B<--nofork>|B<-n>
> > +
> > +Keep application in foreground instead of daemonizing.
> > 
> >  =back
> > _______________________________________________
> > x2go-dev mailing list
> > x2go-dev at lists.x2go.org
> > https://lists.x2go.org/listinfo/x2go-dev
> 
> 
> -- 
> 
> DAS-NETZWERKTEAM
> c\o Technik- und Ökologiezentrum Eckernförde
> Mike Gabriel, Marienthaler Str. 17, 24340 Eckernförde
> mobile: +49 (1520) 1976 148
> landline: +49 (4351) 850 8940
> 
> GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22  0782 9AF4 6B30 2577 1B31
> mail: mike.gabriel at das-netzwerkteam.de, http://das-netzwerkteam.de
> 



-- 
Andrew J. Hesford
ajh at sideband.org
(Personal communication)

(585) 203-4284
https://www.linkedin.com/in/ajhesford
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nofork.patch
Type: text/x-diff
Size: 2193 bytes
Desc: not available
URL: <https://lists.x2go.org/pipermail/x2go-dev/attachments/20210626/5440a255/attachment.patch>


More information about the x2go-dev mailing list