Accepting request 984271 from home:13ilya

- Updated nginx.keyring.
- Removed nginx.init.
- Updated to 1.23.0
  * https://nginx.org/en/CHANGES
  * Now header lines are represented as linked lists.
  * Now nginx combines arbitrary header lines with identical
    names when sending to FastCGI, SCGI, and uwsgi backends, in the
    $r->header_in() method of the ngx_http_perl_module, and during lookup
    of the "$http_...", "$sent_http_...", "$sent_trailer_...",
    "$upstream_http_...", and "$upstream_trailer_..." variables.
  * Fixed: if there were multiple "Vary" header lines in the backend
    response, nginx only used the last of them when caching.
  * Fixed: if there were multiple "WWW-Authenticate" header lines in the
    backend response and errors with code 401 were intercepted or the
    "auth_request" directive was used, nginx only sent the first of the
    header lines to the client.
  * The logging level of the "application data after close
    notify" SSL errors has been lowered from "crit" to "info".
  * Fixed: connections might hang if nginx was built on Linux 2.6.17 or
    newer, but was used on systems without EPOLLRDHUP support, notably
    with epoll emulation layers; the bug had appeared in 1.17.5.
  * Fixed: nginx did not cache the response if the "Expires" response
    header line disabled caching, but following "Cache-Control" header
    line enabled caching.

OBS-URL: https://build.opensuse.org/request/show/984271
OBS-URL: https://build.opensuse.org/package/show/server:http/nginx?expand=0&rev=227
This commit is contained in:
Илья Индиго 2022-06-21 23:27:46 +00:00 committed by Git OBS Bridge
parent 1272ec2e71
commit 4539c3c0a0
3 changed files with 44 additions and 326 deletions

View File

@ -1,7 +1,8 @@
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Jun 21 22:43:06 UTC 2022 - Илья Индиго <ilya@ilya.cf> Tue Jun 21 23:26:17 UTC 2022 - Илья Индиго <ilya@ilya.cf>
- Updated nginx.keyring. - Updated nginx.keyring.
- Removed nginx.init.
- Updated to 1.23.0 - Updated to 1.23.0
* https://nginx.org/en/CHANGES * https://nginx.org/en/CHANGES
* Now header lines are represented as linked lists. * Now header lines are represented as linked lists.

View File

@ -1,282 +0,0 @@
#!/bin/sh
#
# Copyright (C) 1995--2007 Marcus Rückert, SUSE / Novell Inc.
#
# This library is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or (at
# your option) any later version.
#
# This library 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
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
#
# /etc/init.d/nginx
# and its symbolic link
# /(usr/)sbin/rcnginx
#
# Template system startup script for some example service/daemon nginx
#
# LSB compatible service control script; see http://www.linuxbase.org/spec/
#
# Note: This template uses functions rc_XXX defined in /etc/rc.status on
# UnitedLinux/SUSE/Novell based Linux distributions. If you want to base your
# script on this template and ensure that it works on non UL based LSB
# compliant Linux distributions, you either have to provide the rc.status
# functions from UL or change the script to work without them.
# See skeleton.compat for a template that works with other distros as well.
#
### BEGIN INIT INFO
# Provides: nginx
# Required-Start: $syslog $remote_fs
# Should-Start: $time ypbind sendmail
# Required-Stop: $syslog $remote_fs
# Should-Stop: $time ypbind sendmail
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: nginx
# Description: nginx
### END INIT INFO
#
# Any extensions to the keywords given above should be preceeded by
# X-VendorTag- (X-UnitedLinux- X-SuSE- for us) according to LSB.
#
# Notes on Required-Start/Should-Start:
# * There are two different issues that are solved by Required-Start
# and Should-Start
# (a) Hard dependencies: This is used by the runlevel editor to determine
# which services absolutely need to be started to make the start of
# this service make sense. Example: nfsserver should have
# Required-Start: $portmap
# Also, required services are started before the dependent ones.
# The runlevel editor will warn about such missing hard dependencies
# and suggest enabling. During system startup, you may expect an error,
# if the dependency is not fulfilled.
# (b) Specifying the init script ordering, not real (hard) dependencies.
# This is needed by insserv to determine which service should be
# started first (and at a later stage what services can be started
# in parallel). The tag Should-Start: is used for this.
# It tells, that if a service is available, it should be started
# before. If not, never mind.
# * When specifying hard dependencies or ordering requirements, you can
# use names of services (contents of their Provides: section)
# or pseudo names starting with a $. The following ones are available
# according to LSB (1.1):
# $local_fs all local file systems are mounted
# (most services should need this!)
# $remote_fs all remote file systems are mounted
# (note that /usr may be remote, so
# many services should Require this!)
# $syslog system logging facility up
# $network low level networking (eth card, ...)
# $named hostname resolution available
# $netdaemons all network daemons are running
# The $netdaemons pseudo service has been removed in LSB 1.2.
# For now, we still offer it for backward compatibility.
# These are new (LSB 1.2):
# $time the system time has been set correctly
# $portmap SunRPC portmapping service available
# UnitedLinux extensions:
# $ALL indicates that a script should be inserted
# at the end
# * The services specified in the stop tags
# (Required-Stop/Should-Stop)
# specify which services need to be still running when this service
# is shut down. Often the entries there are just copies or a subset
# from the respective start tag.
# * Should-Start/Stop are now part of LSB as of 2.0,
# formerly SUSE/Unitedlinux used X-UnitedLinux-Should-Start/-Stop.
# insserv does support both variants.
# * X-UnitedLinux-Default-Enabled: yes/no is used at installation time
# (%fillup_and_insserv macro in %post of many RPMs) to specify whether
# a startup script should default to be enabled after installation.
# It's not used by insserv.
#
# Note on runlevels:
# 0 - halt/poweroff 6 - reboot
# 1 - single user 2 - multiuser without network exported
# 3 - multiuser w/ network (text mode) 5 - multiuser w/ network and X11 (xdm)
#
# Note on script names:
# http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/scrptnames.html
# A registry has been set up to manage the init script namespace.
# http://www.lanana.org/
# Please use the names already registered or register one or use a
# vendor prefix.
# Check for missing binaries (stale symlinks should not happen)
# Note: Special treatment of stop for LSB conformance
NGINX_BIN=/usr/sbin/nginx
test -x $NGINX_BIN || { echo "$NGINX_BIN not installed";
if [ "$1" = "stop" ]; then exit 0;
else exit 5; fi; }
NGINX_PID=/var/run/nginx.pid
# Check for existence of needed config file and read it
#NGINX_CONFIG=/etc/sysconfig/nginx
#test -r $NGINX_CONFIG || { echo "$NGINX_CONFIG not existing";
# if [ "$1" = "stop" ]; then exit 0;
# else exit 6; fi; }
#
# Read config
#. $NGINX_CONFIG
# Source LSB init functions
# providing start_daemon, killproc, pidofproc,
# log_success_msg, log_failure_msg and log_warning_msg.
# This is currently not used by UnitedLinux based distributions and
# not needed for init scripts for UnitedLinux only. If it is used,
# the functions from rc.status should not be sourced or used.
#. /lib/lsb/init-functions
# Shell functions sourced from /etc/rc.status:
# rc_check check and set local and overall rc status
# rc_status check and set local and overall rc status
# rc_status -v be verbose in local rc status and clear it afterwards
# rc_status -v -r ditto and clear both the local and overall rc status
# rc_status -s display "skipped" and exit with status 3
# rc_status -u display "unused" and exit with status 3
# rc_failed set local and overall rc status to failed
# rc_failed <num> set local and overall rc status to <num>
# rc_reset clear both the local and overall rc status
# rc_exit exit appropriate to overall rc status
# rc_active checks whether a service is activated by symlinks
. /etc/rc.status
# Reset status of this service
rc_reset
# Return values acc. to LSB for all commands but status:
# 0 - success
# 1 - generic or unspecified error
# 2 - invalid or excess argument(s)
# 3 - unimplemented feature (e.g. "reload")
# 4 - user had insufficient privileges
# 5 - program is not installed
# 6 - program is not configured
# 7 - program is not running
# 8--199 - reserved (8--99 LSB, 100--149 distrib, 150--199 appl)
#
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signaling is not supported) are
# considered a success.
case "$1" in
start)
echo -n "Starting nginx "
## Start daemon with startproc(8). If this fails
## the return value is set appropriately by startproc.
/sbin/startproc -p $NGINX_PID $NGINX_BIN
# Remember status and be verbose
rc_status -v
;;
stop)
echo -n "Shutting down nginx "
## Stop daemon with killproc(8) and if this fails
## killproc sets the return value according to LSB.
/sbin/killproc -p $NGINX_PID -TERM $NGINX_BIN
# Remember status and be verbose
rc_status -v
;;
try-restart|condrestart)
## Do a restart only if the service was active before.
## Note: try-restart is now part of LSB (as of 1.9).
## RH has a similar command named condrestart.
if test "$1" = "condrestart"; then
echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"
fi
$0 status
if test $? = 0; then
$0 restart
else
rc_reset # Not running is not a failure.
fi
# Remember status and be quiet
rc_status
;;
restart)
## Stop the service and regardless of whether it was
## running or not, start it again.
$0 stop
$0 start
# Remember status and be quiet
rc_status
;;
force-reload)
## Signal the daemon to reload its config. Most daemons
## do this on signal 1 (SIGHUP).
## If it does not support it, restart the service if it
## is running.
echo -n "Reload service nginx "
## if it supports it:
/sbin/killproc -p $NGINX_PID -HUP $NGINX_BIN
#touch /run/nginx.pid
rc_status -v
## Otherwise:
#$0 try-restart
#rc_status
;;
reload)
## Like force-reload, but if daemon does not support
## signaling, do nothing (!)
# If it supports signaling:
echo -n "Reload service nginx "
/sbin/killproc -p $NGINX_PID -HUP $NGINX_BIN
#touch /run/nginx.pid
rc_status -v
## Otherwise if it does not support reload:
#rc_failed 3
#rc_status -v
;;
reopen)
echo -n "Reopen the logfiles "
/sbin/killproc -p $NGINX_PID -USR1 $NGINX_BIN
rc_status -v
;;
status)
echo -n "Checking for service nginx "
## Check status with checkproc(8), if process is running
## checkproc will return with exit status 0.
# Return value is slightly different for the status command:
# 0 - service up and running
# 1 - service dead, but /run/ pid file exists
# 2 - service dead, but /var/lock/ lock file exists
# 3 - service not running (unused)
# 4 - service status unknown :-(
# 5--199 reserved (5--99 LSB, 100--149 distro, 150--199 appl.)
# NOTE: checkproc returns LSB compliant status values.
/sbin/checkproc -p $NGINX_PID $NGINX_BIN
# NOTE: rc_status knows that we called this init script with
# "status" option and adapts its messages accordingly.
rc_status -v
;;
probe)
## Optional: Probe for the necessity of a reload, print out the
## argument to this init script which is required for a reload.
## Note: probe is not (yet) part of LSB (as of 1.9)
test /etc/nginx/nginx.conf -nt /run/nginx.pid && echo reload
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit

View File

@ -30,26 +30,25 @@ License: BSD-2-Clause
Group: Productivity/Networking/Web/Proxy Group: Productivity/Networking/Web/Proxy
URL: https://nginx.org URL: https://nginx.org
Source0: https://nginx.org/download/%{name}-%{version}.tar.gz Source0: https://nginx.org/download/%{name}-%{version}.tar.gz
Source1: nginx.init Source1: https://nginx.org/download/%{name}-%{version}.tar.gz.asc
Source2: nginx.logrotate Source2: https://nginx.org/keys/nginx_signing.key#/%{name}.keyring
Source3: nginx.service Source3: %{name}.rpmlintrc
Source9: nginx.sysusers Source4: %{name}.logrotate
Source100: nginx.rpmlintrc Source5: %{name}.service
Source101: https://nginx.org/download/%{name}-%{version}.tar.gz.asc Source6: %{name}.sysusers
Source102: https://nginx.org/keys/nginx_signing.key#/%{name}.keyring
# PATCH-FIX-UPSTREAM nginx-1.11.2-no_Werror.patch # PATCH-FIX-UPSTREAM nginx-1.11.2-no_Werror.patch
Patch0: nginx-1.11.2-no_Werror.patch Patch0: %{name}-1.11.2-no_Werror.patch
# PATCH-FIX-OPENSUSE nginx-1.11.2-html.patch # PATCH-FIX-OPENSUSE nginx-1.11.2-html.patch
Patch1: nginx-1.11.2-html.patch Patch1: %{name}-1.11.2-html.patch
# PATCH-FIX-UPSTREAM nginx-1.2.4-perl_vendor_install.patch # PATCH-FIX-UPSTREAM nginx-1.2.4-perl_vendor_install.patch
Patch2: nginx-1.2.4-perl_vendor_install.patch Patch2: %{name}-1.2.4-perl_vendor_install.patch
# PATCH-FIX-UPSTREAM fix /etc/nginx/nginx.conf to suit Linux env # PATCH-FIX-UPSTREAM fix /etc/nginx/nginx.conf to suit Linux env
Patch3: nginx-1.6.1-default_config.patch Patch3: %{name}-1.6.1-default_config.patch
# PATCH-FIX-UPSTREAM nginx-aio.patch fix support for Linux AIO # PATCH-FIX-UPSTREAM nginx-aio.patch fix support for Linux AIO
Patch4: nginx-aio.patch Patch4: %{name}-aio.patch
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: libatomic-ops-devel BuildRequires: libatomic-ops-devel
BuildRequires: nginx-macros BuildRequires: %{name}-macros
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: sysuser-shadow BuildRequires: sysuser-shadow
BuildRequires: sysuser-tools BuildRequires: sysuser-tools
@ -62,10 +61,10 @@ BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(zlib)
%requires_eq perl %requires_eq perl
Recommends: logrotate Recommends: logrotate
Recommends: nginx-module-fancyindex Recommends: %{name}-module-fancyindex
Recommends: nginx-module-geoip2 Recommends: %{name}-module-geoip2
Recommends: nginx-module-headers-more Recommends: %{name}-module-headers-more
Recommends: nginx-module-http-flv Recommends: %{name}-module-http-flv
Provides: http_daemon Provides: http_daemon
Provides: httpd Provides: httpd
%{?systemd_ordering} %{?systemd_ordering}
@ -76,10 +75,10 @@ BuildRequires: google-perftools-devel
%endif %endif
%description %description
nginx [engine x] is a HTTP server and IMAP/POP3 proxy server written by Igor Sysoev. %{name} [engine x] is a HTTP server and IMAP/POP3 proxy server written by Igor Sysoev.
It has been running on many heavily loaded Russian sites for more than two years. It has been running on many heavily loaded Russian sites for more than two years.
%package -n nginx-source %package source
Summary: The nginx source Summary: The nginx source
Group: Development/Sources Group: Development/Sources
Requires: gcc-c++ Requires: gcc-c++
@ -92,11 +91,11 @@ Requires: pkgconfig(libpcre2-8)
Requires: pkgconfig(libxslt) Requires: pkgconfig(libxslt)
Requires: pkgconfig(openssl) Requires: pkgconfig(openssl)
Requires: pkgconfig(zlib) Requires: pkgconfig(zlib)
%requires_ge nginx-macros %requires_ge %{name}-macros
BuildArch: noarch BuildArch: noarch
%description -n nginx-source %description source
The source of nginx [engine x] HTTP server and IMAP/POP3 proxy server. The source of %{name} [engine x] HTTP server and IMAP/POP3 proxy server.
%prep %prep
%setup -q %setup -q
@ -120,17 +119,17 @@ sed -i 's/^\(#define NGX_LISTEN_BACKLOG \).*/\1-1/' src/os/unix/ngx_linux_config
%{ngx_configure} %{ngx_configure}
%make_build %make_build
%sysusers_generate_pre %{SOURCE9} nginx nginx.conf %sysusers_generate_pre %{SOURCE6} %{name} %{name}.conf
%install %install
%make_install %make_install
%perl_process_packlist %perl_process_packlist
install -dpm0750 %{buildroot}%{ngx_home}/{,tmp,proxy,fastcgi,scgi,uwsgi} install -dpm0750 %{buildroot}%{ngx_home}/{,tmp,proxy,fastcgi,scgi,uwsgi}
install -Dpm0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} install -Dpm0644 %{SOURCE4} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
install -Dpm0644 %{SOURCE3} %{buildroot}%{_unitdir}/nginx.service install -Dpm0644 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}.service
install -Dpm0644 %{SOURCE9} %{buildroot}%{_sysusersdir}/nginx.conf install -Dpm0644 %{SOURCE6} %{buildroot}%{_sysusersdir}/%{name}.conf
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcnginx ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
rm %{buildroot}/srv/www/htdocs/index.html rm %{buildroot}/srv/www/htdocs/index.html
@ -138,13 +137,13 @@ mkdir -p %{buildroot}%{ngx_doc_dir}
cp -av CHANGES* LICENSE \ cp -av CHANGES* LICENSE \
%{buildroot}%{ngx_doc_dir} %{buildroot}%{ngx_doc_dir}
mkdir -p %{buildroot}%{_datadir}/nginx/ mkdir -p %{buildroot}%{_datadir}/%{name}/
mkdir -p %{buildroot}%{ngx_conf_dir}/vhosts.d/ mkdir -p %{buildroot}%{ngx_conf_dir}/vhosts.d/
mkdir -p %{buildroot}%{ngx_conf_dir}/conf.d/ mkdir -p %{buildroot}%{ngx_conf_dir}/conf.d/
chmod a+rx contrib/geo2nginx.pl chmod a+rx contrib/geo2nginx.pl
cp -av contrib/geo2nginx.pl contrib/unicode2nginx/ \ cp -av contrib/geo2nginx.pl contrib/unicode2nginx/ \
%{buildroot}%{_datadir}/nginx/ %{buildroot}%{_datadir}/%{name}/
mkdir -p %{buildroot}%{src_install_dir} mkdir -p %{buildroot}%{src_install_dir}
tar -xzf %{SOURCE0} --strip-components=1 -C %{buildroot}%{src_install_dir} tar -xzf %{SOURCE0} --strip-components=1 -C %{buildroot}%{src_install_dir}
@ -158,17 +157,17 @@ copydocs() {
popd popd
} }
%pre -f nginx.pre %pre -f %{name}.pre
%service_add_pre nginx.service %service_add_pre %{name}.service
%preun %preun
%service_del_preun nginx.service %service_del_preun %{name}.service
%post %post
%service_add_post nginx.service %service_add_post %{name}.service
%postun %postun
%service_del_postun nginx.service %service_del_postun %{name}.service
%files %files
%dir %{ngx_conf_dir}/ %dir %{ngx_conf_dir}/
@ -181,7 +180,7 @@ copydocs() {
%config(noreplace) %{ngx_conf_dir}/mime.types %config(noreplace) %{ngx_conf_dir}/mime.types
%config %{ngx_conf_dir}/mime.types.default %config %{ngx_conf_dir}/mime.types.default
%config(noreplace) %{ngx_conf_dir}/nginx.conf %config(noreplace) %{ngx_conf_dir}/nginx.conf
%config %{ngx_conf_dir}/nginx.conf.default %config %{ngx_conf_dir}/%{name}.conf.default
%config(noreplace) %{ngx_conf_dir}/fastcgi.conf %config(noreplace) %{ngx_conf_dir}/fastcgi.conf
%config %{ngx_conf_dir}/fastcgi.conf.default %config %{ngx_conf_dir}/fastcgi.conf.default
%config(noreplace) %{ngx_conf_dir}/win-utf %config(noreplace) %{ngx_conf_dir}/win-utf
@ -189,17 +188,17 @@ copydocs() {
%config %{ngx_conf_dir}/scgi_params.default %config %{ngx_conf_dir}/scgi_params.default
%config(noreplace) %{ngx_conf_dir}/uwsgi_params %config(noreplace) %{ngx_conf_dir}/uwsgi_params
%config %{ngx_conf_dir}/uwsgi_params.default %config %{ngx_conf_dir}/uwsgi_params.default
%{perl_vendorarch}/auto/nginx/ %{perl_vendorarch}/auto/%{name}/
%{perl_vendorarch}/nginx.pm %{perl_vendorarch}/%{name}.pm
%{ngx_sbin_path} %{ngx_sbin_path}
%dir %{_libdir}/nginx/ %dir %{_libdir}/%{name}/
%dir %{ngx_module_dir}/ %dir %{ngx_module_dir}/
%{ngx_module_dir}/ngx_http_image_filter_module.so %{ngx_module_dir}/ngx_http_image_filter_module.so
%{ngx_module_dir}/ngx_http_perl_module.so %{ngx_module_dir}/ngx_http_perl_module.so
%{ngx_module_dir}/ngx_http_xslt_filter_module.so %{ngx_module_dir}/ngx_http_xslt_filter_module.so
%{ngx_module_dir}/ngx_mail_module.so %{ngx_module_dir}/ngx_mail_module.so
%{ngx_module_dir}/ngx_stream_module.so %{ngx_module_dir}/ngx_stream_module.so
%{_mandir}/man3/nginx.3pm* %{_mandir}/man3/%{name}.3pm*
/srv/www/htdocs/50x.html /srv/www/htdocs/50x.html
%{_sbindir}/rc%{name} %{_sbindir}/rc%{name}
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
@ -211,11 +210,11 @@ copydocs() {
%dir %attr(750,%{ngx_user_group},%{ngx_user_group}) %{ngx_tmp_scgi} %dir %attr(750,%{ngx_user_group},%{ngx_user_group}) %{ngx_tmp_scgi}
%dir %attr(750,%{ngx_user_group},%{ngx_user_group}) %{ngx_tmp_uwsgi} %dir %attr(750,%{ngx_user_group},%{ngx_user_group}) %{ngx_tmp_uwsgi}
%doc %{ngx_doc_dir} %doc %{ngx_doc_dir}
%{_unitdir}/nginx.service %{_unitdir}/%{name}.service
%{_sysusersdir}/nginx.conf %{_sysusersdir}/%{name}.conf
%{_datadir}/nginx/ %{_datadir}/%{name}/
%files -n nginx-source %files source
%{src_install_dir} %{src_install_dir}
%changelog %changelog