parent
a0507a3381
commit
534b2691cd
@ -0,0 +1,82 @@
|
|||||||
|
/*
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
xrdp: A Remote Desktop Protocol server.
|
||||||
|
Copyright (C) Jay Sorg 2005
|
||||||
|
|
||||||
|
session manager
|
||||||
|
linux only
|
||||||
|
|
||||||
|
sig.c: signal handling code
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @file: signal handling functions
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "sesman.h"
|
||||||
|
|
||||||
|
extern int g_sck;
|
||||||
|
extern int g_pid;
|
||||||
|
extern struct sesman_config g_cfg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Shuts down sesman
|
||||||
|
*
|
||||||
|
* @param sig The received signal
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
void DEFAULT_CC
|
||||||
|
sig_sesman_shutdown(int sig)
|
||||||
|
{
|
||||||
|
if (g_getpid() != g_pid)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
g_printf("shutting down\n\r");
|
||||||
|
g_printf("signal %d pid %d\n\r", sig, g_getpid());
|
||||||
|
g_tcp_close(g_sck);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Reloads sesman config
|
||||||
|
*
|
||||||
|
* @param sig The received signal
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
void DEFAULT_CC
|
||||||
|
sig_sesman_reload_cfg(int sig)
|
||||||
|
{
|
||||||
|
struct sesman_config cfg;
|
||||||
|
|
||||||
|
if (g_getpid() != g_pid)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
g_printf("sesman: received SIGHUP\n\r");
|
||||||
|
if (config_read(&cfg) != 0)
|
||||||
|
{
|
||||||
|
g_printf("sesman: error reading config. keeping old cfg.\n\r");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
g_cfg = cfg;
|
||||||
|
g_printf("sesman: configuration reloaded\n\r");
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
xrdp: A Remote Desktop Protocol server.
|
||||||
|
Copyright (C) Jay Sorg 2005
|
||||||
|
|
||||||
|
session manager
|
||||||
|
linux only
|
||||||
|
|
||||||
|
sig.h: signal handling code declarations
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef SIG_H
|
||||||
|
#define SIG_H
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
void DEFAULT_CC
|
||||||
|
sig_sesman_shutdown(int sig);
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
void DEFAULT_CC
|
||||||
|
sig_sesman_reload_cfg(int sig);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
Loading…
Reference in new issue