diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..e594810
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.rpm
+*.log
+*spec-20*
+*.tar.xz
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..ce88370
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,21 @@
+# Makefile for source rpm: e-smith-base
+# $Id: Makefile,v 1.1 2016/02/04 23:18:11 vip-ire Exp $
+NAME := e-smith-base
+SPECFILE = $(firstword $(wildcard *.spec))
+
+define find-makefile-common
+for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
+endef
+
+MAKEFILE_COMMON := $(shell $(find-makefile-common))
+
+ifeq ($(MAKEFILE_COMMON),)
+# attept a checkout
+define checkout-makefile-common
+test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
+endef
+
+MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
+endif
+
+include $(MAKEFILE_COMMON)
diff --git a/README.md b/README.md
index 44c8559..649d1ff 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,17 @@
-# e-smith-base
+# e-smith-base
-SMEServer Koozali developed git repo for e-smith-base smeserver
\ No newline at end of file
+SMEServer Koozali developed git repo for e-smith-base smeserver
+
+## Wiki
+
https://wiki.koozali.org/
+
+## Bugzilla
+Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=e-smith-base&product=SME%20Server%2010.X&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED)
+
+## Description
+
+
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
+*Once it has been checked, then this comment will be deleted*
+
+
+E-smith-base is a powerful software suite designed to improve the security and performance of web servers. It includes a full suite of web server applications, such as Apache, MySQL, and PHP, as well as many other tools and features. E-smith-base also includes a wide range of security features, such as an intrusion detection system, malware scanning, and a secure shell. Additionally, it is highly customizable and can be used to create and manage multiple websites on one server. E-smith-base is an ideal choice for organizations looking to improve their web server performance and security.
diff --git a/additional/COPYING b/additional/COPYING
new file mode 100644
index 0000000..eeb586b
--- /dev/null
+++ b/additional/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C) 19yy
+
+ 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) 19yy name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ , 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/additional/CVS/Entries b/additional/CVS/Entries
new file mode 100644
index 0000000..1784810
--- /dev/null
+++ b/additional/CVS/Entries
@@ -0,0 +1 @@
+D
diff --git a/additional/CVS/Repository b/additional/CVS/Repository
new file mode 100644
index 0000000..e52aec4
--- /dev/null
+++ b/additional/CVS/Repository
@@ -0,0 +1 @@
+rpms/e-smith-base/sme10/e-smith-base-5.8.0
diff --git a/additional/CVS/Root b/additional/CVS/Root
new file mode 100644
index 0000000..a20ba0c
--- /dev/null
+++ b/additional/CVS/Root
@@ -0,0 +1 @@
+:ext:jpp@shell.koozali.org:/cvs/smeserver
diff --git a/additional/console_wrapper.c b/additional/console_wrapper.c
new file mode 100644
index 0000000..b8e0595
--- /dev/null
+++ b/additional/console_wrapper.c
@@ -0,0 +1,8 @@
+#include
+#define CONSOLE_PATH "/sbin/e-smith/console.pl"
+int main(ac, av)
+char **av;
+{
+ execv(CONSOLE_PATH, av);
+ return 0;
+}
diff --git a/additional/createlinks.orig b/additional/createlinks.orig
new file mode 100755
index 0000000..4b9714d
--- /dev/null
+++ b/additional/createlinks.orig
@@ -0,0 +1,672 @@
+#!/usr/bin/perl -w
+
+use esmith::Build::CreateLinks qw(:all);
+
+templates2events("/etc/sysconfig/i18n", qw(post-install post-upgrade e-smith-base-update));
+
+templates2events("/etc/selinux/config", qw(post-install post-upgrade e-smith-base-update));
+
+# give the correct configuration file of dhcpd.conf
+templates2events("/etc/dhcp/dhcpd.conf", qw(bootstrap-console-save e-smith-base-update));
+
+# ppp-conf-users
+
+foreach (qw(pap-secrets chap-secrets))
+{
+ templates2events("/etc/ppp/$_", qw(
+ bootstrap-console-save
+ console-save
+ remoteaccess-update
+ e-smith-base-update));
+}
+
+foreach (qw(
+ /var/service/wan/pppoe.pppd.conf
+ /var/service/wan/run.pppoe.conf
+ /etc/ppp/ip-down.local
+ /etc/ppp/ip-up.local
+ ))
+{
+ templates2events("$_", qw(
+ console-save
+ bootstrap-console-save
+ e-smith-base-update
+ ));
+}
+
+safe_symlink("daemontools", "root/etc/rc.d/init.d/wan");
+service_link_enhanced("wan", "S37", "7");
+service_link_enhanced("wan", "K90", "6");
+service_link_enhanced("wan", "K90", "0");
+service_link_enhanced("wan", "K90", "1");
+
+# conf-dialup
+foreach (qw(
+ /etc/sysconfig/network-scripts/ifcfg-ppp0
+ /etc/sysconfig/network-scripts/chat-ppp0
+ /etc/ppp/ip-up.local
+ /etc/ppp/ip-down.local
+ /etc/diald.conf
+ /etc/diald.filter
+ /etc/diald/link
+ /var/service/ippp/config
+ /etc/ppp/ioptions
+ ))
+{
+ templates2events($_, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+
+# conf-networking
+
+foreach (qw(
+ /etc/sysconfig/network-scripts/ifcfg-bond0
+ /etc/modprobe.d/bonding.conf
+ /etc/sysconfig/network
+ /etc/nsswitch.conf
+ /etc/HOSTNAME
+ /etc/hosts
+ /etc/resolv.conf
+ /etc/sysctl.conf
+ /var/service/wan/dhclient.config
+ ))
+{
+ templates2events($_, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+event_link("update-ifcfg", "console-save", "05");
+event_link("update-ifcfg", "bootstrap-console-save", "05");
+
+# conf-other
+
+templates2events("/etc/crontab", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/mime.types", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/sysconfig/rsyslog", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/rsyslog.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/updatedb.conf", qw(
+ bootstrap-console-save
+ e-smith-base-update
+));
+templates2events("/etc/openssl.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ domain-create
+ domain-delete
+ network-create
+ network-delete
+ ip-change
+ e-smith-base-update
+ ));
+
+# conf-routes
+event_link("update-ifcfg", "network-create", "05");
+event_link("update-ifcfg", "network-delete", "05");
+
+# conf-security
+
+templates2events("/etc/securetty", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/services", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/shells", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/hosts.deny", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/hosts.allow", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+foreach my $file (qw(
+ /etc/pam.d/login
+ /etc/pam.d/system-auth
+ /etc/pam.d/passwd
+ /etc/pam.d/pwauth
+ /etc/pam_ldap.conf
+ /etc/pam_ldap.secret
+ /etc/security/pam_abl.conf
+ ))
+{
+ templates2events($file, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+
+foreach (qw(
+ /etc/cpu.conf
+ /etc/cpu-system.conf
+ ))
+{
+ templates2events("$_", qw(
+ post-upgrade
+ console-save
+ bootstrap-console-save
+ ldap-update
+ e-smith-base-update
+ ));
+}
+
+# conf-userlists
+
+foreach (qw(users.allow accounts.allow accounts.deny))
+{
+ templates2events("/etc/e-smith/pam/$_", qw(
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ user-create
+ user-delete
+ password-modify
+ e-smith-base-update
+ ));
+}
+
+# fstab-conf
+
+templates2events("/etc/fstab", qw(post-install post-upgrade e-smith-base-update));
+
+# init-conf
+
+templates2events("/etc/inittab", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ remoteaccess-update
+ e-smith-base-update
+ ));
+
+# lynx-conf
+
+templates2events("/etc/lynx.cfg", qw(console-save bootstrap-console-save e-smith-base-update));
+templates2events("/etc/elinks.conf", qw(bootstrap-console-save e-smith-base-update));
+
+#
+# Set up generic logfile timestamp renaming/symlinking
+
+foreach (qw(
+ /var/log/messages
+ /var/log/boot.log
+ /var/log/secure
+ /var/log/cron
+ /var/log/spooler
+ /var/log/maillog
+ ))
+{
+ safe_touch "root/etc/e-smith/events/logrotate/logfiles2timestamp/$_";
+ safe_touch "root/etc/e-smith/events/post-install/logfiles2timestamp/$_";
+ safe_touch "root/etc/e-smith/events/post-upgrade/logfiles2timestamp/$_";
+ safe_touch "root/etc/e-smith/events/e-smith-base-update/logfiles2timestamp/$_";
+}
+
+#--------------------------------------------------
+# functions for manager panel
+#--------------------------------------------------
+my $panel = "manager";
+
+panel_link("groups", $panel);
+panel_link("localnetworks", $panel);
+panel_link("online-manual", $panel);
+panel_link("reboot", $panel);
+panel_link("remoteaccess", $panel);
+panel_link("review", $panel);
+panel_link("useraccounts", $panel);
+
+#--------------------------------------------------
+# actions for e-smith-base-update event
+#--------------------------------------------------
+my $event = "e-smith-base-update";
+
+
+templates2events("/etc/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+event_link("fix-startup", $event, "05");
+event_link("rotate_timestamped_logfiles", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("set-hostname", $event, "10");
+event_link("rmmod-bonding", $event, "10");
+event_link("conf-startup", $event, "10");
+event_link("user-lock-passwd", $event, "15");
+event_link("group-modify-unix", $event, "15");
+event_link("update-passwd", $event, "20");
+event_link("count-active-user-accounts", $event, "25");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+event_link("conf-routes", $event, "89");
+event_link("reset-unsavedflag", $event, "95")
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/wan");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyslog");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/crond");
+
+#--------------------------------------------------
+# actions for console-save event
+#--------------------------------------------------
+my $event = "console-save";
+
+
+templates2events("/etc/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+event_link("set-hostname", $event, "10");
+event_link("conf-modules", $event, "30");
+event_link("conf-startup", $event, "60");
+event_link("reset-unsavedflag", $event, "95");
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/wan");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+
+#--------------------------------------------------
+# actions for bootstrap-console-save event
+#--------------------------------------------------
+$event = "bootstrap-console-save";
+
+
+templates2events("/etc/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+event_link("rmmod-bonding", $event, "10");
+event_link("set-hostname", $event, "10");
+event_link("conf-modules", $event, "30");
+event_link("conf-startup", $event, "60");
+event_link("conf-routes", $event, "89");
+event_link("reset-unsavedflag", $event, "95");
+
+#--------------------------------------------------
+# actions for bootstrap-ldap-save
+#--------------------------------------------------
+$event = "bootstrap-ldap-save";
+
+templates2events("/etc/nsswitch.conf", $event);
+templates2events("/etc/pam.d/system-auth", $event);
+event_link("user-lock-passwd", $event, "15");
+event_link("user-modify-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for group-create event
+#--------------------------------------------------
+
+$event = "group-create";
+
+event_link("group-create-unix", $event, "04");
+
+#--------------------------------------------------
+# actions for group-delete event
+#--------------------------------------------------
+
+$event = "group-delete";
+
+event_link("group-delete-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for group-modify event
+#--------------------------------------------------
+
+$event = "group-modify";
+
+event_link("group-modify-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for halt event
+#--------------------------------------------------
+
+$event = "halt";
+
+event_link("halt", $event, "70");
+
+#--------------------------------------------------
+# actions for ip-change event
+#--------------------------------------------------
+
+$event = "ip-change";
+
+event_link("set-external-ip", $event, "03");
+event_link("update-dns", $event, "85");
+
+#--------------------------------------------------
+# actions for network-create event
+#--------------------------------------------------
+
+$event = "network-create";
+
+event_link("conf-routes", $event, "89");
+
+#--------------------------------------------------
+# actions for network-delete event
+#--------------------------------------------------
+
+$event = "network-delete";
+
+event_link("conf-routes", $event, "89");
+
+#--------------------------------------------------
+# actions for post-install event
+#--------------------------------------------------
+
+$event = "post-install";
+
+event_link("fix-startup", $event, "05");
+event_link("rotate_timestamped_logfiles", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("init-passwords", $event, "10");
+event_link("conf-startup", $event, "10");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+
+#--------------------------------------------------
+# actions for post-upgrade event
+#--------------------------------------------------
+
+$event = "post-upgrade";
+
+event_link("fix-startup", $event, "05");
+event_link("rotate_timestamped_logfiles", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("conf-startup", $event, "10");
+event_link("user-lock-passwd", $event, "15");
+event_link("group-modify-unix", $event, "15");
+event_link("update-passwd", $event, "20");
+event_link("count-active-user-accounts", $event, "25");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+event_link("copy-anaconda-logs", $event, "90");
+
+#--------------------------------------------------
+# actions for reboot event
+#--------------------------------------------------
+
+$event = "reboot";
+
+safe_symlink("stop", "root/etc/e-smith/events/$event/services2adjust/wan");
+event_link("reboot", $event, "99");
+
+#--------------------------------------------------
+# actions for remoteaccess-update event
+#--------------------------------------------------
+
+$event = "remoteaccess-update";
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+
+#--------------------------------------------------
+# actions for user-create event
+#--------------------------------------------------
+
+$event = "user-create";
+
+event_link("user-create-unix", $event, "04");
+event_link("count-active-user-accounts", $event, "25");
+event_link("user-group-modify", $event, "85");
+
+#--------------------------------------------------
+# actions for user-delete event
+#--------------------------------------------------
+
+$event = "user-delete";
+
+event_link("user-delete-groups-and-pseudonyms", $event, "02");
+event_link("user-delete-unix", $event, "15");
+event_link("initialize-default-databases", $event, "23");
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for user-modify event
+#--------------------------------------------------
+
+$event = "user-modify";
+
+event_link("user-modify-unix", $event, "15");
+event_link("user-group-modify", $event, "85");
+
+$event = "user-modify-admin";
+
+event_link("user-modify-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for user-lock event
+#--------------------------------------------------
+
+$event = "user-lock";
+
+event_link("user-lock-passwd", $event, "15");
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for password-modify event
+#--------------------------------------------------
+
+$event = "password-modify";
+
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for timeserver-update event
+#--------------------------------------------------
+
+$event = "timeserver-update";
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/crond");
+
+#--------------------------------------------------
+# actions for ip-up event
+#--------------------------------------------------
+
+$event = "ip-up";
+
+event_link("set-gateway-ip", $event, "55");
+
+#--------------------------------------------------
+# actions for ip-down event
+#--------------------------------------------------
+
+$event = "ip-down";
+
+event_link("isdn-down-notify", $event, "50");
+
+#--------------------------------------------------
+# actions for logrotate event
+#--------------------------------------------------
+
+$event = "logrotate";
+
+event_link("rotate_timestamped_logfiles", $event, "05");
+event_link("purge-old-logs", $event, "75");
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyslog");
+
+#--------------------------------------------------
+# actions for local event
+#--------------------------------------------------
+
+$event = "local";
+
+#--------------------------------------------------
+# actions for ldap-update event
+#--------------------------------------------------
+
+$event = "ldap-update";
+
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+
+#--------------------------------------------------
+# actions for ldap-update event
+#--------------------------------------------------
+
+$event = "ssl-update";
+
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+
+
+#--------------------------------------------------
+# actions for email-update event:
+# email parameters have been changed in the e-smith
+# manager; update system security, rewrite email config
+# files, configure other system files (crontab is the
+# important one), and restart server
+#--------------------------------------------------
+$event = "email-update";
+
+
+my %service2order =
+(
+ # Start rsyslog up before network!
+ raidmonitor => "15",
+ network => "37",
+ dhcpd => "65",
+ 'local' => "99",
+);
+
+foreach my $service (keys %service2order)
+{
+ service_link_enhanced($service, $service2order{$service}, 7);
+}
+
+%service2order =
+(
+ dhcpd => "K35",
+);
+
+foreach my $service (keys %service2order)
+{
+ service_link_enhanced($service, $service2order{$service}, 0);
+ service_link_enhanced($service, $service2order{$service}, 6);
+ service_link_enhanced($service, $service2order{$service}, 1);
+}
+
+# Set up links to daemontools.
+safe_symlink("daemontools", "root/etc/rc.d/init.d/raidmonitor");
+
+safe_symlink("run.dhclient", "root/var/service/wan/run.DHCPHostname");
+safe_symlink("run.dhclient", "root/var/service/wan/run.DHCPEthernetAddress");
+
+# Local event
+safe_symlink("../daemontools", "root/etc/rc.d/init.d/supervise/local");
+safe_symlink("/var/service/local" , 'root/service/local');
+safe_touch("root/var/service/local/down");
+
+# no template headers for /etc/pam_ldap.secret
+safe_touch("root/etc/e-smith/templates/etc/pam_ldap.secret/template-begin");
+
+
+system('mkdir -p root/usr/lib/systemd/system/multi-user.target.wants/');
+ unlink "root/usr/lib/systemd/system/multi-user.target.wants/bootstrap-console.service";
+symlink("/usr/lib/systemd/system/bootstrap-console.service",
+ "root/usr/lib/systemd/system/multi-user.target.wants/bootstrap-console.service")
+ or die "Can't symlink to root/usr/lib/systemd/system/multi-user.target.wants/bootstrap-console.service: $!";
+
+# languages links
+foreach (qw(fr-be fr-lu fr-mc fr-ch))
+{
+ safe_symlink("fr", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(en-bz en-ca en-ie en-in en-jm en-my en-ph en-sg en-tt en-za en-zw))
+{
+ safe_symlink("en-us", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(es-ar es-bo es-cl es-co es-cr es-do es-ec es-es es-gt es-hn es-mx es-ni es-pa es-pe es-pr es-py es-sv es-us es-uy es-ve))
+{
+ safe_symlink("es", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(de-at de-ch de-de de-li de-lu))
+{
+ safe_symlink("de", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(it-ch it-it))
+{
+ safe_symlink("it", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(ro-ro ro-md))
+{
+ safe_symlink("ro", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(sv-fi sv-se))
+{
+ safe_symlink("sv", "root/etc/e-smith/locale/$_");
+}
+safe_symlink("zh-tw", "root/etc/e-smith/locale/zh-hk");
diff --git a/contriborbase b/contriborbase
new file mode 100644
index 0000000..ef36a67
--- /dev/null
+++ b/contriborbase
@@ -0,0 +1 @@
+sme10
diff --git a/createlinks b/createlinks
new file mode 100755
index 0000000..3321a78
--- /dev/null
+++ b/createlinks
@@ -0,0 +1,724 @@
+#!/usr/bin/perl -w
+
+use esmith::Build::CreateLinks qw(:all);
+
+templates2events("/etc/sysconfig/i18n", qw(post-install post-upgrade e-smith-base-update));
+
+templates2events("/etc/selinux/config", qw(post-install post-upgrade e-smith-base-update));
+
+templates2events("/etc/systemd/system-preset/49-koozali.preset", qw(post-install post-upgrade e-smith-base-update console-save bootstrap-console-save bootstrap-ldap-save));
+
+# give the correct configuration file of dhcpd.conf
+templates2events("/etc/dhcp/dhcpd.conf", qw(bootstrap-console-save e-smith-base-update));
+
+# ppp-conf-users
+
+foreach (qw(pap-secrets chap-secrets))
+{
+ templates2events("/etc/ppp/$_", qw(
+ bootstrap-console-save
+ console-save
+ remoteaccess-update
+ e-smith-base-update));
+}
+
+foreach (qw(
+ /var/service/wan/pppoe.pppd.conf
+ /var/service/wan/run.pppoe.conf
+ /etc/ppp/ip-down.local
+ /etc/ppp/ip-up.local
+ ))
+{
+ templates2events("$_", qw(
+ console-save
+ bootstrap-console-save
+ e-smith-base-update
+ ));
+}
+
+# conf-dialup
+foreach (qw(
+ /etc/sysconfig/network-scripts/ifcfg-ppp0
+ /etc/sysconfig/network-scripts/chat-ppp0
+ /etc/ppp/ip-up.local
+ /etc/ppp/ip-down.local
+ /etc/diald.conf
+ /etc/diald.filter
+ /etc/diald/link
+ /var/service/ippp/config
+ /etc/ppp/ioptions
+ ))
+{
+ templates2events($_, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+
+# conf-networking
+
+foreach (qw(
+ /etc/sysconfig/network-scripts/ifcfg-bond0
+ /etc/modprobe.d/bonding.conf
+ /etc/sysconfig/network
+ /etc/nsswitch.conf
+ /etc/HOSTNAME
+ /etc/hosts
+ /etc/resolv.conf
+ /etc/sysctl.conf
+ /var/service/wan/dhclient.config
+ ))
+{
+ templates2events($_, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+event_link("update-ifcfg", "console-save", "05");
+event_link("update-ifcfg", "bootstrap-console-save", "05");
+
+# conf-other
+
+templates2events("/etc/crontab", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/mime.types", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/sysconfig/rsyslog", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/rsyslog.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/logrotate.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/systemd/journald.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ email-update
+ logrotate
+ e-smith-base-update
+ ));
+templates2events("/etc/updatedb.conf", qw(
+ bootstrap-console-save
+ e-smith-base-update
+));
+templates2events("/etc/openssl.conf", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ domain-create
+ domain-delete
+ network-create
+ network-delete
+ ip-change
+ e-smith-base-update
+ ));
+
+# conf-routes
+event_link("update-ifcfg", "network-create", "05");
+event_link("update-ifcfg", "network-delete", "05");
+
+# conf-security
+
+templates2events("/etc/securetty", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/services", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/shells", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/hosts.deny", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+templates2events("/etc/hosts.allow", qw(
+ console-save
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ ibay-modify
+ ibay-modify-servers
+ network-create
+ network-delete
+ ip-change
+ email-update
+ remoteaccess-update
+ e-smith-base-update
+ ));
+foreach my $file (qw(
+ /etc/pam.d/login
+ /etc/pam.d/system-auth
+ /etc/pam.d/passwd
+ /etc/pam.d/pwauth
+ /etc/pam_ldap.conf
+ /etc/pam_ldap.secret
+ /etc/security/pam_abl.conf
+ ))
+{
+ templates2events($file, qw(console-save bootstrap-console-save e-smith-base-update));
+}
+
+foreach (qw(
+ /etc/cpu.conf
+ /etc/cpu-system.conf
+ ))
+{
+ templates2events("$_", qw(
+ post-upgrade
+ console-save
+ bootstrap-console-save
+ ldap-update
+ e-smith-base-update
+ ));
+}
+
+# conf-userlists
+
+foreach (qw(users.allow accounts.allow accounts.deny))
+{
+ templates2events("/etc/e-smith/pam/$_", qw(
+ bootstrap-console-save
+ ibay-create
+ ibay-delete
+ user-create
+ user-delete
+ password-modify
+ e-smith-base-update
+ ));
+}
+
+# fstab-conf
+
+templates2events("/etc/fstab", qw(post-install post-upgrade e-smith-base-update));
+
+# init-conf
+
+templates2events("/etc/inittab", qw(
+ console-save
+ bootstrap-console-save
+ post-install
+ post-upgrade
+ remoteaccess-update
+ e-smith-base-update
+ ));
+
+# lynx-conf
+
+templates2events("/etc/lynx.cfg", qw(console-save bootstrap-console-save e-smith-base-update));
+templates2events("/etc/elinks.conf", qw(bootstrap-console-save e-smith-base-update));
+
+#--------------------------------------------------
+# functions for manager panel
+#--------------------------------------------------
+my $panel = "manager";
+
+panel_link("groups", $panel);
+panel_link("localnetworks", $panel);
+panel_link("online-manual", $panel);
+panel_link("reboot", $panel);
+panel_link("remoteaccess", $panel);
+panel_link("review", $panel);
+panel_link("useraccounts", $panel);
+
+#--------------------------------------------------
+# actions for e-smith-base-update event
+#--------------------------------------------------
+my $event = "e-smith-base-update";
+
+
+event_link("remove-templates-custom", $event, "02");
+templates2events("/etc/smartmontools/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $event);
+event_link("systemd-journald", $event, "02");
+event_link("fix-startup", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("logrotate-migrate", $event, "06");
+event_link("rotate_logfiles", $event, "07");
+event_link("set-hostname", $event, "10");
+event_link("rmmod-bonding", $event, "10");
+event_link("conf-startup", $event, "10");
+event_link("user-lock-passwd", $event, "15");
+event_link("group-modify-unix", $event, "15");
+event_link("user-rsshd", $event, "16");
+event_link("update-passwd", $event, "20");
+event_link("count-active-user-accounts", $event, "25");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+event_link("ldap-update" , $event, "80");
+event_link("conf-routes", $event, "89");
+event_link("systemd-default", $event, "88");
+event_link("systemd-isolate", $event, "89");
+event_link("systemd-reload", $event, "89");
+event_link("raidmonitor-check", $event, "92");
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/network");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/wan");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyslog");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/crond");
+
+#--------------------------------------------------
+# actions for console-save event
+#--------------------------------------------------
+my $event = "console-save";
+
+event_link("remove-templates-custom", $event, "02");
+templates2events("/etc/smartmontools/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $event);
+event_link("set-hostname", $event, "10");
+event_link("user-rsshd", $event, "16");
+event_link("conf-modules", $event, "30");
+event_link("conf-startup", $event, "60");
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+event_link("raidmonitor-check", $event, "92");
+event_link("reset-unsavedflag", $event, "95");
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/wan");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+
+#--------------------------------------------------
+# actions for bootstrap-console-save event
+#--------------------------------------------------
+$event = "bootstrap-console-save";
+
+event_link("remove-templates-custom", $event, "02");
+templates2events("/etc/smartmontools/smartd.conf", $event);
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $event);
+event_link("rmmod-bonding", $event, "10");
+event_link("set-hostname", $event, "10");
+event_link("conf-modules", $event, "30");
+event_link("conf-startup", $event, "60");
+event_link("systemd-default", $event, "88");
+event_link("conf-routes", $event, "89");
+event_link("systemd-reload", $event, "89");
+event_link("reset-unsavedflag", $event, "95");
+
+#--------------------------------------------------
+# actions for bootstrap-ldap-save
+#--------------------------------------------------
+$event = "bootstrap-ldap-save";
+
+templates2events("/etc/nsswitch.conf", $event);
+templates2events("/etc/pam.d/system-auth", $event);
+event_link("user-lock-passwd", $event, "15");
+event_link("user-modify-unix", $event, "15");
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+
+#--------------------------------------------------
+# actions for group-create event
+#--------------------------------------------------
+
+$event = "group-create";
+
+event_link("group-create-unix", $event, "04");
+
+#--------------------------------------------------
+# actions for group-delete event
+#--------------------------------------------------
+
+$event = "group-delete";
+
+event_link("group-delete-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for group-modify event
+#--------------------------------------------------
+
+$event = "group-modify";
+
+event_link("group-modify-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for halt event
+#--------------------------------------------------
+
+$event = "halt";
+
+event_link("halt", $event, "70");
+
+#--------------------------------------------------
+# actions for ip-change event
+#--------------------------------------------------
+
+$event = "ip-change";
+
+event_link("set-external-ip", $event, "03");
+#event_link("update-dns", $event, "85");
+
+#--------------------------------------------------
+# actions for network-create event
+#--------------------------------------------------
+
+$event = "network-create";
+
+event_link("conf-routes", $event, "89");
+
+#--------------------------------------------------
+# actions for network-delete event
+#--------------------------------------------------
+
+$event = "network-delete";
+
+event_link("conf-routes", $event, "89");
+
+#--------------------------------------------------
+# actions for post-install event
+#--------------------------------------------------
+
+$event = "post-install";
+
+templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $event);
+event_link("systemd-journald", $event, "02");
+event_link("fix-startup", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("rotate_logfiles", $event, "07");
+event_link("init-passwords", $event, "10");
+event_link("conf-startup", $event, "10");
+event_link("user-rsshd", $event, "16");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+
+#--------------------------------------------------
+# actions for post-upgrade event
+#--------------------------------------------------
+
+$event = "post-upgrade";
+
+event_link("remove-templates-custom", $event, "02");
+templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $event);
+event_link("systemd-journald", $event, "02");
+event_link("fix-startup", $event, "05");
+event_link("init-accounts", $event, "05");
+event_link("logrotate-migrate", $event, "06");
+event_link("rotate_logfiles", $event, "07");
+event_link("conf-startup", $event, "10");
+event_link("user-lock-passwd", $event, "15");
+event_link("group-modify-unix", $event, "15");
+event_link("user-rsshd", $event, "16");
+event_link("update-passwd", $event, "20");
+event_link("count-active-user-accounts", $event, "25");
+event_link("conf-modules", $event, "30");
+event_link("create-mnt-floppy", $event, "50");
+event_link("copy-anaconda-logs", $event, "90");
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+event_link("raidmonitor-check", $event, "92");
+
+#--------------------------------------------------
+# actions for reboot event
+#--------------------------------------------------
+
+$event = "reboot";
+
+safe_symlink("stop", "root/etc/e-smith/events/$event/services2adjust/wan");
+event_link("reboot", $event, "99");
+
+#--------------------------------------------------
+# actions for remoteaccess-update event
+#--------------------------------------------------
+
+$event = "remoteaccess-update";
+
+event_link("remove-templates-custom", $event, "02");
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/dhcpd");
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+
+#--------------------------------------------------
+# actions for user-create event
+#--------------------------------------------------
+
+$event = "user-create";
+
+event_link("user-create-unix", $event, "04");
+event_link("user-rsshd", $event, "16");
+event_link("count-active-user-accounts", $event, "25");
+event_link("user-group-modify", $event, "85");
+
+#--------------------------------------------------
+# actions for user-delete event
+#--------------------------------------------------
+
+$event = "user-delete";
+
+event_link("user-delete-groups-and-pseudonyms", $event, "02");
+event_link("user-delete-unix", $event, "15");
+event_link("initialize-default-databases", $event, "23");
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for user-modify event
+#--------------------------------------------------
+
+$event = "user-modify";
+
+event_link("user-modify-unix", $event, "15");
+event_link("user-rsshd", $event, "16");
+event_link("user-group-modify", $event, "85");
+
+$event = "user-modify-admin";
+
+event_link("user-modify-unix", $event, "15");
+
+#--------------------------------------------------
+# actions for user-lock event
+#--------------------------------------------------
+
+$event = "user-lock";
+
+event_link("user-lock-passwd", $event, "15");
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for password-modify event
+#--------------------------------------------------
+
+$event = "password-modify";
+
+event_link("count-active-user-accounts", $event, "25");
+
+#--------------------------------------------------
+# actions for timeserver-update event
+#--------------------------------------------------
+
+$event = "timeserver-update";
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/crond");
+
+#--------------------------------------------------
+# actions for ip-up event
+#--------------------------------------------------
+
+$event = "ip-up";
+
+event_link("set-gateway-ip", $event, "55");
+
+#--------------------------------------------------
+# actions for ip-down event
+#--------------------------------------------------
+
+$event = "ip-down";
+
+event_link("isdn-down-notify", $event, "50");
+
+#--------------------------------------------------
+# actions for logrotate event
+#--------------------------------------------------
+
+$event = "logrotate";
+
+event_link("logrotate-migrate", $event, "06");
+event_link("rotate_logfiles", $event, "07");
+event_link("purge-old-logs", $event, "75");
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyslog");
+
+#--------------------------------------------------
+# actions for local event
+#--------------------------------------------------
+
+$event = "local";
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rc-local");
+
+#--------------------------------------------------
+# actions for ldap-update event
+#--------------------------------------------------
+
+$event = "ldap-update";
+
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+
+#--------------------------------------------------
+# actions for ldap-update event
+#--------------------------------------------------
+
+$event = "ssl-update";
+
+templates2events("/home/e-smith/ssl.pem/pem", $event);
+
+
+#--------------------------------------------------
+# actions for email-update event:
+# email parameters have been changed in the e-smith
+# manager; update system security, rewrite email config
+# files, configure other system files (crontab is the
+# important one), and restart server
+#--------------------------------------------------
+$event = "email-update";
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+
+#--------------------------------------------------
+# actions for webapps-update event
+#--------------------------------------------------
+
+$event = "webapps-update";
+event_link("systemd-default", $event, "88");
+event_link("systemd-reload", $event, "89");
+
+
+# Set up links to daemontools.
+
+safe_symlink("run.dhclient", "root/var/service/wan/run.DHCPHostname");
+safe_symlink("run.dhclient", "root/var/service/wan/run.DHCPEthernetAddress");
+
+
+# no template headers for /etc/pam_ldap.secret
+safe_touch("root/etc/e-smith/templates/etc/pam_ldap.secret/template-begin");
+
+
+foreach my $target (qw(multi-user sme-server))
+{
+system('mkdir -p root/usr/lib/systemd/system/'.$target.'.target.wants/');
+ unlink "root/usr/lib/systemd/system/$target.target.wants/bootstrap-console.service";
+
+foreach my $unit (qw(
+ dbus.service
+ getty.target
+ plymouth-quit.service
+ plymouth-quit-wait.service
+ systemd-ask-password-wall.path
+ systemd-logind.service
+ systemd-update-utmp-runlevel.service
+ systemd-user-sessions.service
+ networking.service
+ mdmonitor.service
+ ))
+ {
+ symlink("../$unit",
+ "root/usr/lib/systemd/system/$target.target.wants/$unit")
+ or die "Can't symlink to root/usr/lib/systemd/system/$target.target.wants/$unit: $!";
+ }
+}
+
+foreach my $target (qw(halt reboot shutdown))
+{
+ $unit="bootstrap-fix.service";
+ safe_symlink("../$unit", "root/usr/lib/systemd/system/$target.target.wants/$unit");
+}
+
+$unit="bootstrap-console.service";
+$target="basic";
+symlink("../$unit",
+ "root/usr/lib/systemd/system/$target.target.wants/$unit")
+ or die "Can't symlink to root/usr/lib/systemd/system/$target.target.wants/$unit: $!";
+
+symlink("mdmonitor.service",
+ "root/usr/lib/systemd/system/raidmonitor.service");
+
+# languages links
+foreach (qw(fr-be fr-lu fr-mc fr-ch))
+{
+ safe_symlink("fr", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(en-bz en-ca en-ie en-in en-jm en-my en-ph en-sg en-tt en-za en-zw))
+{
+ safe_symlink("en-us", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(es-ar es-bo es-cl es-co es-cr es-do es-ec es-es es-gt es-hn es-mx es-ni es-pa es-pe es-pr es-py es-sv es-us es-uy es-ve))
+{
+ safe_symlink("es", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(de-at de-ch de-de de-li de-lu))
+{
+ safe_symlink("de", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(it-ch it-it))
+{
+ safe_symlink("it", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(ro-ro ro-md))
+{
+ safe_symlink("ro", "root/etc/e-smith/locale/$_");
+}
+foreach (qw(sv-fi sv-se))
+{
+ safe_symlink("sv", "root/etc/e-smith/locale/$_");
+}
+safe_symlink("zh-tw", "root/etc/e-smith/locale/zh-hk");
+
+
+# sme-server.target.d links
+safe_symlink("/etc/e-smith/templates/etc/systemd/system-preset/49-koozali.preset/05config", "root/etc/e-smith/templates/usr/lib/systemd/system/sme-server.target.d/50koozali.conf/05config");
diff --git a/e-smith-base.spec b/e-smith-base.spec
new file mode 100644
index 0000000..bcddc0e
--- /dev/null
+++ b/e-smith-base.spec
@@ -0,0 +1,2315 @@
+# $Id: e-smith-base.spec,v 1.153 2023/08/14 18:55:09 jpp Exp $
+
+Summary: e-smith server and gateway - base module
+%define name e-smith-base
+Name: %{name}
+%define version 5.8.1
+%define release 30
+Version: %{version}
+Release: %{release}%{?dist}
+License: GPL
+Group: Networking/Daemons
+Source: %{name}-%{version}.tar.xz
+#keeping this one for SME11
+# Patch: e-smith-base-5.8.1-bz11772-ellipticcert.patch
+
+BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot
+Requires: pwauth
+Requires: e-smith-lib >= 2.2.0-2
+Requires: server-manager-images, server-manager
+Requires: e-smith-formmagick >= 1.4.0-12
+Requires: initscripts >= 6.67-1es17
+Requires: e-smith-daemontools >= 1.7.1-04
+Requires: perl(Locale::gettext)
+Requires: perl(Crypt::Cracklib)
+Requires: perl(Date::Manip)
+Requires: perl(Net::IPv4Addr)
+Requires: perl(Digest::SHA1)
+Requires: perl(Net::Netmask)
+Requires: /usr/sbin/irqbalance
+Requires: /usr/sbin/smartd
+Requires: dbus
+Requires: acpid
+Requires: rssh
+Requires: bridge-utils
+Requires: vconfig
+Requires: e-smith-bootloader
+Requires: mdadm
+Requires: pv
+Requires: dhcp
+Requires: diald
+Requires: /usr/bin/passwd
+Requires: nss-pam-ldapd
+Requires: uuid-perl
+Requires: kbd
+Requires: bash-completion
+Requires: bash-completion-extras
+Requires: e-smith-runit >= 2.6.0-7
+Requires: smeserver-php >= 3.0.0-22
+Requires: smeserver-yum >= 2.6.0-43
+Obsoletes: nss_ldap < 254
+Requires: cpu >= 1.4.3
+Obsoletes: rlinetd, e-smith-mod_ssl
+Obsoletes: e-smith-serial-console
+Obsoletes: sshell
+Obsoletes: e-smith-rp-pppoe
+Obsoletes: e-smith-pptpd
+Obsoletes: e-smith-dynamicdns-yi
+Obsoletes: e-smith-dynamicdns-tzo
+Obsoletes: e-smith-dynamicdns-dyndns.org
+Obsoletes: e-smith-dynamicdns-dyndns
+BuildRequires: perl, perl(Test::Inline) >= 0.12
+BuildRequires: e-smith-devtools >= 1.13.1-03
+BuildRequires: gettext
+Requires: gdisk
+
+%define dbfiles accounts configuration domains hosts networks
+AutoReqProv: no
+
+%description
+e-smith server and gateway software - base module.
+
+%prep
+%setup
+
+%build
+
+LEXICONS=$(find root/etc/e-smith/web/functions -type f| grep -v CVS)
+
+for lexicon in $LEXICONS
+do
+ /sbin/e-smith/validate-lexicon $lexicon
+done
+
+/sbin/e-smith/generate-lexicons
+
+xgettext -L perl -o root/usr/share/locale/en_US/LC_MESSAGES/server-console.po root/sbin/e-smith/console.pl
+
+perl createlinks
+/sbin/e-smith/buildtests 10e-smith-base
+
+gcc -o root/sbin/e-smith/console console_wrapper.c
+
+# Force creation of potentially empty directories
+mkdir -p root/etc/e-smith/web/panels/password/cgi-bin
+ln -s ../../../functions/wrapper root/etc/e-smith/web/panels/password/cgi-bin/userpassword
+
+%install
+rm -rf $RPM_BUILD_ROOT
+mkdir -p $RPM_BUILD_ROOT/etc/selinux
+(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
+/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
+ --file /sbin/e-smith/systemd/mdmonitor-pre 'attr(0554,root,root)' \
+ --file /sbin/e-smith/systemd/rsyslog-pre 'attr(0554,root,root)' \
+ --file /etc/cron.daily/conf-mod_ssl 'attr(0544,root,root)' \
+ --file /etc/dhcp/dhclient-exit-hooks 'attr(0755,root,root)' \
+ --dir /var/log/dhcpd 'attr(2750,smelog,smelog)' \
+ --dir /etc/e-smith/pam 'attr(0700,root,root)' \
+ --dir /home/e-smith/ssl.key 'attr(0700,root,root)' \
+ --dir /home/e-smith/ssl.crt 'attr(0700,root,root)' \
+ --dir /home/e-smith/ssl.pem 'attr(0700,root,root)' \
+ --dir /var/service/wan 'attr(1755,root,root)' \
+ --file /var/service/wan/down 'attr(0644,root,root)' \
+ --file /var/service/wan/run 'attr(0750,root,root)' \
+ --file /var/service/wan/run.dhclient 'attr(0750,root,root)' \
+ --file /var/service/wan/run.pppoe 'attr(0750,root,root)' \
+ --file /var/service/wan/run.static 'attr(0750,root,root)' \
+ --file /var/service/wan/run.dialup 'attr(0750,root,root)' \
+ --file /var/service/wan/run.disabled 'attr(0750,root,root)' \
+ --dir /var/service/wan/supervise 'attr(0700,root,root)' \
+ --dir /var/service/wan/log 'attr(1755,root,root)' \
+ --file /var/service/wan/log/run 'attr(0750,root,root)' \
+ --dir /var/service/wan/log/supervise 'attr(0700,root,root)' \
+ --dir /var/log/wan 'attr(2750,smelog,smelog)' \
+ --dir /var/service/ippp 'attr(1755,root,root)' \
+ --file /var/service/ippp/down 'attr(0644,root,root)' \
+ --file /var/service/ippp/run 'attr(0750,root,root)' \
+ --dir /var/service/ippp/supervise 'attr(0700,root,root)' \
+ --dir /var/service/ippp/log 'attr(1755,root,root)' \
+ --file /var/service/ippp/log/run 'attr(0750,root,root)' \
+ --dir /var/service/ippp/log/supervise 'attr(0700,root,root)' \
+ --dir /var/log/ippp 'attr(2750,smelog,smelog)' \
+ --dir /etc/e-smith/skel/user/.ssh 'attr(0700,root,root)' \
+ --file /etc/sysconfig/modules/dummy.modules 'attr(0755,root,root)' \
+ --dir /etc/selinux 'attr(0755,root,root)' \
+ | sed -e '/\/etc\/dhcp$/d' \
+ > %{name}-%{version}-%{release}-filelist
+
+mkdir -p $RPM_BUILD_ROOT/home/e-smith/db
+for file in %{dbfiles}
+do
+ # Create ghost file for rpm
+ touch $RPM_BUILD_ROOT/home/e-smith/db/$file
+ echo "%config(noreplace) %attr(0640,root,admin) /home/e-smith/db/$file" \
+ >> %{name}-%{version}-%{release}-filelist
+done
+echo "%doc COPYING" >> %{name}-%{version}-%{release}-filelist
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files -f %{name}-%{version}-%{release}-filelist
+%defattr(-,root,root)
+
+%pre
+/sbin/e-smith/create-system-user smelastsys 2999 \
+ 'sme last system user marker' /tmp /bin/false
+
+%post
+LEXICONS=$(find /etc/e-smith/locale/*/etc/e-smith/web/panels/password/cgi-bin/userpassword -type f 2>/dev/null)
+
+for lexicon in $LEXICONS
+do
+ if [ -f $lexicon ]
+ then
+ cd $(dirname "$lexicon")
+ mv ./userpassword ../../../functions
+ fi
+done
+
+if [ -d "/var/service/dhcpd" ]; then
+ rm -rf /var/service/dhcpd
+fi
+if [ -d "/var/service/raidmonitor" ]; then
+ rm -rf /var/service/raidmonitor
+fi
+if [ -d "/var/service/local" ]; then
+ rm -rf /var/service/local
+fi
+
+
+%changelog
+* Thu Oct 26 2023 cvs2git.sh aka Brian Read 5.8.1-30.sme
+- Roll up patches and move to git repo [SME: 12338]
+
+* Thu Oct 26 2023 BogusDateBot
+- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
+ by assuming the date is correct and changing the weekday.
+
+* Mon Aug 14 2023 Jean-Philippe Pialasse 5.8.1-29.sme
+- fix systemd loop during bootstrap console restore [SME: 12335]
+
+* Thu Feb 09 2023 Jean-Philippe Pialasse 5.8.1-28.sme
+- option to expand the prunepaths variable for locate [SME: 11518]
+
+* Wed Feb 08 2023 Zsolt Vasarhelyi 5.8.1-27.sme
+- Logging stops to messages - imjournal: too many open files [SME: 12304]
+
+* Mon Feb 06 2023 Jean-Philippe Pialasse 5.8.1-26.sme
+- ldap not available at bootstrap [SME: 12178]
+
+* Sun Feb 05 2023 Jean-Philippe Pialasse 5.8.1-25.sme
+- fix raidmonitor not starting [SME: 12182]
+
+* Thu Dec 29 2022 Brianb Read 5.8.1-24.sme
+- DHCPD set DNSServers [SME: 12295]
+
+* Mon Dec 12 2022 Terry Fage 5.8.1-23.sme
+- DHCP Not working since last updates [SME: 12257]
+
+* Sun Dec 04 2022 Jean-Philippe Pialasse 5.8.1-22.sme
+- do not launch bootstrap-runlevel7 if no sysvinit service available [SME: 12253]
+
+* Thu Nov 24 2022 Jean-Philippe Pialasse 5.8.1-21.sme
+- fix typo [SME: 12190]
+
+* Tue Nov 22 2022 Jean-Philippe Pialasse 5.8.1-20.sme
+- expand dropin for dhcp unit [SME: 12183]
+- add PartOf=networking.service to wan.service [SME: 12195]
+- reduce imjournal rate-limiting [SME: 12175]
+
+* Tue Nov 22 2022 Jean-Philippe Pialasse 5.8.1-19.sme
+- fix smartd not running because config path has changed [SME: 12190]
+- do not check disk is in standby
+
+* Fri Sep 09 2022 Jean-Philippe Pialasse 5.8.1-18.sme
+- fix comparison operator for logrotate fix [SME: 11950]
+ changing also restart to reload [SME: 12164]
+
+* Fri Jul 29 2022 Jean-Philippe Pialasse 5.8.1-17.sme
+- no new self signed cert when adding/removing non self hosts [SME: 12130]
+
+* Sun Jun 19 2022 Jean-Philippe Pialasse 5.8.1-16.sme
+- fix /dev/log not being recreated [SME: 12073]
+
+* Sun Apr 17 2022 Jean-Philippe Pialasse 5.8.1-15.sme
+- add rsshusers group to ldap and update it [SME: 11956]
+
+* Sat Apr 16 2022 Jean-Philippe Pialasse 5.8.1-14.sme
+- fix symlinks preventing log rotation [SME: 11950]
+
+* Sat Apr 16 2022 Jean-Philippe Pialasse 5.8.1-12.sme
+- remove immark module to reduce messages log activity [SME: 11813]
+
+* Fri Apr 15 2022 Jean-Philippe Pialasse 5.8.1-11.sme
+- fix logs not rotated before 100M (size maxsize) [SME: 10484]
+- reduce systemd noise in messages [SME: 11813]
+
+* Mon Apr 04 2022 Jean-Philippe Pialasse 5.8.1-10.sme
+- fix dhcp address not propagated [SME: 11930]
+
+* Thu Feb 17 2022 Jean-Philippe Pialasse 5.8.1-8.sme
+- make rsyslog listen journald which listen /dev/log [SME: 11813]
+ template for /etc/systemd/journald.conf
+- properly configure /etc/logrotate.conf [SME: 10484]
+ template for /etc/logrotate.conf
+ use of size to limit max size of file and rotate earlier
+- drop e-smith logrotate actions creating dangling links [SME: 946]
+
+* Mon Dec 20 2021 Jean-Philippe Pialasse 5.8.1-6.sme
+- make journald log permanent by creating /var/log/journal [SME: 11795]
+
+* Tue Nov 23 2021 Jean-Philippe Pialasse 5.8.1-4.sme
+- allow group-modify-unix on update event [SME: 11766]
+
+* Mon Nov 15 2021 Jean-Philippe Pialasse 5.8.1-3.sme
+- fix typo in last patch [SME: 11722]
+
+* Wed Oct 27 2021 Jean-Philippe Pialasse 5.8.1-2.sme
+- add support for systemd service with instance service@instance.service [SME: 11722]
+
+* Sun Jun 06 2021 Jean-Philippe Pialasse 5.8.1-1.sme
+- add local domains in self signed cert alt subjects [SME: 11624]
+ add local hosts in self signed cert alt subjects
+ modSSL property to disable hosts domains addition : AddDomains AddHosts
+ default is enabled when empty
+
+* Fri Jun 04 2021 Jean-Philippe Pialasse 5.8.0-99.sme
+- fix missing export [SME: 11620]
+
+* Tue Jun 01 2021 Jean-Philippe Pialasse 5.8.0-97.sme
+- fix issue with adding new user to the ldap db [SME: 11607]
+
+* Tue Jun 01 2021 Jean-Philippe Pialasse 5.8.0-96.sme
+- always renew self signed certificate [SME: 11552]
+ update key / crt if not signed with the right key size
+ default to self signed if custom cert and key are not files or not rigth type
+ add perl module to help handle certificates and keys
+ TODO: check if both key and cert are related, if not default to self signed
+
+* Wed Apr 21 2021 Jean-Philippe Pialasse 5.8.0-95.sme
+- fix openssl.conf not generated when openldap field are empty [SME: 11569]
+
+* Thu Apr 08 2021 Jean-Philippe Pialasse 5.8.0-94.sme
+- fix missing path to systemctl for add-wants [SME: 11537]
+
+* Tue Mar 30 2021 Jean-Philippe Pialasse 5.8.0-93.sme
+- merge dhcpdmanager custom template fragments with core [SME: 10657]
+- remove templates-custom previously owned by a contrib [SME: 11508]
+ they got migrated as part as normal backup restore
+
+* Sun Mar 21 2021 Jean-Philippe Pialasse 5.8.0-92.sme
+- fix masq failing on initial boot [SME: 11479]
+
+* Fri Mar 19 2021 Jean-Philippe Pialasse 5.8.0-91.sme
+- removing weekly cron for ddns update, targeted script has been removed [SME: 11470]
+
+* Thu Mar 18 2021 Jean-Philippe Pialasse 5.8.0-90.sme
+- revert e-smith-service file [SME: 9692]
+- add systemctl wrapper [SME: 11345]
+
+* Tue Mar 16 2021 Jean-Philippe Pialasse 5.8.0-89.sme
+- clean rsyslog syntax for dhcpd [SME: 11422]
+
+* Tue Mar 16 2021 Jean-Philippe Pialasse 5.8.0-88.sme
+- cleanup /etc/rc.d and /var/service [SME: 9692]
+
+* Wed Mar 03 2021 Jean-Philippe Pialasse 5.8.0-87.sme
+- remove klogd references [SME: 11363]
+- restore part of pptp code and move to generik vpn entry [SME: 11374]
+
+* Wed Mar 03 2021 Jean-Philippe Pialasse 5.8.0-85.sme
+- drop dyndns core support [SME: 11415]
+
+* Thu Feb 18 2021 Jean-Philippe Pialasse 5.8.0-84.sme
+- fix enabled service not started on reboot [SME: 11355]
+ unless a power outage, as long as you reboot, halt or shutdown systemd will
+ be in sync
+- fix console::startup run twice [SME: 11358 ]
+- improve run order in systemd-default [SME: 11356]
+
+* Wed Feb 17 2021 Jean-Philippe Pialasse 5.8.0-83.sme
+- fix uninitialized value during post-install [SME: 11350]
+
+* Sun Feb 14 2021 Jean-Philippe Pialasse 5.8.0-81.sme
+- fix user with rssh shell need to be member of rsshusers group [SME: 9155]
+
+* Fri Feb 12 2021 Jean-Philippe Pialasse 5.8.0-80.sme
+- add missing /sbin/e-smith/bootstrap-runlevel7 [SME: 11318]
+
+* Mon Jan 11 2021 Jean-Philippe Pialasse 5.8.0-79.sme
+- fix typo for isolate [SME: 11246]
+
+* Mon Jan 11 2021 Jean-Philippe Pialasse 5.8.0-78.sme
+- separate bootstrap-console from run level service launch [SME: 11318]
+
+* Fri Jan 08 2021 Jean-Philippe Pialasse 5.8.0-75.sme
+- only run isolate if sme-server.target is not active [SME: 11246]
+- update system-preset usr/lib file [SME: 10958]
+
+* Wed Jan 06 2021 Jean-Philippe Pialasse 5.8.0-72.sme
+- fix loss of httpd basic auth [SME: 11309]
+
+* Fri Dec 25 2020 Jean-Philippe Pialasse 5.8.0-71.sme
+- fix services starting when they are in Wants= for sme-server.target and preset disabled [SME: 11247]
+
+* Wed Dec 23 2020 Chris Sansom-Ninnes 5.8.0-70.sme
+- rewrite of manageRAID.pl and add_drive_to_raid for SME10 [SME:10918]
+- added gdisk as a dependency to support GPT systems
+
+* Fri Dec 11 2020 Jean-Philippe Pialasse 5.8.0-69.sme
+- fix modSSL key crt and keychain files really exist [SME: 11252]
+- add ldap.init as exception for preset
+
+* Fri Dec 11 2020 Jean-Philippe Pialasse 5.8.0-68.sme
+- fix init-accounts [SME: 9642]
+
+* Fri Dec 11 2020 Jean-Philippe Pialasse 5.8.0-67.sme
+- validate modSSL key crt and keychain files really exist [SME: 11252]
+ if not we use self generated
+
+* Fri Dec 11 2020 Jean-Philippe Pialasse 5.8.0-66.sme
+- drop pptpd support [SME: 11250]
+
+* Wed Dec 09 2020 Jean-Philippe Pialasse 5.8.0-65.sme
+- add bash-completion [SME: 11244]
+- improve local service to systemd [SME: 11119]
+ now run rc.local file as part of the event
+
+* Wed Dec 09 2020 Jean-Philippe Pialasse 5.8.0-64.sme
+- move local service to systemd [SME: 11119]
+ make it run /etc/rc.d/rc.local
+ cleaning /var/service/syslog still there
+
+* Sat Dec 05 2020 Jean-Philippe Pialasse 5.8.0-63.sme
+- workaround drop-in install section ignored by systemctl preset [SME: 11231]
+ some cleanup
+
+* Thu Dec 03 2020 Jean-Philippe Pialasse 5.8.0-61.sme
+- remove S95reset-unsavedflag [SME: 11229]
+- add exclusion for lpd [SME: 11006]
+
+* Thu Dec 03 2020 Jean-Philippe Pialasse 5.8.0-60.sme
+- execute systemd-reload before service adjust in events [SME: 11228]
+
+* Tue Dec 01 2020 Jean-Philippe Pialasse 5.8.0-59.sme
+- fix ExecStart for raidmonitor [SME: 11094]
+
+* Sun Nov 29 2020 Jean-Philippe Pialasse 5.8.0-58.sme
+- fix permission for /sbin/e-smith/systemd/mdmonitor-pre [SME: 11094]
+
+* Wed Nov 25 2020 Chris Sansom-Ninnes 5.8.0-57.sme
+- Don't ask for confirmation to save changes on first install configuration [SME: 11193]
+
+* Wed Nov 25 2020 Chris Sansom-Ninnes 5.8.0-56.sme
+- Fix RAID detection regex for disk redundancy screen [SME: 10918]
+
+* Wed Nov 18 2020 Jean-Philippe Pialasse 5.8.0-55.sme
+- add Install part of systemd unit [SME: 11100]
+
+* Tue Nov 17 2020 Jean-Philippe Pialasse 5.8.0-54.sme
+- move dhcpd to systemd [SME: 11100]
+- get dhcpd log out of message [SME: 2408]
+ also configure logrotate for /var/log/dhcpd/dhcpd.log and /var/log/dhcpd/current
+
+* Tue Nov 17 2020 Jean-Philippe Pialasse 5.8.0-53.sme
+- reverte previous changes for service2adjust and util.pm [SME: 11177]
+ files are owned by e-smith-lib
+
+* Mon Nov 16 2020 Jean-Philippe Pialasse 5.8.0-52.sme
+- allow more systemctl controls [SME: 11177]
+ convert unrecognized signals from service2adjust in events for systemd
+ handle unsupervised services the same way supervised were in adjust-services
+ make service-status only log when service disabled and not fail it
+
+* Sat Nov 14 2020 Jean-Philippe Pialasse 5.8.0-51.sme
+- add template for /etc/systemd/system-preset/49koozali.preset [SME: 11174]
+ this will help systemd integration in enabling and disabling services
+ remove wan link
+
+* Wed Nov 11 2020 Jean-Philippe Pialasse 5.8.0-50.sme
+- move raidmonitor to systemd [SME: 11094]
+
+* Tue Nov 10 2020 Jean-Philippe Pialasse 5.8.0-49.sme
+- move network service to systemd [SME: 11090]
+- move wan service to systemd [SME: 11091]
+
+* Wed Sep 30 2020 Jean-Philippe Pialasse 5.8.0-48.sme
+- create e-smith-base-update event [SME: 11012]
+- create sme-server.target [SME: 10957]
+ make sme-server.target default target
+ change default target on signal-event post-upgrade, post-install, e-smith-base-update
+ requires update or smeserver-php and e-smith-runit
+- add an executable to check if service is enabled in e-smith db
+
+* Sat Jun 27 2020 Jean-Philippe Pialasse 5.8.0-47.sme
+- validate submask on remote access panel [SME: 6536]
+ accept netmask bit and convert it
+- validate subnet mask on local network panel [SME: 10974]
+ accept netmask bit and convert it
+
+* Tue Jun 23 2020 Jean-Philippe Pialasse 5.8.0-45.sme
+- remove info.txt [SME: 9590]
+
+* Sun May 24 2020 Jean-Philippe Pialasse 5.8.0-44.sme
+- wildcard self-signed certificate [SME: 8156]
+ * ip in self-signed certificate
+ * subject altname in self-signed certificate
+ * ability to define Country code and State using
+ modSSL{Country} and modSSL{State} properties
+ * /etc/openssl.conf is used now and templated for self-signed certificate
+
+* Sat May 23 2020 Jean-Philippe Pialasse 5.8.0-43.sme
+- enable smartd for existing installation [SME: 5890]
+
+* Sun May 17 2020 Chris Sansom-Ninnes 5.8.0-42.sme
+- Enable smartd by default [SME: 5890]
+- Credit to Chris Burnat
+
+* Wed Dec 18 2019 Michel Begue 5.8.0-41.sme
+- Add a link to manager C wrapper to execute userpassword's cgi to replace perl-suid [SME: 9677]
+
+* Fri Nov 22 2019 John Crisp 5.8.0-40.sme
+- fix SystemName [SME: 8876]
+
+* Tue Jan 22 2019 Jean-Philippe Pialasse 5.8.0-39.sme
+- modify the default city and company [SME: 10715]
+
+* Tue Feb 13 2018 Jean-Philippe Pialasse 5.8.0-38.sme
+- cleaning xinetd.conf fragment out of the package [SME: 10219]
+
+* Wed Nov 15 2017 Jean-Philippe Pialasse 5.8.0-37.sme
+- revert previous change - wrong package
+
+* Tue Nov 14 2017 Jean-Philippe Pialasse 5.8.0-36.sme
+- added post transaction rule for ntp [SME: 10190]
+- thank you to Stefano Zamboni for this work
+
+* Thu May 4 2017 Daniel Berteaud 5.8.0-35.sme
+- Expand route-bond0 when nic bonding is enabled [SME: 10272]
+
+* Sat Apr 15 2017 Jean-Philippe Pialasse 5.8.0-34.sme
+- improve regex to catch local [SME: 9724]
+
+* Wed Apr 12 2017 Jean-Philippe Pialasse 5.8.0-33.sme
+- change smtpd to qpsmtpd for default service access [SME: 9478]
+
+* Mon Feb 27 2017 Jean-Philippe Pialasse 5.8.0-32.sme
+- add translation links for manager to most language variations we support [SME: 11121]
+
+* Fri Feb 17 2017 Jean-Philippe Pialasse 5.8.0-31.sme
+- prevent restoration from being called on regular and post-upgrade reboot [SME: 9550]
+- console restoration can be launched again from console
+
+* Thu Feb 9 2017 Daniel Berteaud 5.8.0-30.sme
+- Use ip route syntax to define routes to local network [SME: 10083]
+
+* Tue Sep 6 2016 Daniel Berteaud 5.8.0-29.sme
+- Allow /32 masks on the external interface, in which case we don't
+ check if the gateway is on the correct network) [SME: 9610]
+
+* Thu Aug 04 2016 Jean-Philippe Pialasse 5.8.0-28.sme
+- fix config db locale property [SME: 9724]
+
+* Sat Jul 23 2016 Jean-Philippe Pialasse 5.8.0-27.sme
+- adapt e-smith service command to systemd [SME: 9672]
+
+* Fri Jul 22 2016 Jean-Philippe Pialasse 5.8.0-26.sme
+- add systemd skip redirect to e-smith-service [SME: 9688]
+
+* Thu Jul 21 2016 Jean-Philippe Pialasse 5.8.0-25.sme
+- fix broken link /etc/init.d/supervise/local link [SME: 9687]
+
+* Mon Jul 18 2016 Jean-Philippe Pialasse 5.8.0-22.sme
+- fix mysqld to mariadb [SME: 9438]
+
+* Sat Jul 16 2016 Jean-Philippe Pialasse 5.8.0-21.sme
+- fix missing path to chkconfig [SME: 9641]
+
+* Thu Jul 14 2016 stephane de Labrusse 5.8.0-20.sme
+- Fix deprecated syntax '*' in rsyslog [SME: 9398]
+- Added e-smith-base-5.8.0.bz9398.DeprecatedRsyslogSyntax.patch
+
+* Mon Jul 4 2016 stephane de Labrusse 5.8.0-19.sme
+- Set the hostname by hostnamectl [SME: 9631]
+- Stefano Zamboni
+
+* Sun Jun 12 2016 Jean-Philippe Pialasse 5.8.0-18.sme
+- fix Lang and keyboard layout configured are not used [SME: 9539]
+
+* Thu Jun 2 2016 Daniel Berteaud 5.8.0-17.sme
+- Fix display of email forward fields since smtpd entry has been merged
+ qpsmtpd [SME: 9552]
+
+* Sun May 29 2016 Jean-Philippe Pialasse 5.8.0-16.sme
+- Allow bootstrap to start services after post-install configuration [SME: 9530]
+
+* Thu May 12 2016 Daniel Berteaud 5.8.0-15.sme
+- Use a C wrapper for the console to replace perl-suid [SME: 9393]
+
+* Wed Apr 13 2016 Jean-Philippe Pialasse 5.8.0-14.sme
+- fix password not asked after signal-event post-install [SME: 9445]
+
+* Wed Apr 13 2016 Jean-Philippe Pialasse 5.8.0-13.sme
+- only start services on regular boot [SME: 9436]
+
+* Tue Apr 12 2016 Jean-Philippe Pialasse 5.8.0-12.sme
+- fix getting locale for db configuration [SME: 9378]
+
+* Mon Apr 11 2016 Jean-Philippe Pialasse 5.8.0-11.sme
+- rearange startup [SME: 9352]
+- let systemd handle following unsupervised services:
+- bootstrap-console, rsyslog, irqbalance, crond, acpid, smartd
+- disable from systemd services whith link in rc7.d
+- let bootstrap-console run at every reboot and handle surpevised services startup
+
+* Mon Apr 11 2016 Daniel Berteaud 5.8.0-9.sme
+- Remove ctrlaltdel service entry [SME: 9437]
+
+* Mon Apr 11 2016 Daniel Berteaud 5.8.0-8.sme
+- Remove obsolete services [SME: 9420]
+
+* Tue Mar 29 2016 Jean-Philippe Pialasse 5.8.0-7.sme
+- added requires dhcp [SME: 9392]
+
+* Wed Mar 23 2016 Jean-Philippe Pialasse 5.8.0-6.sme
+- add Requires perl(Digest::SHA1) for console [SME: 9372]
+
+* Fri Mar 18 2016 Jean-Philippe Pialasse 5.8.0-5.sme
+- fix conflict perl-Data-UUID vs uuid-perl [SME: 9344]
+
+* Fri Mar 18 2016 Jean-Philippe Pialasse 5.8.0-3.sme
+- remove cpuspeed Requires and support [SME: 9337]
+- remove pam_abl Requires [SME: 9341]
+
+* Fri Mar 18 2016 Jean-Philippe Pialasse 5.8.0-2.sme
+- Remove Requires: hal [SME: 9342]
+- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
+ by assuming the date is correct and changing the weekday.
+ Sat Dec 25 2005 --> Sat Dec 24 2005 or Sun Dec 25 2005 or Sat Dec 31 2005 or ....
+ Mon Feb 21 2006 --> Mon Feb 20 2006 or Tue Feb 21 2006 or Mon Feb 27 2006 or ....
+ Sat Mar 07 2008 --> Sat Mar 01 2008 or Fri Mar 07 2008 or Sat Mar 08 2008 or ....
+ Sat Mar 10 2008 --> Sat Mar 08 2008 or Mon Mar 10 2008 or Sat Mar 15 2008 or ....
+ Mon Apr 21 2013 --> Mon Apr 15 2013 or Sun Apr 21 2013 or Mon Apr 22 2013 or ....
+ Tue Sep 30 2015 --> Tue Sep 29 2015 or Wed Sep 30 2015 or Tue Oct 06 2015 or ....
+
+* Fri Feb 5 2016 Daniel Berteaud 5.8.0-1.sme
+- Roll new stream for sme10
+
+* Sun Jan 31 2016 Daniel Berteaud 5.6.0-28.sme
+- Add a column to display forwarding address [SME: 9174]
+
+* Sun Jan 31 2016 Daniel Berteaud 5.6.0-27.sme
+- Correctly display http URL to the server-manager in the console [SME: 9163]
+
+* Sun Jan 17 2016 Daniel Berteaud 5.6.0-26.sme
+- Fire ssl-update event when default cert is renewed [SME: 2257]
+
+* Sun Jan 17 2016 Daniel Berteaud 5.6.0-25.sme
+- Expand /home/e-smith/ssl.pem/pem during ssl-update [SME: 9152]
+
+* Wed Sep 30 2015 Daniel Berteaud 5.6.0-24.sme
+ Tue Sep 30 2015 --> Tue Sep 29 2015 or Wed Sep 30 2015 or Tue Oct 06 2015 or ....
+- Update /etc/mime.types templates [SME: 9078]
+
+* Mon Aug 24 2015 Charlie Brady 5.6.0-23.sme
+- Use sha256 algorithm for signature of SSL cert. [SME: 8615]
+
+* Thu Jun 25 2015 Daniel Berteaud 5.6.0-22.sme
+- Fix including /etc/selinux directory [SME: 8954]
+
+* Thu Jun 25 2015 Daniel Berteaud 5.6.0-21.sme
+- Add templates for /etc/selinux/config [SME: 8954]
+
+* Thu Jun 11 2015 Daniel Berteaud 5.6.0-20.sme
+- Add dummy NIC support as InternalInterface [SME: 7200]
+
+* Tue Mar 31 2015 Daniel Berteaud 5.6.0-19.sme
+- Only fire the ip-change event when IP is assigned to WAN nic
+ (Code by Charlie Brady and John Crisp) [SME: 8896]
+
+* Tue Mar 31 2015 Daniel Berteaud 5.6.0-18.sme
+- Only reset service access when switching to or from private server mode
+ (Code by Charlie Brady) [SME: 8879]
+
+* Sun Jan 11 2015 Stephane de Labrusse 5.6.0-17.sme
+- When quiting the console app with unsaved changes set the default selected
+- answer to NO Hsing-Foo Wang [SME: 8616]
+
+* Tue Jan 6 2015 Stephane de Labrusse 5.6.0-16.sme
+- Added a comment to specify the real configuration file of dhcpd [SME: 8386]
+
+* Sat Jan 3 2015 Stephane de Labrusse 5.6.0-15.sme
+- Modified the patch of daniel e-smith-base-5.6.0-ensure_apache_alias_www.patch
+- Ensure www group exists and that apache is an alias of www [SME: 8549]
+
+* Sun Nov 2 2014 Daniel Berteaud 5.6.0-13.sme
+- Ensure www group exists and that apache is an alias of www [SME: 8549]
+
+* Sun Nov 2 2014 Daniel Berteaud 5.6.0-12.sme
+- Check were running runlevel 4, not 7 in service wrapper [SME: 8637]
+
+* Sun Sep 21 2014 Daniel Berteaud 5.6.0-11.sme
+- Correctly update NIC configuration on single NIC systems [SME: 8561]
+
+* Wed Sep 10 2014 Daniel Berteaud 5.6.0-10.sme
+- Symlink udev-post service in rc7 [SME: 8542]
+
+* Fri Jul 25 2014 Daniel Berteaud 5.6.0-9.sme
+- Fix PPPoE after a post-upgrade [SME: 8493]
+
+* Thu Jul 3 2014 Ian Wells 5.6.0-8.sme
+- Remove dependency on microcode_ctl [SME: 8468]
+
+* Sun May 11 2014 stephane de Labrusse 5.6.0-7.sme
+- Prevent emailing about the normal, weekly, checks of RAID arrays, by Mark Casey
+- [SME: 7748]
+
+* Tue May 06 2014 stephane de Labrusse 5.6.0-6.sme
+- remove /etc/e-smith/templates/etc/crontab/10runparts for anacron compatibility
+- [SME: 8364]
+
+* Wed Apr 23 2014 stephane de Labrusse 5.6.0-5.sme
+- Add a verification in the console of number of pptp clients against ip allowed in dhcpd
+- [SME: 8312]
+
+* Sun Apr 6 2014 stephane de Labrusse 5.6.0-4.sme
+- Add a verification in remoteaccess panel of number of pptp clients against ip allowed in dhcpd
+- [SME: 8312]
+
+* Sat Apr 5 2014 Ian Wells 5.6.0-3.sme
+- Ensure console is run with taint checking [SME: 8311]
+- Non-functional perl::Critic changes.
+
+* Sun Mar 23 2014 Ian Wells 5.6.0-2.sme
+- Roll new stream to really remove obsolete images [SME: 7962]
+
+* Sun Mar 23 2014 Ian Wells 5.6.0-1.sme
+- Roll new stream to remove obsolete images [SME: 7962]
+
+* Thu Mar 20 2014 Ian Wells 5.4.0-62.sme
+- Move console backup to e-smith-backup [SME: 3324]
+
+* Sun Mar 16 2014 Ian Wells 5.4.0-61.sme
+- Remove support.pl from e-smith-base and move to smeserver-support [SME: 8264]
+
+* Sat Mar 15 2014 Ian Wells 5.4.0-60.sme
+- Console restore should reboot [SME: 8259]
+
+* Sat Mar 8 2014 Ian Wells 5.4.0-59.sme
+- Boostrap console should only offer restore if no password set [SME: 8259]
+
+* Thu Mar 6 2014 Ian Wells 5.4.0-58.sme
+- Add restore backup as a console item for freshly installed servers [SME: 8259]
+- Non-code changes to perform_restore.pm
+
+* Sun Feb 16 2014 Ian Wells 5.4.0-57.sme
+- Refer to removable media not CDROM in console restore [SME: 8214]
+
+* Tue Jan 28 2014 Ian Wells 5.4.0-56.sme
+- Remove insecure SSL ciphers [SME: 8138]
+
+* Sun Dec 15 2013 Daniel Berteaud 5.4.0-55.sme
+- Restart rsyslog in logrotate event [SME: 8065]
+
+* Sun Dec 15 2013 Daniel Berteaud 5.4.0-54.sme
+- Set smb ServerName if unset (patch from Ian Wells) [SME: 8030]
+
+* Mon Dec 9 2013 Daniel Berteaud 5.4.0-53.sme
+- Don't reload init in bootstrap-console-save and console-save [SME: 8050]
+
+* Mon Dec 9 2013 Daniel Berteaud 5.4.0-52.sme
+- Re-add missing templates metadata for bond0 [SME: 7990]
+
+* Sat Nov 30 2013 Daniel Berteaud 5.4.0-51.sme
+- Load the bonding module if NIC bonding is enabled [SME: 7996]
+
+* Sat Nov 30 2013 Daniel Berteaud 5.4.0-50.sme
+- Define the udev-post service in the DB [SME: 7992]
+
+* Sat Nov 30 2013 Daniel Berteaud 5.4.0-49.sme
+- Remove the "swap interface" feature [SME: 7993]
+
+* Sat Nov 30 2013 Daniel Berteaud 5.4.0-48.sme
+- Do not hardcode NIC names to eth0 and eth1 [SME: 7990]
+- Remove obsolete VLAN code [SME: 7994]
+
+* Sat Nov 30 2013 Daniel Berteaud 5.4.0-47.sme
+- Remove HWAddress prop from interfaces [SME: 7991]
+
+* Thu Nov 14 2013 Chris Burnat 5.4.0-46.sme
+- Fix add_new_disk_to_raid1 (codes by Charlie Brady - patch by Terje Edseth)
+ [SME: 7960]
+
+* Wed Oct 30 2013 Charlie Brady 5.4.0-45.sme
+- Fix parsing issues with "manage RAID" menu option in the console.
+ [SME: 7953]
+
+* Mon Sep 30 2013 John H. Bennett III 5.4.0-44.sme
+- Patch to correct issue with not being able to access a password protected
+ ibay [SME: 7794]
+
+* Sun Jul 7 2013 Ian Wells 5.4.0-43.sme
+- Improve text in console backup for success and failure [SME: 7770]
+
+* Fri Jul 5 2013 Ian Wells 5.4.0-42.sme
+- Console USB Backup, allow user setting of compression level [SME: 7745]
+ Compression level of the console backup is now -6 by default
+
+* Fri Jul 5 2013 Ian Wells 5.4.0-41.sme
+- Update ServerName (Samba netbios name) when SystemName is updated [SME: 7746]
+
+* Fri Jul 5 2013 Ian Wells 5.4.0-40.sme
+- Remove old System Name from the Hosts DB, by Charlie Brady [SME: 7747]
+
+* Sun Jun 23 2013 Daniel Berteaud 5.4.0-39.sme
+- Fix group creation when LDAP auth is enabled [SME: 7672]
+
+* Sat Jun 8 2013 Daniel Berteaud 5.4.0-38.sme
+- Disable IPv6 on a default install (patch by Shad Lords) [SME: 7531]
+
+* Sat Jun 8 2013 Daniel Berteaud 5.4.0-37.sme
+- Continue escaping control chars in rsyslog, just replace LF with space [SME: 7662]
+
+* Fri Jun 7 2013 Daniel Berteaud 5.4.0-36.sme
+- Don't escape control characters in rsyslog [SME: 7662]
+
+* Thu Jun 6 2013 Daniel Berteaud 5.4.0-35.sme
+- Use UTF-8 in the console [SME: 7591]
+
+* Sun May 19 2013 Ian Wells 5.4.0-34.sme
+- Remove redundant parts of init-accounts [SME: 3550]
+
+* Sat May 18 2013 chris burnat 5.4.0-33.sme
+- Add_template_to_ssl.pem, codes by JP Pialasse [SME: 7601]
+
+* Tue May 07 2013 Ian Wells 5.4.0-32.sme
+- Require diald [SME: 7279]
+
+* Mon May 06 2013 Ian Wells 5.4.0-31.sme
+- Removal of rc.e-smith now functionality is in e-smith-service [SME: 7267]
+
+* Sun May 05 2013 Ian Wells 5.4.0-30.sme
+- Revert last change. [SME: 7227]
+
+* Sat May 04 2013 Ian Wells 5.4.0-29.sme
+- Suppress template text from /etc/inittab [SME: 7227]
+
+* Mon Apr 22 2013 Ian Wells 5.4.0-28.sme
+- Replacement of rc.e-smith by moving code into e-smith-service [SME: 7267]
+
+* Sun Apr 21 2013 chris burnat 5.4.0-27.sme
+ Mon Apr 21 2013 --> Mon Apr 15 2013 or Sun Apr 21 2013 or Mon Apr 22 2013 or ....
+- Fix the way '.' works in bash [SME: 7532]
+
+* Fri Mar 22 2013 Daniel Berteaud 5.4.0-26.sme
+- rename /etc/ldap.conf to /etc/pam_ldap.conf (and same for .secret) [SME: 7289]
+
+* Sat Mar 16 2013 Ian Wells 5.4.0-25.sme
+- Always define InternalInterface NICBonding [SME: 7498]
+
+* Sat Mar 16 2013 Terry Fage 5.4.0-24.sme
+- In the console refer to removable media instead of USB disk [SME: 7414]
+
+* Sat Mar 16 2013 Shad L. Lords 5.4.0-23.sme
+- Fix a few more syslog => rsyslog items [SME: 7221]
+
+* Sat Mar 16 2013 Shad L. Lords 5.4.0-22.sme
+- Remove modprobe stuff [SME: 7261]
+
+* Sat Mar 16 2013 Shad L. Lords 5.4.0-21.sme
+- Don't be as agressive on rate limiting [SME: 7470]
+
+* Sat Mar 16 2013 Daniel Berteaud 5.4.0-20.sme
+- Change syslog templates to rsyslog [SME: 7221]
+
+* Fri Mar 15 2013 Ian Wells 5.4.0-19.sme
+- Ensure existing_hwaddr is always initialized [SME: 7471]
+
+* Thu Mar 14 2013 Ian Wells 5.4.0-18.sme
+- Change System Name from mitel-networks-server to sme-server [SME: 7485]
+
+* Sat Mar 9 2013 Shad L. Lords 5.4.0-17.sme
+- Fix user www creation in init-accounts [SME: 7319]
+
+* Wed Mar 6 2013 Shad L. Lords 5.4.0-16.sme
+- Update package and path for pwauth [SME: 7319]
+- Update init-accounts to set uid/gid correctly for pwauth
+
+* Thu Feb 28 2013 Shad L. Lords 5.4.0-15.sme
+- Remove fragments in inittab that are no longer needed [SME: 7227]
+
+* Mon Feb 25 2013 Daniel Berteaud 5.4.0-14.sme
+- Post-upgrades not fired after restore from console [SME: 7390]
+
+* Sat Feb 23 2013 Ian Wells 5.4.0-13.sme
+- Remove microcode_ctl service as now udev-driven [SME: 7397]
+
+* Thu Feb 21 2013 Ian Wells 5.4.0-12.sme
+- Increase memory limit for pppoe to 100Mb matching SME8 solution [SME: 7391]
+
+* Thu Feb 21 2013 Daniel Berteaud 5.4.0-11.sme
+- Optimize user-modify-unix script and link it in bootstrap-ldap-save [SME: 7387]
+
+* Tue Feb 19 2013 Shad L. Lords 5.4.0-10.sme
+- Add /usr/bin/passwd as a required package [SME: 7350]
+
+* Sat Feb 9 2013 Ian Wells 5.4.0-9.sme
+- Update symlink to not conflict with /etc/init.d [SME: 7322]
+
+* Thu Feb 7 2013 Ian Wells 5.4.0-8.sme
+- Add symbolic links from rsyslog to syslog to start the
+ the transition from syslog to rsyslog [SME: 7322]
+
+* Wed Feb 6 2013 Shad L. Lords 5.4.0-7.sme
+- Remove apmd service and change package to noarch [SME: 7312]
+
+* Sun Feb 3 2013 Daniel Berteaud 5.4.0-6.sme
+- Add a daemontools service to run signal-event local [SME: 7230]
+
+* Sat Feb 2 2013 Shad L. Lords 5.4.0-5.sme
+- Obsolete nss_ldap so upgrades work [SME: 7273]
+
+* Sat Feb 2 2013 Shad L. Lords 5.4.0-4.sme
+- Helps to spell requirements correctly
+
+* Sat Feb 2 2013 Shad L. Lords 5.4.0-3.sme
+- Change nss_ldap to nss-pam-ldapd [SME: 7272]
+
+* Thu Jan 31 2013 Daniel Berteaud 5.4.0-2.sme
+- Change default runlevel to 4 [SME: 7266]
+
+* Thu Jan 31 2013 Shad L. Lords 5.4.0-1.sme
+- Roll new stream for sme9
+
+* Tue Jan 22 2013 Ian Wells 5.2.0-67.sme
+- Increase memory limit for pppoe to 100Mb [SME: 7000]
+
+* Sun Dec 30 2012 Ian Wells 5.2.0-66.sme
+- Template /etc/updatedb.conf [SME: 7090]
+
+* Wed Jul 18 2012 Ian Wells 5.2.0-65.sme
+- Make CipherSuite secure by default [SME: 7026]
+
+* Fri Mar 16 2012 Ian Wells 5.2.0-64.sme
+- Add MAC address into console network selection [SME: 6844]
+
+* Sun Nov 6 2011 Shad L. Lords 5.2.0-63.sme
+- Initialize ExternalInterface db structure so hwaddr in console works
+ [SME: 6775]
+
+* Mon Mar 14 2011 Daniel Berteaud 5.2.0-62.sme
+- Stop using gecos attribute in LDAP [SME: 6539]
+
+* Mon Mar 14 2011 Jonathan Martens 5.2.0-61.sme
+- Fix a typo in strings [SME: 5932]
+
+* Mon Mar 14 2011 Jonathan Martens 5.2.0-60.sme
+- Rework text changes in console screen in previous revision [SME: 5932]
+
+* Mon Mar 14 2011 Jonathan Martens 5.2.0-59.sme
+- Only list backup targets that are writeable [SME: 5932]
+
+* Sun Mar 13 2011 Jonathan Martens 5.2.0-58.sme
+- Revert admin password change through user-manager [SME: 3759]
+
+* Sun Mar 13 2011 Jonathan Martens 5.2.0-57.sme
+- Allow admin password change through user-manager [SME: 3759]
+
+* Wed Mar 2 2011 Jonathan Martens 5.2.0-57.sme
+- Handle no network interface scenario in console and bootstrap-console [SME: 6023]
+
+* Mon Dec 6 2010 Daniel Berteaud 5.2.0-56.sme
+- change apache uid and gid so they become aliases for www [SME: 6425]
+
+* Tue Nov 30 2010 Shad L. Lords 5.2.0-55.sme
+- Only remove dangling symlinks in weak-updates directories [SME: 6376]
+
+* Tue Nov 30 2010 Shad L. Lords 5.2.0-54.sme
+- Fix create user gid parameter [SME: 6416]
+
+* Mon Nov 29 2010 Daniel Berteaud 5.2.0-53.sme
+- Fix gpasswd path [SME: 6412]
+
+* Mon Nov 22 2010 Shad L. Lords 5.2.0-52.sme
+- Fix relocation of dhclient conf file [SME: 6385]
+
+* Sun Nov 7 2010 Shad L. Lords 5.2.0-51.sme
+- No longer need to pass supplemental groups to cpu [SME: 6349]
+
+* Fri Nov 5 2010 Shad L. Lords 5.2.0-50.sme
+- Allow cpu to remove empty attributes [SME: 6343]
+
+* Thu Nov 4 2010 Shad L. Lords 5.2.0-49.sme
+- Fix maxUsers patch (again) to not break setting passwords [SME: 5537]
+
+* Thu Nov 4 2010 Shad L. Lords 5.2.0-48.sme
+- Fix maxUsers patch to not break setting passwords [SME: 5537]
+
+* Thu Nov 4 2010 Shad L. Lords 5.2.0-47.sme
+- Don't put empty attributes in file for cpu [SME: 6334]
+
+* Thu Nov 4 2010 Shad L. Lords 5.2.0-46.sme
+- Add flush to tmpfile so that data is available to cpu [SME: 6334]
+
+* Thu Nov 4 2010 Shad L. Lords 5.2.0-45.sme
+- Add extra attributes to ldap objects with cpu call [SME: 6334]
+
+* Wed Nov 3 2010 Shad L. Lords 5.2.0-44.sme
+- Fix cpu critical patch missing ' [SME: 6330]
+
+* Wed Nov 3 2010 Shad L. Lords 5.2.0-43.sme
+- Make cpu calls critical only with ldap{Auth} is enabled [SME: 6330]
+- Add cpu.conf and cpu-system.conf to post-upgrade event [SME: 6327]
+
+* Tue Nov 2 2010 Shad L. Lords 5.2.0-42.sme
+- Always use cpu, do unix if ldap{Auth} is disabled [SME: 6328]
+
+* Mon Nov 1 2010 Shad L. Lords 5.2.0-41.sme
+- Switch to cpu commands if ldap is master [SME: 6328]
+
+* Mon Nov 1 2010 Shad L. Lords 5.2.0-40.sme
+- Add templates for ldap authentication if enabled [SME: 6329]
+
+* Mon Nov 1 2010 Shad L. Lords 5.2.0-39.sme
+- Add cpu.conf and cpu-system.conf template/program to SME [SME: 6327]
+
+* Thu Oct 14 2010 Daniel Berteaud 5.2.0-38.sme
+- Fix empty leases file test [SME: 6274]
+
+* Tue Oct 12 2010 Daniel Berteaud 5.2.0-37.sme
+- Relocate dhcpd leases file [SME: 6274]
+
+* Mon Oct 11 2010 Shad L. Lords 5.2.0-36.sme
+- Add migrate script to add missing HWaddr to interface records [SME: 6267]
+
+* Mon Oct 11 2010 Shad L. Lords 5.2.0-35.sme
+- Make lcp options configurable [SME: 6277]
+
+* Mon Oct 11 2010 Daniel Berteaud 5.2.0-34.sme
+- Relocate dhclient conf file [SME: 5833]
+
+* Fri Oct 8 2010 Shad L. Lords 5.2.0-33.sme
+- Disable apmd on 64-bit arch [SME: 6170]
+
+* Fri Oct 8 2010 Shad L. Lords 5.2.0-32.sme
+- Remove check for maxUsers [SME: 5537]
+
+* Wed Oct 6 2010 Shad L. Lords 5.2.0-31.sme
+- Try and keep same external address for pppoe connections [SME: 6263]
+
+* Mon Sep 27 2010 Shad L. Lords 5.2.0-30.sme
+- Add ibay groups to group membership [SME: 6247]
+
+* Thu Sep 23 2010 Daniel Berteaud 5.2.0-29.sme
+- Prepare nss_ldap [SME: 6227]
+
+* Sun Aug 8 2010 Ian Wells 5.2.0-28.sme
+- Enable cpuspeed by default [SME: 6066]
+
+* Sun Jul 25 2010 Charlie Brady 5.2.0-27.sme
+- Fix syntax error in last patch. [SME: 5830]
+
+* Mon Jul 19 2010 Charlie Brady 5.2.0-26.sme
+- Don't exit 99 from e-smith-service script when called with 'condrestart'
+ and service is disabled. [SME: 5830]
+
+* Fri Jun 11 2010 Federico Simoncelli 5.2.0-25.sme
+- FreeBusy patch fix (save account changes) [SME: 5941]
+
+* Fri Jun 11 2010 Ian Wells 5.2.0-24.sme
+- Remove checkMaxUsers patch due to regression. [SME: 5537]
+
+* Tue Jun 8 2010 Jonathan Martens 5.2.0-23.sme
+- Fix translation of local nic string in console [SME: 5571]
+
+* Sun Jun 6 2010 Jonathan Martens 5.2.0-22.sme
+- Handle no network interface scenario in console [SME: 6023]
+
+* Sat Jun 5 2010 Ian Wells