# @configure_input@
-# $Id: Makefile.in,v 1.94 2002-10-06 17:15:58 thib Exp $
+# $Id: Makefile.in,v 1.95 2002-10-28 17:54:31 thib Exp $
# The following should not be edited manually (use configure options)
# If you must do it, BEWARE : some of the following is also defined
install-restart: install
ifeq ($(DEBUG), 1)
kill -TERM `pidof fcron` || exit 0
- /etc/rc.d/init.d/fcron start
+ /etc/init.d/fcron restart
endif
uninstall:
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: changes.sgml,v 1.20 2002-10-06 17:13:10 thib Exp $ -->
+<!-- $Id: changes.sgml,v 1.21 2002-10-28 18:00:29 thib Exp $ -->
<sect1 id="changes">
<title>Changes</title>
runas(root) involontary.</para>
</listitem>
<listitem>
- <para>Perf improvement : we use now a buffer in fcrontab while copying
-an orig file (became necessary due to the use of O_SYNC)</para>
+ <para>Perf improvement : we now use buffers to write something to disk
+ (became necessary due to the use of O_SYNC).</para>
+ </listitem>
+ <listitem>
+ <para>The PID indicated by fcrondyn is now the pid of the job itself
+(up to now, it was the one of the fcron process controlling the job).</para>
+ </listitem>
+ <listitem>
+ <para>Implemented functions kill (send a signal to a running job)
+and renice (change the priority of a running job) in fcrondyn.</para>
+ </listitem>
+ <listitem>
+ <para>Added fcron's option -q to control the lavg and serial queue sizes.
+</para>
+ </listitem>
+ <listitem>
+ <para>Added some timeouts in fcron for fcrondyn clients.</para>
</listitem>
<listitem>
<para>bug fix : in 2.9.2, fcrontab and fcron did not set correctly some
file modes.</para>
</listitem>
<listitem>
- <para>code clean : use the same scheme for all struct types.</para>
+ <para>bug (introduced in 2.9.1) : when a job stops with an non-zero exit
+status or because it has been signaled, send a mail to its owner to inform him
+(in 2.9.1 and 2.9.2, the mail was sent, but contained nothing).</para>
+ </listitem>
+ <listitem>
+ <para>code clean : use the same scheme for all struct types, removed
+some code redundancy (save to disk management).</para>
</listitem>
</itemizedlist>
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: fcron-doc.sgml,v 1.4 2002-07-19 19:41:03 thib Exp $ -->
+<!-- $Id: fcron-doc.sgml,v 1.5 2002-10-28 17:57:28 thib Exp $ -->
<book lang="en" id="fcron-doc">
<bookinfo id="bookinfo">
<warning>
<para>This release (&version;) - as every version of the
form x.y.z where y is an odd number -, is a <emphasis>development</emphasis>
-release so it may contain more bugs (and uglier ones :)) ) than a stable
+release, so it may contain more bugs (and uglier ones :)) ) than a stable
release.
</para>
</warning>
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: fcrondyn.1.sgml,v 1.6 2002-08-29 17:35:00 thib Exp $ -->
+<!-- $Id: fcrondyn.1.sgml,v 1.7 2002-10-28 17:59:42 thib Exp $ -->
<refentry id="fcrondyn.1">
<refmeta>
<term>PID</term>
<listitem>
<para>The pid of the running job.</para>
- <warning>
- <para>This is currently not the pid of the job itself,
- but the pid of the fcron process controlling it. However,
- the pid of the job itself should be a number close to
- that one (under linux at least).</para>
- </warning>
</listitem>
</varlistentry>
<varlistentry>
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: readme.sgml,v 1.2 2002-07-19 19:45:32 thib Exp $ -->
+<!-- $Id: readme.sgml,v 1.3 2002-10-28 18:00:32 thib Exp $ -->
<sect1 id="readme">
<title>About fcron</title>
<sect2>
<title>Compilation and installation</title>
- <para>See the <link linkend="install">INSTALL</link> file.</para>
+ <para>See the <link linkend="install">install</link> file (either install.txt
+or install.html).</para>
</sect2>
<sect2>
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: relnotes.sgml,v 1.3 2002-08-10 20:41:58 thib Exp $ -->
+<!-- $Id: relnotes.sgml,v 1.4 2002-10-28 17:59:28 thib Exp $ -->
<sect1 id="relnotes">
<title>Release notes : &fcron; &version;</title>
can disable PAM use in configure, using "--with-pam=no".</para>
</listitem>
<listitem>
- <para>Many commands of &fcrondyn; are not implemented yet. In
+ <para>Some commands of &fcrondyn; are not implemented yet. In
particular, fcrondyn does not use PAM yet.</para>
</listitem>
<listitem>
A copy of the license is included in gfdl.sgml.
-->
-<!-- $Id: todo.sgml,v 1.16 2002-10-05 14:28:37 thib Exp $ -->
+<!-- $Id: todo.sgml,v 1.17 2002-10-28 17:59:37 thib Exp $ -->
<sect1 id="todo">
<title>Todo</title>
<para>Help is welcome to catch this bug !</para>
</listitem>
<listitem>
- <para>bug fix (?) : "already running" bug (? - unconfirmed) </para>
- </listitem>
- <listitem>
- <para>find a way to get user's job pid (not the fcron process
- controlling it) (use pipe() ?)</para>
- </listitem>
- <listitem>
- <para>Use (or remove from config.h.in) MAX_USER_CON & MAX_IDLE_TIME.</para>
+ <para>make fcron more robust concerning system crash, hardware failure, etc.
+In particular, save files under a temporary name, check if everything's all right,
+and if yes, replace the old file by renaming the temporary file (use rename()
+or a direct save if rename() fails (EBUSY) ).</para>
</listitem>
<listitem>
<para>Use directory notifications (?) (portable ?) (cf. dnotify)</para>
using PAM - not implemented in fcrondyn)</para>
</listitem>
<listitem>
- <para>run one of this job, change its nice value, stop it...</para>
+ <para>implement more commands for fcrondyn, and make it more secure
+and reliable</para>
</listitem>
<listitem>
- <para>make fcrondyn more secure and reliable</para>
+ <para>For environment settings, make a var substitution.</para>
</listitem>
<listitem>
<para>add a return code for jobs which would mean that they should
* `LICENSE' that comes with the fcron source distribution.
*/
- /* $Id: fcrontab.c,v 1.62 2002-10-06 16:52:28 thib Exp $ */
+ /* $Id: fcrontab.c,v 1.63 2002-10-28 17:51:13 thib Exp $ */
/*
* The goal of this program is simple : giving a user interface to fcron
#include "temp_file.h"
#include "read_string.h"
-char rcs_info[] = "$Id: fcrontab.c,v 1.62 2002-10-06 16:52:28 thib Exp $";
+char rcs_info[] = "$Id: fcrontab.c,v 1.63 2002-10-28 17:51:13 thib Exp $";
void info(void);
void usage(void);
int tmp_fd = 0;
FILE *tmp_file = NULL;
char *tmp_str = NULL;
- register int c;
+ int c;
short return_val = EXIT_OK;
tmp_fd = temp_file(&tmp_str);
* `LICENSE' that comes with the fcron source distribution.
*/
- /* $Id: option.h,v 1.21 2002-02-25 18:46:37 thib Exp $ */
+ /* $Id: option.h,v 1.22 2002-10-28 17:56:43 thib Exp $ */
/* This has been inspired from bitstring(3) : here is the original copyright :
*/
4 should we run this job at fcron startup if it should have been
executed during system down?
5 should this job be run serially ?
- 6 is this job should be run serially only once (for bootrun) ?
+ 6 should this job be run serially only once (for bootrun) ?
7 does the output have to be mailed to user ?
8 does the output (even if zero-length) must be mailed to user ?
9 if time of execution is exceeded, exec the lavg job or not ?