From: <bu...@pr...> - 2001-02-01 00:23:49
|
http://bugs.proftpd.net/show_bug.cgi?id=452 *** shadow/452 Wed Jan 31 04:08:09 2001 --- shadow/452.tmp.2166 Wed Jan 31 04:08:09 2001 *************** *** 0 **** --- 1,117 ---- + +============================================================================+ + | PidFile directive | + +----------------------------------------------------------------------------+ + | Bug #: 452 Product: ProFTPD | + | Status: NEW Version: 1.2.0rc2 | + | Resolution: Platform: Sun | + | Severity: enhancement OS/Version: Solaris | + | Priority: P2 Component: core | + +----------------------------------------------------------------------------+ + | Assigned To: pro...@pr... | + | Reported By: Kos...@ce... | + | CC list: Cc: | + +----------------------------------------------------------------------------+ + | URL: | + +============================================================================+ + | DESCRIPTION | + The following patch adds a new directive called PidFile that will define the + file path for the pid file (Useful in cases you run multiple instances of the + server on the same system). + + *** main.c.org Thu Jul 27 01:09:31 2000 + --- main.c Wed Nov 29 15:10:55 2000 + *************** + *** 121,124 **** + --- 121,125 ---- + binding_t *bind_list = NULL; + pool *bind_pool = NULL; + + char *pidfile = PID_FILE_PATH; + + time_t shut = (time_t)0,deny = (time_t)0, disc = (time_t)0; + *************** + *** 669,673 **** + if(!nodaemon) { + PRIVS_ROOT; + ! unlink(PID_FILE_PATH); + PRIVS_RELINQUISH; + } + --- 670,674 ---- + if(!nodaemon) { + PRIVS_ROOT; + ! unlink(pidfile); + PRIVS_RELINQUISH; + } + *************** + *** 1707,1711 **** + log_rm_run(); + if(standalone && !nodaemon) + ! unlink(PID_FILE_PATH); + PRIVS_RELINQUISH + if(standalone) + --- 1708,1712 ---- + log_rm_run(); + if(standalone && !nodaemon) + ! unlink(pidfile); + PRIVS_RELINQUISH + if(standalone) + *************** + *** 1843,1848 **** + + PRIVS_ROOT; + ! if((pidf = fopen(PID_FILE_PATH, "w")) == NULL) { + ! perror(PID_FILE_PATH); + exit(1); + } + --- 1844,1849 ---- + + PRIVS_ROOT; + ! if((pidf = fopen(pidfile, "w")) == NULL) { + ! perror(pidfile); + exit(1); + } + *************** + *** 2333,2337 **** + install_signal_handlers(); + set_rlimits(); + ! + switch(ServerType) { + case SERVER_STANDALONE: standalone_main(); + --- 2334,2343 ---- + install_signal_handlers(); + set_rlimits(); + ! /* Get the PID file */ + ! { + ! config_rec *c = find_config(main_server->conf,CONF_PARAM,"PidFile",FALSE); + ! if (c && c->argv[0]) + ! pidfile = (char *)strdup(c->argv[0]); + ! } + switch(ServerType) { + case SERVER_STANDALONE: standalone_main(); + ############################################################################ + *** mod_core.c.org Wed Jul 26 13:03:17 2000 + --- mod_core.c Wed Nov 29 15:09:30 2000 + *************** + *** 133,136 **** + --- 133,146 ---- + } + + + MODRET set_pidfile(cmd_rec *cmd) + + { + + CHECK_ARGS(cmd,1); + + CHECK_CONF(cmd,CONF_ROOT); + + + + add_config_param_str("PidFile",1,(void*)cmd->argv[1]); + + + + return HANDLED(cmd); + + } + + + MODRET add_transferlog(cmd_rec *cmd) + { + *************** + *** 2594,2597 **** + --- 2604,2608 ---- + { "ServerIdent", set_serverident, NULL }, + { "ServerType", set_servertype, NULL }, + + { "PidFile", set_pidfile, NULL }, + { "ServerAdmin", set_serveradmin, NULL }, + { "UseReverseDNS", set_usereversedns, NULL }, \ No newline at end of file -- To unsubscribe, send mail to pro...@pr... with "unsubscribe" in the subject field of the message. http://www.proftpd.net -- The Official ProFTPD web site. http://bugs.proftpd.net -- Bug reporting and feature requests. |