diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..cbb3a13
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.rpm
+*.log
+*spec-20*
+*.tar.gz
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..3f2ed39
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,21 @@
+# Makefile for source rpm: smeserver-zabbix-proxy
+# $Id: Makefile,v 1.1 2022/08/01 18:51:07 jpp Exp $
+NAME := smeserver-zabbix-proxy
+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 8405432..81bc27c 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,16 @@
-# smeserver-zabbix-proxy
+# smeserver-zabbix-proxy
-SMEServer Koozali developed git repo for smeserver-zabbix-proxy smecontribs
\ No newline at end of file
+SMEServer Koozali developed git repo for smeserver-zabbix-proxy smecontribs
+
+## Wiki
+
https://wiki.koozali.org/Zabbix-proxy
+
https://wiki.koozali.org/Zabbix-proxy/fr
+
+## Bugzilla
+Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=smeserver-zabbix-proxy&product=SME%20Contribs&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*
+
diff --git a/additional/.tito/packages/.readme b/additional/.tito/packages/.readme
new file mode 100644
index 0000000..b9411e2
--- /dev/null
+++ b/additional/.tito/packages/.readme
@@ -0,0 +1,3 @@
+the .tito/packages directory contains metadata files
+named after their packages. Each file has the latest tagged
+version and the project's relative directory.
diff --git a/additional/.tito/packages/smeserver-zabbix-proxy b/additional/.tito/packages/smeserver-zabbix-proxy
new file mode 100644
index 0000000..991f746
--- /dev/null
+++ b/additional/.tito/packages/smeserver-zabbix-proxy
@@ -0,0 +1 @@
+0.3.1-1 ./
diff --git a/additional/.tito/releasers.conf b/additional/.tito/releasers.conf
new file mode 120000
index 0000000..867c32f
--- /dev/null
+++ b/additional/.tito/releasers.conf
@@ -0,0 +1 @@
+../../tito_libs/releasers.conf
\ No newline at end of file
diff --git a/additional/.tito/tito.props b/additional/.tito/tito.props
new file mode 100644
index 0000000..3c97442
--- /dev/null
+++ b/additional/.tito/tito.props
@@ -0,0 +1,6 @@
+[buildconfig]
+builder = tito.builder.Builder
+tagger = tito.tagger.VersionTagger
+changelog_do_not_remove_cherrypick = 0
+changelog_format = %s (%ae)
+lib_dir = ../tito_libs
diff --git a/additional/smeserver-zabbix-proxy.spec b/additional/smeserver-zabbix-proxy.spec
new file mode 100644
index 0000000..968eadb
--- /dev/null
+++ b/additional/smeserver-zabbix-proxy.spec
@@ -0,0 +1,109 @@
+Summary: sme server integration of zabbix proxy
+Name: smeserver-zabbix-proxy
+Version: 0.3.1
+Release: 1%{?dist}
+License: GNU GPL version 3
+URL: http://www.zabbix.com/
+Group: SMEserver/addon
+Source: %{name}-%{version}.tar.gz
+
+BuildArchitectures: noarch
+BuildRequires: e-smith-devtools
+BuildRoot: /var/tmp/%{name}-%{version}
+Requires: e-smith-release >= 7.0
+Requires: fping
+Requires: zabbix-proxy-mysql
+Requires: smeserver-remoteuseraccess
+Conflicts: smeserver-zabbix-server
+Obsoletes: zabbix-server
+Obsoletes: zabbix-server-mysql
+AutoReqProv: no
+
+%description
+smserver integration of zabbix proxy
+Zabbix is an entreprise-class open source distributed monitoring
+solution
+
+%changelog
+* Thu Nov 28 2019 Daniel Berteaud 0.3.1-1
+- new package built with tito
+- adapt spec file for tito
+- adapt to be used with upstream zabbix packages
+* Mon Mar 21 2016 Daniel Berteaud - 0.3.0-1.sme
+- Add support for encryption features of Zabbix 3.0
+
+* Wed Jun 5 2013 Daniel B. 0.2.2-1.sme
+- Don't try to upgrade the database
+
+* Fri Apr 19 2013 Daniel B. 0.2.1-1.sme
+- Sync config every 10 minutes
+
+* Thu Jun 14 2012 Daniel B. 0.2.0-1.sme
+- Import to GIT
+- Only import the schema when creating the database
+
+* Fri Oct 07 2011 Daniel B. 0.1-11
+- Fixe 2 directives (needed for Zabbix 1.8.8)
+
+* Thu Nov 25 2010 Daniel B. 0.1-9
+- Requires the mysql variant of server and proxy
+
+* Tue Oct 19 2010 Daniel B. 0.1-8
+- Possibility to set Hostname from the DB
+
+* Thu Apr 15 2010 Daniel B. 0.1-7
+- Support multiple dbpatches
+
+* Mon Sep 28 2009 Daniel B. 0.1-6
+- Fixe /etc/sudoers template expension during zabbix-proxy-update event
+
+* Tue Mar 03 2009 Daniel B. 0.1-5
+- Add smeserver-remoteuseraccess as a dependencie (sudoers template problem)
+
+* Mon Mar 02 2009 Daniel B. 0.1-4
+- Disable DB cache as it seems to cause IPC problems
+
+* Mon Mar 02 2009 Daniel B. 0.1-3
+- enable DB cache with StartDBSyncers directive
+
+* Sun Mar 01 2009 Daniel B. 0.1-2
+- Fix permissions on /var/lib/zabbix/tmp
+
+* Tue Feb 24 2009 Daniel B. 0.1-1
+- Fix createlinks
+
+* Tue Feb 24 2009 Daniel B. 0.1-0
+- initial release
+
+%prep
+%setup
+
+%build
+perl ./createlinks
+%{__mkdir_p} root/var/lib/zabbix/tmp
+
+%install
+rm -rf $RPM_BUILD_ROOT
+(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
+rm -f %{name}-%{version}-filelist
+/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
+ --file /var/lib/zabbix/bin/fping 'attr(0750,root,zabbix)' \
+ --file /var/lib/zabbix/bin/fping6 'attr(0750,root,zabbix)' \
+ --dir /var/lib/zabbix/tmp 'attr(0755,zabbix,zabbix)' \
+ > %{name}-%{version}-filelist
+
+%files -f %{name}-%{version}-filelist
+%defattr(-,root,root)
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+
+%postun
+#uninstall
+if [ $1 = 0 ] ; then
+ /sbin/e-smith/db configuration setprop zabbix-proxy status disabled
+ /etc/init.d/zabbix-proxy stop
+fi
+
+true
diff --git a/contriborbase b/contriborbase
new file mode 100644
index 0000000..9b7fd51
--- /dev/null
+++ b/contriborbase
@@ -0,0 +1 @@
+contribs10
diff --git a/createlinks b/createlinks
new file mode 100644
index 0000000..ecf096a
--- /dev/null
+++ b/createlinks
@@ -0,0 +1,19 @@
+#!/usr/bin/perl -w
+
+use esmith::Build::CreateLinks qw(:all);
+
+
+# Templates to expand
+templates2events("/etc/zabbix/zabbix_proxy.conf", qw(zabbix-proxy-update bootstrap-console-save));
+templates2events("/etc/sudoers", "zabbix-proxy-update");
+templates2events("/etc/e-smith/sql/init/80zabbix-proxy", qw(zabbix-proxy-update bootstrap-console-save));
+
+# Services to restart
+safe_symlink("restart", "root/etc/e-smith/events/zabbix-proxy-update/services2adjust/mysql.init");
+safe_symlink("restart", "root/etc/e-smith/events/zabbix-proxy-update/services2adjust/zabbix-proxy");
+
+# Start and stop links
+service_link_enhanced("zabbix-proxy", "S99", "7");
+service_link_enhanced("zabbix-proxy", "K10", "6");
+service_link_enhanced("zabbix-proxy", "K10", "0");
+
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbName b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbName
new file mode 100644
index 0000000..737e500
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbName
@@ -0,0 +1 @@
+zabbixproxydb
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbUser b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbUser
new file mode 100644
index 0000000..c147932
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/DbUser
@@ -0,0 +1 @@
+zabbixuser
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/TCPPort b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/TCPPort
new file mode 100644
index 0000000..f02a806
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/TCPPort
@@ -0,0 +1 @@
+10051
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/access b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/access
new file mode 100644
index 0000000..3e18ebf
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/access
@@ -0,0 +1 @@
+private
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/status b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/status
new file mode 100644
index 0000000..86981e6
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/status
@@ -0,0 +1 @@
+enabled
diff --git a/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/type b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/type
new file mode 100644
index 0000000..24e1098
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/zabbix-proxy/type
@@ -0,0 +1 @@
+service
diff --git a/root/etc/e-smith/db/configuration/migrate/zabbix-proxy-database b/root/etc/e-smith/db/configuration/migrate/zabbix-proxy-database
new file mode 100644
index 0000000..bb7019b
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/migrate/zabbix-proxy-database
@@ -0,0 +1,33 @@
+{
+ my $rec = $DB->get('zabbix-proxy')
+ || $DB->new_record('zabbix-proxy', {type => 'service'});
+ my $pw = $rec->prop('DbPassword');
+ if (not $pw or length($pw) < 57)
+ {
+ use MIME::Base64 qw(encode_base64);
+
+ $pw = "not set due to error";
+ if ( open( RANDOM, "/dev/urandom" ) )
+ {
+ my $buf;
+ # 57 bytes is a full line of Base64 coding, and contains
+ # 456 bits of randomness - given a perfectly random /dev/random
+ if ( read( RANDOM, $buf, 57 ) != 57 )
+ {
+ warn("Short read from /dev/random: $!");
+ }
+ else
+ {
+ $pw = encode_base64($buf);
+ chomp $pw;
+ }
+ close RANDOM;
+ }
+ else
+ {
+ warn "Could not open /dev/urandom: $!";
+ }
+ $rec->set_prop('DbPassword', $pw);
+ }
+}
+
diff --git a/root/etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zabbix-proxy b/root/etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zabbix-proxy
new file mode 100644
index 0000000..940dcf3
--- /dev/null
+++ b/root/etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zabbix-proxy
@@ -0,0 +1 @@
+PERMS=0750
diff --git a/root/etc/e-smith/templates.metadata/var/lib/zabbix/bin/sendxmpp b/root/etc/e-smith/templates.metadata/var/lib/zabbix/bin/sendxmpp
new file mode 100644
index 0000000..c187d95
--- /dev/null
+++ b/root/etc/e-smith/templates.metadata/var/lib/zabbix/bin/sendxmpp
@@ -0,0 +1,3 @@
+PERMS=0750
+UID="root"
+GID="zabbix"
diff --git a/root/etc/e-smith/templates/etc/e-smith/sql/init/80zabbix-proxy b/root/etc/e-smith/templates/etc/e-smith/sql/init/80zabbix-proxy
new file mode 100644
index 0000000..5e090f3
--- /dev/null
+++ b/root/etc/e-smith/templates/etc/e-smith/sql/init/80zabbix-proxy
@@ -0,0 +1,48 @@
+{
+my $db = ${'zabbix-proxy'}{'DbName'} || 'zabbix';
+my $user = ${'zabbix-proxy'}{'DbUser'} || 'zabbix';
+my $pass = ${'zabbix-proxy'}{'DbPassword'} || 'secret';
+
+my $schema = `rpm -qd zabbix-proxy-mysql | grep schema | grep mysql`;
+
+
+$OUT .= <<"END";
+#! /bin/sh
+if [ \! -d /var/lib/mysql/$db ]; then
+ /usr/bin/mysqladmin create $db
+ gzip -dc $schema | /usr/bin/mysql $db
+fi
+
+/usr/bin/mysql < 0) ? join(',', @encryptions) : '';
+ $OUT .=<<_EOF if ($encryptions ne '');
+TLSConnect=$encryptions
+TLSAccept=$encryptions
+_EOF
+}
diff --git a/root/var/lib/zabbix/bin/fping b/root/var/lib/zabbix/bin/fping
new file mode 100644
index 0000000..2173537
--- /dev/null
+++ b/root/var/lib/zabbix/bin/fping
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/sudo /usr/sbin/fping "$@"
diff --git a/root/var/lib/zabbix/bin/fping6 b/root/var/lib/zabbix/bin/fping6
new file mode 100644
index 0000000..38b1d6d
--- /dev/null
+++ b/root/var/lib/zabbix/bin/fping6
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/sudo /usr/sbin/fping6 "$@"
diff --git a/smeserver-zabbix-proxy.spec b/smeserver-zabbix-proxy.spec
new file mode 100644
index 0000000..9c65b64
--- /dev/null
+++ b/smeserver-zabbix-proxy.spec
@@ -0,0 +1,116 @@
+Summary: sme server integration of zabbix proxy
+Name: smeserver-zabbix-proxy
+Version: 0.3.1
+Release: 2%{?dist}
+License: GNU GPL version 3
+URL: http://www.zabbix.com/
+Group: SMEserver/addon
+Source: %{name}-%{version}.tar.xz
+
+BuildArchitectures: noarch
+BuildRequires: e-smith-devtools
+BuildRoot: /var/tmp/%{name}-%{version}
+Requires: e-smith-release >= 7.0
+Requires: fping
+Requires: zabbix-proxy-mysql
+Requires: smeserver-remoteuseraccess
+Conflicts: smeserver-zabbix-server
+Obsoletes: zabbix-server
+Obsoletes: zabbix-server-mysql
+AutoReqProv: no
+
+%description
+smserver integration of zabbix proxy
+Zabbix is an entreprise-class open source distributed monitoring
+solution
+
+%changelog
+* Sat Sep 07 2024 cvs2git.sh aka Brian Read 0.3.1-2.sme
+- Roll up patches and move to git repo [SME: 12338]
+
+* Sat Sep 07 2024 BogusDateBot
+- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
+ by assuming the date is correct and changing the weekday.
+
+* Thu Nov 28 2019 Daniel Berteaud 0.3.1-1
+- new package built with tito
+- adapt spec file for tito
+- adapt to be used with upstream zabbix packages
+* Mon Mar 21 2016 Daniel Berteaud - 0.3.0-1.sme
+- Add support for encryption features of Zabbix 3.0
+
+* Wed Jun 5 2013 Daniel B. 0.2.2-1.sme
+- Don't try to upgrade the database
+
+* Fri Apr 19 2013 Daniel B. 0.2.1-1.sme
+- Sync config every 10 minutes
+
+* Thu Jun 14 2012 Daniel B. 0.2.0-1.sme
+- Import to GIT
+- Only import the schema when creating the database
+
+* Fri Oct 07 2011 Daniel B. 0.1-11
+- Fixe 2 directives (needed for Zabbix 1.8.8)
+
+* Thu Nov 25 2010 Daniel B. 0.1-9
+- Requires the mysql variant of server and proxy
+
+* Tue Oct 19 2010 Daniel B. 0.1-8
+- Possibility to set Hostname from the DB
+
+* Thu Apr 15 2010 Daniel B. 0.1-7
+- Support multiple dbpatches
+
+* Mon Sep 28 2009 Daniel B. 0.1-6
+- Fixe /etc/sudoers template expension during zabbix-proxy-update event
+
+* Tue Mar 03 2009 Daniel B. 0.1-5
+- Add smeserver-remoteuseraccess as a dependencie (sudoers template problem)
+
+* Mon Mar 02 2009 Daniel B. 0.1-4
+- Disable DB cache as it seems to cause IPC problems
+
+* Mon Mar 02 2009 Daniel B. 0.1-3
+- enable DB cache with StartDBSyncers directive
+
+* Sun Mar 01 2009 Daniel B. 0.1-2
+- Fix permissions on /var/lib/zabbix/tmp
+
+* Tue Feb 24 2009 Daniel B. 0.1-1
+- Fix createlinks
+
+* Tue Feb 24 2009 Daniel B. 0.1-0
+- initial release
+
+%prep
+%setup
+
+%build
+perl ./createlinks
+%{__mkdir_p} root/var/lib/zabbix/tmp
+
+%install
+rm -rf $RPM_BUILD_ROOT
+(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
+rm -f %{name}-%{version}-filelist
+/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
+ --file /var/lib/zabbix/bin/fping 'attr(0750,root,zabbix)' \
+ --file /var/lib/zabbix/bin/fping6 'attr(0750,root,zabbix)' \
+ --dir /var/lib/zabbix/tmp 'attr(0755,zabbix,zabbix)' \
+ > %{name}-%{version}-filelist
+
+%files -f %{name}-%{version}-filelist
+%defattr(-,root,root)
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+
+%postun
+#uninstall
+if [ $1 = 0 ] ; then
+ /sbin/e-smith/db configuration setprop zabbix-proxy status disabled
+ /etc/init.d/zabbix-proxy stop
+fi
+
+true