rpms/fcron/devel fcron-3.0.1-Makefile.in.fedora_install.patch, NONE, 1.1 fcron-3.0.1-accept_readable_fcron.conf.patch, NONE, 1.1 fcron-3.0.1-configure.fedora.patch, NONE, 1.1 fcron-3.0.1-doc_Makefile.in.fedora_install.patch, NONE, 1.1 fcron.LISEZMOI, NONE, 1.1 fcron.README, NONE, 1.1 fcron.spec, NONE, 1.1 fcrontab.c.seteuid, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Alain Portal (dionysos) fedora-extras-commits at redhat.com
Mon Jun 19 11:55:08 UTC 2006


Author: dionysos

Update of /cvs/extras/rpms/fcron/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31555/devel

Modified Files:
	.cvsignore sources 
Added Files:
	fcron-3.0.1-Makefile.in.fedora_install.patch 
	fcron-3.0.1-accept_readable_fcron.conf.patch 
	fcron-3.0.1-configure.fedora.patch 
	fcron-3.0.1-doc_Makefile.in.fedora_install.patch 
	fcron.LISEZMOI fcron.README fcron.spec fcrontab.c.seteuid 
Log Message:
auto-import fcron-3.0.1-11 on branch devel from fcron-3.0.1-11.src.rpm

fcron-3.0.1-Makefile.in.fedora_install.patch:

--- NEW FILE fcron-3.0.1-Makefile.in.fedora_install.patch ---
--- Makefile.in-orig	2006-02-06 22:44:52.000000000 +0100
+++ Makefile.in	2006-03-18 00:23:35.000000000 +0100
@@ -21,8 +21,8 @@
 # We set exec_prefix to $prefix (if you change this, you should also change
 #  it in configure.in)
 exec_prefix	:= $(DESTDIR)@exec_prefix@
-DESTSBIN	:= @sbindir@
-DESTBIN		:= @bindir@
+DESTSBIN	:= $(DESTDIR)@sbindir@
+DESTBIN		:= $(DESTDIR)@bindir@
 FCRONTABS	:= $(DESTDIR)@FCRONTABS@
 ETC		:= $(DESTDIR)@ETC@
 OPTIM		:= @CFLAGS@
@@ -109,48 +109,26 @@
 
 install: all
 
-# needed by boot-install script :
-	echo `fcron -V 2>&1 | grep "^fcron "` > $(SRCDIR)/script/PREVIOUS_VERSION
-
-	$(SRCDIR)/script/user-group $(USERNAME) $(GROUPNAME) $(ANSWERALL) $(SRCDIR)
-
-# check if the directories we use exist, and if not, create them
-	if test ! -d $(DESTSBIN); then $(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $(DESTSBIN) ; fi
-	if test ! -d $(DESTBIN); then $(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $(DESTBIN) ; fi
-	if test ! -d $(ETC); then $(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $(ETC) ; fi
-# create the spool dir (and change its mode if it already exists)
-	$(INSTALL) -g $(GROUPNAME) -o $(USERNAME) -m 770 -d $(FCRONTABS)
-
-	$(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 110 -s fcron $(DESTSBIN)
-	$(INSTALL) -g $(GROUPNAME) -o $(USERNAME) -m $(BINMODE) -s fcrontab $(DESTBIN)
-	$(INSTALL) -g $(GROUPNAME) -o $(ROOTNAME) -m $(BINMODESIGHUP) -s fcronsighup $(DESTBIN)
+	$(INSTALL) -m 755 -d $(DESTSBIN)
+	$(INSTALL) -m 755 -d $(DESTBIN)
+	$(INSTALL) -m 755 -d $(ETC)
+	$(INSTALL) -m 770 -d $(FCRONTABS)
+	$(INSTALL) fcron $(DESTSBIN)
+	$(INSTALL) fcrontab $(DESTBIN)
+	$(INSTALL) fcronsighup $(DESTBIN)
 ifeq ($(FCRONDYN), 1)
-	$(INSTALL) -g $(GROUPNAME) -o $(USERNAME) -m $(BINMODE) -s fcrondyn $(DESTBIN)
+	$(INSTALL) fcrondyn $(DESTBIN)
 endif
-	test -f $(ETC)/fcron.allow || test -f $(ETC)/fcron.deny || $(INSTALL) -m 640 -o $(ROOTNAME) -g $(GROUPNAME) $(SRCDIR)/files/fcron.allow $(SRCDIR)/files/fcron.deny $(ETC)
-	test -f $(ETC)/fcron.conf || $(INSTALL) -m 640 -o $(ROOTNAME) -g $(GROUPNAME) files/fcron.conf $(ETC)
+	$(INSTALL) -m 644 $(SRCDIR)/files/fcron.allow $(SRCDIR)/files/fcron.deny $(ETC)
+	$(INSTALL) -m 644 $(SRCDIR)/files/fcron.conf $(ETC)
 ifeq ($(USEPAM), 1)
-	$(SRCDIR)/script/install-pam-conf $(SRCDIR) $(ETC) $(ROOTNAME) $(ROOTGROUP) "$(INSTALL)"
+	$(INSTALL) -m 755 -d $(ETC)/pam.d
+	$(INSTALL) -m 644 files/fcron.pam $(ETC)/pam.d/fcron
+	$(INSTALL) -m 644 files/fcrontab.pam $(ETC)/pam.d/fcrontab
 endif
 
 	make -C doc install
 
-# in order to get correct rights when upgrading :
-# Note : we don't use "chown user:group file" because some systems use ":"
-#        and others "." as separator.
-	find $(FCRONTABS) -type f \( -name "*.orig" -a ! -name "$(ROOTNAME).orig" -a ! -name "$(SYSFCRONTAB).orig" \) -exec chown $(USERNAME) {} \; -exec chgrp $(GROUPNAME) {} \; -exec chmod 640 {} \;
-	find $(FCRONTABS) -type f \( -name "$(ROOTNAME).orig" -o -name "$(SYSFCRONTAB).orig" \) -exec chown $(ROOTNAME) {} \; -exec chgrp $(GROUPNAME) {} \; -exec chmod 600 {} \;
-	find $(FCRONTABS) -type f ! -name "*.orig" -exec chown $(ROOTNAME) {} \; -exec chgrp $(ROOTGROUP) {} \; -exec chmod 600 {} \;
-	if test -f $(ETC)/fcron.deny; then chown $(ROOTNAME) $(ETC)/fcron.deny ; chgrp $(GROUPNAME) $(ETC)/fcron.deny ; fi
-	if test -f $(ETC)/fcron.allow; then chown $(ROOTNAME) $(ETC)/fcron.allow ; chgrp $(GROUPNAME) $(ETC)/fcron.allow ; fi
-
-ifeq ($(BOOTINSTALL), 1)
-	$(SRCDIR)/script/boot-install "$(INSTALL) -o $(ROOTNAME)" $(DESTSBIN) $(DEBUG) $(FCRONTABS) $(ANSWERALL) $(SRCDIR)
-endif
-
-install-boot: install
-	$(SRCDIR)/script/boot-install "$(INSTALL) -o $(ROOTNAME)" $(DESTSBIN) $(DEBUG) $(FCRONTABS)  $(ANSWERALL) $(SRCDIR)
-
 install-restart: install
 ifeq ($(DEBUG), 1)
 	kill -TERM `pidof fcron` || exit 0

fcron-3.0.1-accept_readable_fcron.conf.patch:

--- NEW FILE fcron-3.0.1-accept_readable_fcron.conf.patch ---
Les sous-répertoires fcron-3.0.1-orig/debian et fcron-3.0.1-pat/debian sont identiques.
Les sous-répertoires fcron-3.0.1-orig/doc et fcron-3.0.1-pat/doc sont identiques.
Les sous-répertoires fcron-3.0.1-orig/files et fcron-3.0.1-pat/files sont identiques.
Les sous-répertoires fcron-3.0.1-orig/script et fcron-3.0.1-pat/script sont identiques.
diff -u fcron-3.0.1-orig/subs.c fcron-3.0.1-pat/subs.c
--- fcron-3.0.1-orig/subs.c	2006-02-06 22:44:52.000000000 +0100
+++ fcron-3.0.1-pat/subs.c	2006-03-23 21:38:20.000000000 +0100
@@ -183,10 +183,9 @@
     /* check if the file is secure : owner:root, group:fcron,
      * writable only by owner */
     if ( fstat(fileno(f), &st) != 0 
-	 || st.st_uid != ROOTUID || st.st_gid != fcrongid
 	 || st.st_mode & S_IWGRP || st.st_mode & S_IWOTH ) {
-	error("Conf file (%s) must be owned by root:" GROUPNAME 
-	      " and (no more than) 644 : ignored", fcronconf, GROUPNAME);
+	error("Conf file (%s) must not have more perms than 644 : ignored", 
+		fcronconf);
 	fclose(f);
 	return;
     }

fcron-3.0.1-configure.fedora.patch:

--- NEW FILE fcron-3.0.1-configure.fedora.patch ---
--- configure-orig	2006-03-18 00:52:24.000000000 +0100
+++ configure	2006-03-18 00:55:04.000000000 +0100
@@ -11844,20 +11844,12 @@
     fi
     ;;
   *)
-    if test -d "$withval"; then
       cat >>confdefs.h <<_ACEOF
 #define PIDFILE "$withval/fcron.pid"
 _ACEOF
 
       echo "$as_me:$LINENO: result: $withval" >&5
 echo "${ECHO_T}$withval" >&6
-    else
-      { { echo "$as_me:$LINENO: error:
-Directory $withval does not exist" >&5
-echo "$as_me: error:
-Directory $withval does not exist" >&2;}
-   { (exit 1); exit 1; }; }
-    fi
     ;;
   esac
 else
@@ -11923,20 +11915,12 @@
     fi
     ;;
   *)
-    if test -d "$withval"; then
       cat >>confdefs.h <<_ACEOF
 #define FIFOFILE "$withval/fcron.fifo"
 _ACEOF
 
       echo "$as_me:$LINENO: result: $withval" >&5
 echo "${ECHO_T}$withval" >&6
-    else
-      { { echo "$as_me:$LINENO: error:
-Directory $withval does not exist" >&5
-echo "$as_me: error:
-Directory $withval does not exist" >&2;}
-   { (exit 1); exit 1; }; }
-    fi
     ;;
   esac
 else

fcron-3.0.1-doc_Makefile.in.fedora_install.patch:

--- NEW FILE fcron-3.0.1-doc_Makefile.in.fedora_install.patch ---
--- doc/Makefile.in-orig	2006-03-17 23:58:41.000000000 +0100
+++ doc/Makefile.in	2006-03-17 23:59:38.000000000 +0100
@@ -104,25 +104,9 @@
 		fi ; \
 		for i in 1 3 5 8; do \
 			if test ! -d $$DIR/man$$i; then \
-	$(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $$DIR/man$$i ; \
+	$(INSTALL) -m 755 -d $$DIR/man$$i ; \
 			 fi ; \
-	$(INSTALL) -m 644 -o $(ROOTNAME) $(SRCDIR)/$$l/man/*.$$i $$DIR/man$$i ; \
-		done ; \
-	done )
-
-	@(echo "Installing documentation files in $(DESTDOC)/fcron-$(VERSION)...")
-	@(if test ! -d $(DESTDOC)/fcron-$(VERSION); then $(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $(DESTDOC)/fcron-$(VERSION) ; fi)
-
-	@(for l in $(LANGUAGES); do \
-		DIR=$(DESTDOC)/fcron-$(VERSION) ; \
-		if test ! -d $$DIR/$$l; then \
-	$(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $$DIR/$$l ; \
-		fi ; \
-		for i in txt HTML; do \
-			if test ! -d $$DIR/$$l/$$i; then \
-	$(INSTALL) -g $(ROOTGROUP) -o $(ROOTNAME) -m 755 -d $$DIR/$$l/$$i ; \
-			 fi ; \
-	$(INSTALL) -m 644 -o $(ROOTNAME) $$l/$$i/* $$DIR/$$l/$$i/ ;\
+	$(INSTALL) -m 644 $(SRCDIR)/$$l/man/*.$$i $$DIR/man$$i ; \
 		done ; \
 	done )
 


--- NEW FILE fcron.LISEZMOI ---
Pour activer fcron par défaut, l'administrateur doit taper
la commande suivante :

  chkconfig --level 2345 fcron on

Vous pouvez souhaiter utiliser les crontabs fournies par le paquet Fedora
« crontabs ». C'est possible, fcron reconnait le format de ces crontabs.
Dans ce cas, en mode super utilisateur, il vous suffit de taper la commande :

  fcrontab /etc/crontab

et de recommencer chaque fois que vous modifiez ce fichier.

--- NEW FILE fcron.README ---
To enable fcron by default, administrator have to run the following command:

  chkconfig --level 2345 fcron on

You can use crontabs provided by the Fedora package "crontabs", fcron knows
how to deal with this format. As superuser, enter the following command:

  fcrontab /etc/crontab

This should be done everytime the file is modified.

--- NEW FILE fcron.spec ---
Name:		fcron
Version:	3.0.1
Release:	11%{?dist}
Summary:	A task scheduler
Summary(fr):	Un ordonnanceur de tâches

Group:		Applications/System
License:	GPL
URL:		http://fcron.free.fr/
Source0:	http://fcron.free.fr/archives/%{name}-%{version}.src.tar.gz
Source1:	fcron.README
Source2:	fcron.LISEZMOI
Patch0:		fcron-3.0.1-Makefile.in.fedora_install.patch
Patch1:		fcron-3.0.1-doc_Makefile.in.fedora_install.patch
Patch2:		fcron-3.0.1-configure.fedora.patch
Patch3:		fcron-3.0.1-accept_readable_fcron.conf.patch
Patch4:		fcrontab.c.seteuid
BuildRoot: 	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

Requires:	sysklogd
Requires:	smtpdaemon
Requires:	vim-minimal

BuildRequires:	pam-devel
BuildRequires:	libselinux-devel
BuildRequires:	smtpdaemon
BuildRequires:	vim-minimal

Requires(pre):    /usr/sbin/useradd
Requires(post):   /sbin/chkconfig, /sbin/service
Requires(preun):  /sbin/chkconfig, /sbin/service
Requires(postun): /usr/sbin/userdel

%description
Fcron is a scheduler. It aims at replacing Vixie Cron, so it implements most
of its functionalities.
But contrary to Vixie Cron, fcron does not need your system to be up 7 days
a week, 24 hours a day: it also works well with systems which are
not running neither all the time nor regularly (contrary to anacrontab).
In other words, fcron does both the job of Vixie Cron and anacron, but does
even more and better :)) ...

WARNING: fcron isn't started automatically on boot after installation.
You can use system-config-services to enable automatic fcron startup
on boot, or use chkconfig as explain in the
%{_docdir}/%{name}-%{version}/README.Fedora file.

%description -l fr
Fcron est un ordonnanceur. Il est destiné à remplacer Vixie Cron. Aussi, il
en possède la plupart des fonctionnalités.
Mais contrairement à Vixie Cron, fcron n'a pas besoin que votre système soit
en fonctionnement 7 jours sur 7, 24 heures sur 24 : il fonctionne aussi
correctement sur des systèmes qui ne fonctionnent ni tout le temps, ni
régulièrement (contrairement à anacrontab).
En d'autres mots, fcron fait le travail de Vixie Cron et anacron, mais en fait
plus et mieux :)) ...

ATTENTION : fcron n'est pas activé automatiquement au démarrage après
l'installation. Pour y remédier, vous pouvez utiliser system-config-services
ou chkconfig comme expliqué dans le fichier
%{_docdir}/%{name}-%{version}/LISEZMOI.Fedora.

%prep

%setup -q

%{__cp} -p %{SOURCE1} README.Fedora
%{__cp} -p %{SOURCE2} LISEZMOI.Fedora

%patch0 -p0
%patch1 -p0
%patch2 -p0
%patch3 -p1
%patch4 -p0

%build

%configure
make %{?_smp_mflags}

%install
%{__rm} -rf %{buildroot}

cp -a doc/fr/HTML doc/fr/HTML-fr

make install DESTDIR=%{buildroot}

%{__install} -d %{buildroot}%{_initrddir}
%{__sed}  -i-e "s|SBIN=@@DESTSBIN@|SBIN=%{_sbindir}|" script/sysVinit-launcher
%{__sed} -e "s|2345|-|" script/sysVinit-launcher > %{buildroot}%{_initrddir}/fcron
%{__chmod} 0755 %{buildroot}%{_initrddir}/fcron

%{__install} -m755 debian/fcron-update-crontabs %{buildroot}%{_sbindir}/
%{__install} -m644 debian/fcron-update-crontabs.1 %{buildroot}%{_mandir}/man1/


# nuke permissions (for strip)
%{__chmod} 755 %{buildroot}%{_bindir}/*
%{__chmod} 755 %{buildroot}%{_sbindir}/*

# rm an untranslated manpage
%{__rm} -f %{buildroot}%{_mandir}/fr/man3/bitstring.3

for i in %{buildroot}%{_mandir}/man*/*
do
  iconv -f latin1 -t UTF8 < $i > tmp
  %{__mv} tmp $i
done

for i in %{buildroot}%{_mandir}/fr/man*/*
do
  iconv -f latin1 -t UTF8 < $i > tmp
  %{__mv} tmp $i
done

# rpmbuild insist that %ghost files exist?
%{__install} -d %{buildroot}%{_localstatedir}/run/
touch %{buildroot}%{_localstatedir}/run/fcron.pid
touch %{buildroot}%{_localstatedir}/run/fcron.fifo


%pre
if [ "$1" = "1" ]
then
  /usr/sbin/useradd -c "Fcron system user" -r fcron -d %{_localstatedir}/spool/fcron -s /bin/true
fi

%post
if [ "$1" = "1" ]
then
  /sbin/chkconfig --add %{name}
else
  if [ -f %{_localstatedir}/lock/subsys/%{name} ]
  then
    /sbin/service %{name} restart > /dev/null 2>&1
  fi
fi

%postun
if [ "$1" = "0" ]
  then
  # Remove user fcron
  /usr/sbin/userdel fcron
fi

%preun
if [ "$1" = "0" ]
then
  /sbin/service %{name} stop >/dev/null 2>&1
  /sbin/chkconfig --del %{name}
fi

%clean
%{__rm} -rf %{buildroot}

%files
%defattr(-,root,root,-)
%doc doc/en/HTML/ doc/fr/HTML-fr/ doc/en/txt/*
%doc README.Fedora LISEZMOI.Fedora
%{_initrddir}/fcron
%config(noreplace) %{_sysconfdir}/fcron.conf
%config(noreplace) %{_sysconfdir}/fcron.allow
%config(noreplace) %{_sysconfdir}/fcron.deny
%config(noreplace) %{_sysconfdir}/pam.d/fcron
%config(noreplace) %{_sysconfdir}/pam.d/fcrontab
%{_mandir}/man1/*
%{_mandir}/man3/*
%{_mandir}/man5/*
%{_mandir}/man8/*
%lang(fr) %{_mandir}/fr/man1/*
%lang(fr) %{_mandir}/fr/man5/*
%lang(fr) %{_mandir}/fr/man8/*
%attr(04754,root,fcron) %{_bindir}/fcronsighup
%{_bindir}/fcrondyn
%attr(06755,fcron,fcron) %{_bindir}/fcrontab
%{_sbindir}/fcron
%{_sbindir}/fcron-update-crontabs
%dir %attr(770,fcron,fcron) %{_localstatedir}/spool/fcron
%ghost %{_localstatedir}/run/fcron.pid
%ghost %{_localstatedir}/run/fcron.fifo

%changelog
* Fri Jun 16 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-11
  - Rewording README file.

* Thu Jun 15 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-10
  - Rename and improve README files.
  - Improve description.

* Mon Jun 12 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-9
  - Don't start fcron by default.
  - Add documentation to start fcron by default.
  - Add %%lang(fr) for french man pages.

* Tue Jun  6 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-8
  - Patch to set fcrontab euid to root before calling PAM library.
  - Contribution from upstream maintainer.

* Fri Mar 24 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-7
  - Make fcronsighup readable by everyone.

* Fri Mar 24 2006 Patrice Dumas <pertusus[At]free.fr> 3.0.1-6
  - Update previous patch.
  - Set sgid on fcrontab.

* Thu Mar 23 2006 Patrice Dumas <pertusus[At]free.fr> 3.0.1-5
  - Patch to accept a configuration file with perms root root 644.

* Tue Mar 21 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-4
  - Remove useless %%{_bindir}/convert-fcrontab.

* Sat Mar 18 2006 Patrice Dumas <pertusus[At]free.fr> 3.0.1-3
  - Many cleanings.

* Fri Mar 17 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-2
  - Remove package name from summary.
  - Remove useless management of very old previous version.
  - Use Makefile OPTIM feature.
  - Use %%{_localstatedir} macro instead of hard coded path.
  - Use %%{__chmod}, %%{__install}, %%{__mv}, %%{__rm} and %%{__sed} macros.

* Mon Mar 13 2006 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.1-1
  - New upstream version.

* Tue Dec  6 2005 Alain Portal <aportal[AT]univ-montp2[DOT]fr> 3.0.0-1
  - Fedorize the Mandriva spec.


--- NEW FILE fcrontab.c.seteuid ---
--- fcrontab.c.orig	2006-06-06 10:29:25.000000000 +0200
+++ fcrontab.c	2006-06-06 10:34:21.000000000 +0200
@@ -1013,6 +1013,10 @@
     /* Open PAM session for the user and obtain any security
        credentials we might need */
 
+#ifdef USE_SETE_ID
+    if (seteuid(uid) != 0)
+	die_e("Could not change euid to %d", uid);
+#endif
     debug("username: %s", user);
     retcode = pam_start("fcrontab", user, &apamconv, &pamh);
     if (retcode != PAM_SUCCESS) die_pame(pamh, retcode, "Could not start PAM");
@@ -1036,6 +1040,10 @@
     /* Close the log here, because PAM calls openlog(3) and
        our log messages could go to the wrong facility */
     xcloselog();
+#ifdef USE_SETE_ID
+    if (seteuid(fcrontab_uid) != 0)
+	die_e("Couldn't change euid to fcrontab_uid[%d]",fcrontab_uid);
+#endif
 #endif /* USE_PAM */
 
     if (uid != fcrontab_uid)


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/fcron/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore	19 Jun 2006 11:54:10 -0000	1.1
+++ .cvsignore	19 Jun 2006 11:55:08 -0000	1.2
@@ -0,0 +1 @@
+fcron-3.0.1.src.tar.gz


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/fcron/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources	19 Jun 2006 11:54:10 -0000	1.1
+++ sources	19 Jun 2006 11:55:08 -0000	1.2
@@ -0,0 +1 @@
+8e5dcb3a646c11294294895954ef0a48  fcron-3.0.1.src.tar.gz




More information about the fedora-extras-commits mailing list