From: Josh G. <ja...@us...> - 2004-05-11 04:26:03
|
Update of /cvsroot/gift/giFT/src/rpc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22766/src/rpc Modified Files: Tag: dev-gift-0_12_0 proc.c proc_session.c proc_session.h Log Message: added GIFTSRV_Shutdown Index: proc.c =================================================================== RCS file: /cvsroot/gift/giFT/src/rpc/Attic/proc.c,v retrieving revision 1.1.2.23 retrieving revision 1.1.2.24 diff -u -d -r1.1.2.23 -r1.1.2.24 --- proc.c 9 May 2004 01:15:58 -0000 1.1.2.23 +++ proc.c 11 May 2004 04:25:44 -0000 1.1.2.24 @@ -95,6 +95,10 @@ ARGU_DECL(gi_xdr_void, NULL), ARGU_DECL(gi_xdr_void, NULL) }, + { PROC_DECL(GIFTSRV_Shutdown, 2, NULL), + ARGU_DECL(gi_xdr_bool, &stor_ret.bool_t), + ARGU_DECL(gi_xdr_void, NULL) }, + { PROC_DECL(GIFTSRV_ShareStat, 10, NULL), ARGU_DECL(gi_xdr_GIFT_shareinfo_t, &stor_ret.shareinfo_t), ARGU_DECL(gi_xdr_void, NULL) }, Index: proc_session.c =================================================================== RCS file: /cvsroot/gift/giFT/src/rpc/Attic/proc_session.c,v retrieving revision 1.1.2.6 retrieving revision 1.1.2.7 diff -u -d -r1.1.2.6 -r1.1.2.7 --- proc_session.c 6 Mar 2004 08:26:26 -0000 1.1.2.6 +++ proc_session.c 11 May 2004 04:25:50 -0000 1.1.2.7 @@ -19,6 +19,23 @@ #include "proc.h" #include "proc_session.h" +#ifdef HAVE_SIGNAL_H +#include <signal.h> +#endif + +#ifndef SIGTERM +#define SIGTERM 15 +#endif + +/*****************************************************************************/ + +/** + * If defined, the GIFTSRV_Shutdown() method will be enabled, and remote + * clients will be able to stop the giftd process via a simple unauthenticated + * RPC message. + */ +#define GD_REMOTE_SHUTDOWN + /*****************************************************************************/ GD_RPC_PROCFUNC (GIFTSRV_OpenSession) @@ -53,3 +70,17 @@ return GI_RPCMSG_ACCEPT_SUCCESS; } + +GD_RPC_PROCFUNC (GIFTSRV_Shutdown) +{ + bool *ret = retdata; + +#ifdef GD_REMOTE_SHUTDOWN + gi_event_quit (SIGTERM); + *ret = true; +#else + *ret = false; +#endif + + return GI_RPCMSG_ACCEPT_SUCCESS; +} Index: proc_session.h =================================================================== RCS file: /cvsroot/gift/giFT/src/rpc/Attic/proc_session.h,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -d -r1.1.2.2 -r1.1.2.3 --- proc_session.h 26 Feb 2004 11:11:57 -0000 1.1.2.2 +++ proc_session.h 11 May 2004 04:25:50 -0000 1.1.2.3 @@ -27,6 +27,7 @@ GD_RPC_PROCFUNC (GIFTSRV_OpenSession); GD_RPC_PROCFUNC (GIFTSRV_CloseSession); +GD_RPC_PROCFUNC (GIFTSRV_Shutdown); /*****************************************************************************/ |