%{?!serverlimit:%global serverlimit 1024}
Name: ihttpd
-Version: 2.4.20
-Release: %mkrel 1
+Version: 2.4.38
+Release: %mkrel 6
Summary: The most widely used Web server on the Internet
License: Apache License
Group: System/Servers
Source0: http://www.apache.org/dist/httpd/httpd-%version.tar.bz2
Source1: index.bin.c
Source2: reboot.sh
-Source14: ihttpd.tmpfiles
Source15: ihttpd.service
+Source16: debug-sshd.service
Source18: ihttpd.dracut
Source19: ihttpd.module-setup
Source20: ihttpd.conf
Patch7: httpd-2.4.10-detect-systemd.patch
# Features/functional changes
Patch20: httpd-2.4.3-release.patch
-Patch23: httpd-2.4.4-export.patch
+#Patch23: httpd-2.4.4-export.patch
Patch24: httpd-2.4.1-corelimit.patch
-Patch26: httpd-2.4.4-r1337344+.patch
+#Patch26: httpd-2.4.4-r1337344+.patch
Patch27: httpd-2.4.2-icons.patch
Patch28: httpd-2.4.4-r1332643+.patch
Patch30: httpd-2.4.4-cachehardmax.patch
-Patch31: httpd-2.4.18-sslmultiproxy.patch
-Patch34: httpd-2.4.17-socket-activation.patch
-Patch35: httpd-2.4.17-sslciphdefault.patch
+#Patch31: httpd-2.4.18-sslmultiproxy.patch
+Patch34: httpd-2.4.33-socket-activation.patch
+#Patch35: httpd-2.4.33-sslciphdefault.patch
# Bug fixes
-Patch55: httpd-2.4.4-malformed-host.patch
-Patch56: httpd-2.4.4-mod_unique_id.patch
-Patch57: httpd-2.4.10-sigint.patch
+#Patch55: httpd-2.4.4-malformed-host.patch
+#Patch56: httpd-2.4.4-mod_unique_id.patch
+#Patch57: httpd-2.4.10-sigint.patch
# For /var/www/html
Requires: webserver-base
Requires(post): openssl makedev
Requires(preun): rpm-helper >= 0.24.8-1
+BuildRequires: apr-devel apr-util-devel
+
%description
This package contains the main binary of apache, a powerful, full-featured,
efficient and freely-available Web server. Apache is also the most popular Web
%patch6 -p1 -b .apctlsystemd
%patch7 -p1 -b .detectsystemd
-%patch23 -p1 -b .export
+#%patch23 -p1 -b .export
%patch24 -p1 -b .corelimit
-%patch26 -p1 -b .r1337344+
+#%patch26 -p1 -b .r1337344+
%patch27 -p1 -b .icons
%patch30 -p1 -b .cachehardmax
-%patch31 -p1 -b .sslmultiproxy
+#%patch31 -p1 -b .sslmultiproxy
%patch34 -p1 -b .socketactivation
-%patch35 -p1 -b .sslciphdefault
+#%patch35 -p1 -b .sslciphdefault
-%patch55 -p1 -b .malformedhost
-%patch56 -p1 -b .uniqueid
-%patch57 -p1 -b .sigint
+#%patch55 -p1 -b .malformedhost
+#%patch56 -p1 -b .uniqueid
+#%patch57 -p1 -b .sigint
# Patch in vendor/release string
sed "s/@RELEASE@/%{product_distribution}/" < %{PATCH20} | patch -p1
# regenerate configure scripts
autoheader && autoconf || exit 1
+# Required to be able to run as root
export CFLAGS="$RPM_OPT_FLAGS -DBIG_SECURITY_HOLE"
export LDFLAGS="-Wl,-z,relro,-z,now"
%make
export CFLAGS="$RPM_OPT_FLAGS"
-# -m64 -std=c99 -pedantic -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
gcc index.bin.c -o index.bin
%install
#IHttpd sbin
install -D -p -m 755 ihttpd %{buildroot}%{_sbindir}/ihttpd
-#Tmpfiles.d config
-install -D -p -m 644 %{SOURCE14} %{buildroot}%{_tmpfilesdir}/ihttpd.conf
-
#IHttpd dracut config
install -D -p -m 644 %{SOURCE18} %{buildroot}%{_sysconfdir}/dracut.conf.d/99-%{name}.conf
#Ihttpd files
install -d -m 755 %{buildroot}%{_prefix}/lib/%{name}
-install -D -p -m 755 index.bin %{buildroot}%{_prefix}/lib/%{name}/index.bin
+install -D -p -m 755 index.bin %{buildroot}%{_prefix}/lib/%{name}/
install -D -p -m 755 %{SOURCE2} %{buildroot}%{_prefix}/lib/%{name}/reboot.bin
-install -D -p -m 644 %{SOURCE20} %{buildroot}%{_prefix}/lib/%{name}/ihttpd.conf
-install -D -p -m 644 %{SOURCE15} %{buildroot}%{_prefix}/lib/%{name}/ihttpd.service
+install -D -p -m 644 %{SOURCE20} %{buildroot}%{_prefix}/lib/%{name}/
+install -D -p -m 644 %{SOURCE15} %{buildroot}%{_prefix}/lib/%{name}/
+install -D -p -m 644 %{SOURCE16} %{buildroot}%{_prefix}/lib/%{name}/
-%find_lang %name
+#%find_lang %name
%post
-%_tmpfilescreate %{name}
%_create_ssl_certificate %{name}
%files -n %name
%config(noreplace) %{_prefix}/lib/%{name}/%{name}.conf
%config(noreplace) %{_sysconfdir}/dracut.conf.d/99-%{name}.conf
%{_sbindir}/%{name}
-%{_tmpfilesdir}/%{name}.conf
%dir %{_prefix}/lib/dracut/modules.d/99ihttpd
%{_prefix}/lib/dracut/modules.d/99ihttpd/module-setup.sh
%dir %{_prefix}/lib/%{name}
%{_prefix}/lib/%{name}/%{name}.service
+%{_prefix}/lib/%{name}/debug-sshd.service
%{_prefix}/lib/%{name}/index.bin
%{_prefix}/lib/%{name}/reboot.bin