Accepting request 177876 from devel:libraries:c_c++
- drop test_tls_options if build is in OBS libmicrohttpd-drop-test_tls_options.patch - More robust make install call - Remove redundant %clean section - Requires(pre) is useless without a %pre script - Update to 0.9.27 + performance improvements for POST processing + new API call to reduce the number of select calls (if in "external" select mode) + new function to allow applications to stop MHD from processing new incoming connections while finishing ongoing requests + fixes an initialization problem on some platforms + fixes bug in the postprocessor's URL parser. + SSL connections are no longer dropped if the system uptime is less than the connection timeout + allows creating responses with zero bytes using MHD_create_response_from_callback. + few "const" statements have been added to allow keeping more static strings in ROM. + post processor now tolerates uploads which don't contain "\r\n" and also returns keys which don't have a matching value + fixes the loss of a parameter in processing POST data from IE8 and Chrome. It automatically sets a "Connection: close" header if the client requests the connection to be closed. Finally, given both 'chunked' encoding and 'content-length', MHD now ignores the 'content-length' header as per the RFC + adds support for building libmicrohttpd for Android + fixes an issue with data in TLS buffers sometimes not being completely OBS-URL: https://build.opensuse.org/request/show/177876 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libmicrohttpd?expand=0&rev=3
This commit is contained in:
commit
402541fdbc
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:198daebb695eb6b97923200a26c143d38c11b582019927a75b2872ae4ec2f687
|
|
||||||
size 829899
|
|
3
libmicrohttpd-0.9.27.tar.gz
Normal file
3
libmicrohttpd-0.9.27.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:d532edf64c3a9da472114c2d10fc94606e3b31f21b883ec2e796ab8478f7e9cb
|
||||||
|
size 879531
|
BIN
libmicrohttpd-0.9.27.tar.gz.sig
Normal file
BIN
libmicrohttpd-0.9.27.tar.gz.sig
Normal file
Binary file not shown.
41
libmicrohttpd-drop-test_tls_options.patch
Normal file
41
libmicrohttpd-drop-test_tls_options.patch
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
From: Michal Vyskocil <mvyskocil@suse.com>
|
||||||
|
Subject: Drop test_tls_options
|
||||||
|
|
||||||
|
test_tls_options fails in OBS, but not in local build. So lets skip it from OBS
|
||||||
|
builds.
|
||||||
|
|
||||||
|
/usr/bin/make check-TESTS
|
||||||
|
make[5]: Entering directory `/home/abuild/rpmbuild/BUILD/libmicrohttpd-0.9.27/src/testcurl/https'
|
||||||
|
curl version: libcurl/7.30.0 OpenSSL/1.0.1e zlib/1.2.8 libidn/1.25 libssh2/1.4.3
|
||||||
|
The following handshake should fail (and print an error message)...
|
||||||
|
curl_easy_perform failed: `SSL connect error'
|
||||||
|
Fatal error in GNU libmicrohttpd daemon.c:2717: Failed to join a thread
|
||||||
|
|
||||||
|
/bin/sh: line 5: 15991 Aborted ${dir}$tst
|
||||||
|
FAIL: test_tls_options
|
||||||
|
|
||||||
|
Index: libmicrohttpd-0.9.27/src/testcurl/https/Makefile.am
|
||||||
|
===================================================================
|
||||||
|
--- libmicrohttpd-0.9.27.orig/src/testcurl/https/Makefile.am
|
||||||
|
+++ libmicrohttpd-0.9.27/src/testcurl/https/Makefile.am
|
||||||
|
@@ -29,7 +29,6 @@ check_PROGRAMS = \
|
||||||
|
EXTRA_DIST = cert.pem key.pem tls_test_keys.h tls_test_common.h
|
||||||
|
|
||||||
|
TESTS = \
|
||||||
|
- test_tls_options \
|
||||||
|
test_https_multi_daemon \
|
||||||
|
test_https_get \
|
||||||
|
test_https_get_select \
|
||||||
|
Index: libmicrohttpd-0.9.27/src/testcurl/https/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- libmicrohttpd-0.9.27.orig/src/testcurl/https/Makefile.in
|
||||||
|
+++ libmicrohttpd-0.9.27/src/testcurl/https/Makefile.in
|
||||||
|
@@ -58,7 +58,7 @@ check_PROGRAMS = test_tls_options$(EXEEX
|
||||||
|
test_https_get_parallel_threads$(EXEEXT) \
|
||||||
|
test_https_session_info$(EXEEXT) test_https_time_out$(EXEEXT) \
|
||||||
|
test_empty_response$(EXEEXT)
|
||||||
|
-TESTS = test_tls_options$(EXEEXT) test_https_multi_daemon$(EXEEXT) \
|
||||||
|
+TESTS = test_https_multi_daemon$(EXEEXT) \
|
||||||
|
test_https_get$(EXEEXT) test_https_get_select$(EXEEXT) \
|
||||||
|
test_https_get_parallel$(EXEEXT) \
|
||||||
|
test_https_get_parallel_threads$(EXEEXT) \
|
@ -1,3 +1,46 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 6 08:15:30 UTC 2013 - mvyskocil@suse.com
|
||||||
|
|
||||||
|
- drop test_tls_options if build is in OBS
|
||||||
|
libmicrohttpd-drop-test_tls_options.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 5 16:42:38 UTC 2013 - jengelh@inai.de
|
||||||
|
|
||||||
|
- More robust make install call
|
||||||
|
- Remove redundant %clean section
|
||||||
|
- Requires(pre) is useless without a %pre script
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu May 16 07:42:59 UTC 2013 - mvyskocil@suse.com
|
||||||
|
|
||||||
|
- Update to 0.9.27
|
||||||
|
+ performance improvements for POST processing
|
||||||
|
+ new API call to reduce the number of select calls (if in "external"
|
||||||
|
select mode)
|
||||||
|
+ new function to allow applications to stop MHD from processing new
|
||||||
|
incoming connections while finishing ongoing requests
|
||||||
|
+ fixes an initialization problem on some platforms
|
||||||
|
+ fixes bug in the postprocessor's URL parser.
|
||||||
|
+ SSL connections are no longer dropped if the system uptime is less
|
||||||
|
than the connection timeout
|
||||||
|
+ allows creating responses with zero bytes using
|
||||||
|
MHD_create_response_from_callback.
|
||||||
|
+ few "const" statements have been added to allow keeping more static
|
||||||
|
strings in ROM.
|
||||||
|
+ post processor now tolerates uploads which don't contain "\r\n" and
|
||||||
|
also returns keys which don't have a matching value
|
||||||
|
+ fixes the loss of a parameter in processing POST data from IE8 and
|
||||||
|
Chrome. It automatically sets a "Connection: close" header if the
|
||||||
|
client requests the connection to be closed. Finally, given both
|
||||||
|
'chunked' encoding and 'content-length', MHD now ignores the
|
||||||
|
'content-length' header as per the RFC
|
||||||
|
+ adds support for building libmicrohttpd for Android
|
||||||
|
+ fixes an issue with data in TLS buffers sometimes not being completely
|
||||||
|
drained if there was no activity on the socket.
|
||||||
|
- reenabled tests and moved to %check
|
||||||
|
- add source verification using gpg
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Oct 3 11:33:35 CEST 2012 - fcrozat@suse.com
|
Wed Oct 3 11:33:35 CEST 2012 - fcrozat@suse.com
|
||||||
|
|
||||||
|
44
libmicrohttpd.keyring
Normal file
44
libmicrohttpd.keyring
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
pub 1024D/48426C7E 2006-12-18
|
||||||
|
uid Christian Grothoff <christian@grothoff.org>
|
||||||
|
sub 4096g/6433E483 2006-12-18
|
||||||
|
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
Version: GnuPG v2.0.19 (GNU/Linux)
|
||||||
|
|
||||||
|
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
|
||||||
|
=b/hy
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package libmicrohttpd
|
# spec file for package libmicrohttpd
|
||||||
#
|
#
|
||||||
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
# Copyright (c) 2010,2011,2012 Stephan Kleine
|
# Copyright (c) 2010,2011,2012 Stephan Kleine
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
@ -20,27 +20,33 @@
|
|||||||
%define soname 10
|
%define soname 10
|
||||||
|
|
||||||
Name: libmicrohttpd
|
Name: libmicrohttpd
|
||||||
Version: 0.9.22
|
Version: 0.9.27
|
||||||
Release: 0
|
Release: 0
|
||||||
|
Summary: Small Embeddable HTTP Server Library
|
||||||
|
License: LGPL-2.1+
|
||||||
|
Group: Productivity/Networking/Web/Servers
|
||||||
Url: http://gnunet.org/libmicrohttpd/
|
Url: http://gnunet.org/libmicrohttpd/
|
||||||
Source: http://ftpmirror.gnu.org/libmicrohttpd/%{name}-%{version}.tar.gz
|
|
||||||
|
Source0: http://ftpmirror.gnu.org/libmicrohttpd/%{name}-%{version}.tar.gz
|
||||||
|
Source1: http://ftpmirror.gnu.org/libmicrohttpd/%{name}-%{version}.tar.gz.sig
|
||||||
|
Source2: libmicrohttpd.keyring
|
||||||
|
#PATCH-FIX-OPENSUSE: test_tls_options fails when running in OBS, so lets drop that one
|
||||||
|
Patch0: libmicrohttpd-drop-test_tls_options.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
BuildRequires: libcurl-devel
|
BuildRequires: libcurl-devel
|
||||||
BuildRequires: libgcrypt-devel >= 1.2.4
|
BuildRequires: libgcrypt-devel >= 1.2.4
|
||||||
BuildRequires: libtasn1-devel
|
BuildRequires: libtasn1-devel
|
||||||
|
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
BuildRequires: libgnutls-devel
|
BuildRequires: libgnutls-devel
|
||||||
BuildRequires: pkg-config
|
BuildRequires: pkg-config
|
||||||
|
%if 0%{?suse_version} >= 1230
|
||||||
|
BuildRequires: gpg-offline
|
||||||
|
%endif
|
||||||
%else
|
%else
|
||||||
BuildRequires: gnutls-devel
|
BuildRequires: gnutls-devel
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Summary: Small Embeddable HTTP Server Library
|
|
||||||
License: LGPL-2.1+
|
|
||||||
Group: Productivity/Networking/Web/Servers
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
GNU libmicrohttpd is a small C library that is supposed to make it easy to run
|
GNU libmicrohttpd is a small C library that is supposed to make it easy to run
|
||||||
an HTTP server as part of another application. GNU libmicrohttpd is free software
|
an HTTP server as part of another application. GNU libmicrohttpd is free software
|
||||||
@ -100,7 +106,8 @@ application, check it out.
|
|||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
Requires: %{name}%{soname} = %{version}
|
Requires: %{name}%{soname} = %{version}
|
||||||
PreReq: info
|
Requires(post): info
|
||||||
|
Requires(postun): info
|
||||||
Summary: Small Embeddable HTTP Server Library
|
Summary: Small Embeddable HTTP Server Library
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
|
|
||||||
@ -132,23 +139,32 @@ application, check it out.
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
|
%if 0%{?suse_version} >= 1230
|
||||||
|
%gpg_verify %{SOURCE1}
|
||||||
|
%endif
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
|
#XXX: test fail inside OBS only
|
||||||
|
%if 0%{?opensuse_bs}
|
||||||
|
%patch0 -p1
|
||||||
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure --disable-static \
|
%configure --disable-static \
|
||||||
--enable-curl
|
--enable-curl
|
||||||
%__make %{?_smp_mflags}
|
%__make %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%makeinstall
|
make install DESTDIR="%buildroot"
|
||||||
find %{buildroot} -name "*.la" -delete
|
find %{buildroot} -name "*.la" -delete
|
||||||
|
|
||||||
# Some tests fail due to some issue in gnutls
|
%check
|
||||||
#check
|
%__make %{?_smp_mflags} check
|
||||||
#__make %{?_smp_mflags} check
|
|
||||||
|
|
||||||
%post -n %{name}%{soname} -p /sbin/ldconfig
|
%post -n %{name}%{soname} -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%postun -n %{name}%{soname} -p /sbin/ldconfig
|
||||||
|
|
||||||
%post devel
|
%post devel
|
||||||
%if 0%{?fedora_version}
|
%if 0%{?fedora_version}
|
||||||
/sbin/install-info --info-dir=%{_infodir} --info-file=%{_infodir}/microhttpd.info%{ext_info}
|
/sbin/install-info --info-dir=%{_infodir} --info-file=%{_infodir}/microhttpd.info%{ext_info}
|
||||||
@ -165,8 +181,6 @@ find %{buildroot} -name "*.la" -delete
|
|||||||
%install_info --info-dir=%{_infodir} %{_infodir}/libmicrohttpd-tutorial.info%{ext_info}
|
%install_info --info-dir=%{_infodir} %{_infodir}/libmicrohttpd-tutorial.info%{ext_info}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%postun -n %{name}%{soname} -p /sbin/ldconfig
|
|
||||||
|
|
||||||
%postun devel
|
%postun devel
|
||||||
%if 0%{?fedora_version} || 0%{?scientificlinux_version} || 0%{?centos_version}
|
%if 0%{?fedora_version} || 0%{?scientificlinux_version} || 0%{?centos_version}
|
||||||
/sbin/install-info --delete --info-dir=%{_infodir} --info-file=%{_infodir}/microhttpd.info%{ext_info}
|
/sbin/install-info --delete --info-dir=%{_infodir} --info-file=%{_infodir}/microhttpd.info%{ext_info}
|
||||||
@ -183,23 +197,19 @@ find %{buildroot} -name "*.la" -delete
|
|||||||
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libmicrohttpd-tutorial.info%{ext_info}
|
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libmicrohttpd-tutorial.info%{ext_info}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%clean
|
|
||||||
test "%{buildroot}" != "/" && %__rm -rf "%{buildroot}"
|
|
||||||
|
|
||||||
%files -n %{name}%{soname}
|
%files -n %{name}%{soname}
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_libdir}/libmicrohttpd.so.%{soname}
|
%{_libdir}/%{name}.so.%{soname}
|
||||||
%{_libdir}/libmicrohttpd.so.%{soname}.*
|
%{_libdir}/%{name}.so.%{soname}.*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%doc ChangeLog
|
%doc ChangeLog
|
||||||
%{_includedir}/microhttpd.h
|
%{_includedir}/microhttpd.h
|
||||||
%{_libdir}/libmicrohttpd.so
|
%{_libdir}/%{name}.so
|
||||||
%{_libdir}/pkgconfig/libmicrohttpd.pc
|
%{_libdir}/pkgconfig/%{name}.pc
|
||||||
%{_infodir}/microhttpd.info*
|
%{_infodir}/%{name}*.info*
|
||||||
%{_infodir}/microhttpd-tutorial.info*
|
%{_mandir}/man3/%{name}.3*
|
||||||
%{_mandir}/man3/libmicrohttpd.3*
|
|
||||||
|
|
||||||
# Do NOT delete this cause I need it for Fedora & Mandriva too!
|
# Do NOT delete this cause I need it for Fedora & Mandriva too!
|
||||||
%if 0%{?fedora_version} || 0%{?scientificlinux_version} || 0%{?centos_version}
|
%if 0%{?fedora_version} || 0%{?scientificlinux_version} || 0%{?centos_version}
|
||||||
|
Loading…
Reference in New Issue
Block a user