Accepting request 215346 from devel:libraries:c_c++

- refresh libmicrohttpd-drop-test_tls_options.patch
  - add there also ignoring test_https_sni
- Update to 0.9.33
  + Fixed an issue with a missing argument in the postexample.
  + Fixed issue with bogus offset increment involving sendfile on
    GNU/Linux.  Adding support for SNI.
  + Fix for per-worker daemon pipes enabled with
    MHD_USE_SUSPEND_RESUME that were not closed in MHD_stop_daemon.
  + Fixing warnings and build issue if --disable-https is given to
    configure.
  +
  0.9.32:
  + Security fix: do not read past 0-terminator when unescaping
    strings (thanks to Florian Weimer for reporting).
  + Signaling n times for shutdown works, but for resume we need to
    wake up the correct daemon. Even if we signal n times in
    that case also, there's no guarantee that some daemon can't
    run through its select loop more than once before the
    daemon we want to wake up gets a chance to read.  Thus we
    need a signal pipe per thread in the thread pool IF
    MHD_suspend_connection is used.  This introduces a new flag
    MHD_USE_SUSPEND_RESUME to add those additional pipes and
    only allow MHD_suspend_connection to be used in conjunction
    with this flag.
    Also, as MHD_resume_connection() will be called on a
    non-daemon thread, but none of the queue insert/delete
    calls are thread safe, we need to be concerned about (a)
    corrupting the queue, and (b) having to add mutex
    protection around every access to the queues, including
    loops through timer queues, etc. This wasn't a problem (forwarded request 215320 from sleep_walker)

OBS-URL: https://build.opensuse.org/request/show/215346
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libmicrohttpd?expand=0&rev=7
This commit is contained in:
Stephan Kulow 2014-02-02 17:08:52 +00:00 committed by Git OBS Bridge
commit cd961c42c0
7 changed files with 102 additions and 14 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:80f48c82fc1b00ad5945a06c810f268d5fa6482eee24af677997a38e41e2606c
size 1088922

Binary file not shown.

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9587e8497548f820650cd607daf3615ea3272435779378983032c570f1cd559
size 1104292

Binary file not shown.

View File

@ -14,28 +14,33 @@ 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
Index: libmicrohttpd-0.9.33/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 = \
--- libmicrohttpd-0.9.33.orig/src/testcurl/https/Makefile.am
+++ libmicrohttpd-0.9.33/src/testcurl/https/Makefile.am
@@ -30,10 +30,8 @@ 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_sni \
test_https_get_select \
Index: libmicrohttpd-0.9.27/src/testcurl/https/Makefile.in
test_https_get_parallel \
test_https_get_parallel_threads \
Index: libmicrohttpd-0.9.33/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
--- libmicrohttpd-0.9.33.orig/src/testcurl/https/Makefile.in
+++ libmicrohttpd-0.9.33/src/testcurl/https/Makefile.in
@@ -58,8 +58,8 @@ 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) \
- test_https_get$(EXEEXT) test_https_sni$(EXEEXT) \
+TESTS = test_https_multi_daemon$(EXEEXT) \
test_https_get$(EXEEXT) test_https_get_select$(EXEEXT) \
+ test_https_get$(EXEEXT) \
test_https_get_select$(EXEEXT) \
test_https_get_parallel$(EXEEXT) \
test_https_get_parallel_threads$(EXEEXT) \

View File

@ -1,3 +1,86 @@
-------------------------------------------------------------------
Mon Jan 27 19:52:38 UTC 2014 - sleep_walker@suse.cz
- refresh libmicrohttpd-drop-test_tls_options.patch
- add there also ignoring test_https_sni
- Update to 0.9.33
+ Fixed an issue with a missing argument in the postexample.
+ Fixed issue with bogus offset increment involving sendfile on
GNU/Linux. Adding support for SNI.
+ Fix for per-worker daemon pipes enabled with
MHD_USE_SUSPEND_RESUME that were not closed in MHD_stop_daemon.
+ Fixing warnings and build issue if --disable-https is given to
configure.
+
0.9.32:
+ Security fix: do not read past 0-terminator when unescaping
strings (thanks to Florian Weimer for reporting).
+ Signaling n times for shutdown works, but for resume we need to
wake up the correct daemon. Even if we signal n times in
that case also, there's no guarantee that some daemon can't
run through its select loop more than once before the
daemon we want to wake up gets a chance to read. Thus we
need a signal pipe per thread in the thread pool IF
MHD_suspend_connection is used. This introduces a new flag
MHD_USE_SUSPEND_RESUME to add those additional pipes and
only allow MHD_suspend_connection to be used in conjunction
with this flag.
Also, as MHD_resume_connection() will be called on a
non-daemon thread, but none of the queue insert/delete
calls are thread safe, we need to be concerned about (a)
corrupting the queue, and (b) having to add mutex
protection around every access to the queues, including
loops through timer queues, etc. This wasn't a problem
before adding resume; even suspend should be safe since it
happens in a callback from the daemon.
I think it's easier to (a) have MHD_suspend_connection() move
the connection to a suspended queue, (b) have
MHD_resume_connection() mark the connection as resuming,
and then (c) do all the actual queue manipulations in
MHD_select (poll, epoll, etc.) to move the resumed
connections back to their normal queues, in response to the
wake up. The changes are simpler & cleaner. There is a cost
to the basic select loop that is avoided by making
suspend/resume a startup option. The per-worker pipes can
then also be enabled only with that option set.
+ Eliminating theoretical stack overflow by limiting length
of URIs in authentication headers to 32k (only applicable
if the application explicitly raised the memroy limits,
and only applies to MHD_digest_auth_check). Issue was
reported by Florian Weimer.
+ Fix race on shutdown signal with thread pool on non-Linux
systems by signalling n times for n threads.
+ Introduce state to mark connections in suspended state (with
epoll); add missing locking operations in MHD_suspend_connection.
+ Fix definition of MHD_TLS_CONNECTION_INIT.
+ Fixing issue in PostProcessor when getting partial boundary
at the beginning, expanding test suite.
+ Implementing faster processing of upload data in multipart
encoding (thanks to performance analysis by Adam Homolya).
+ Adding support for connection flow control via
MHD_suspend_connection and MHD_resume_connection.
0.9.31:
+ Fixing build issues on OS X with CLOCK_MONOTONIC not being
implemented on OS X.
+ Make libmicrohttpd play nicely with upcoming libgcrypt 1.6.0.
+ Improved configure checks for cURL.
+ Signal connection termination as OK (and not as ERROR) if the
stream was terminated by the callback returning
MHD_CONTENT_READER_END_OF_STREAM. Also, release response
mutex before calling the termination callback, to avoid
possible deadlock if the client destroys the response in
the termination callback (due to non-recursiveness of the
lock).
+ Adding #define MHD_HTTP_HEADER_ACCESS_CONTROL_ALLOW_ORIGIN.
+ Also pass MHD connection handle in URI log callback.
+ Improved check for proper OpenSSL version for
libmicrospdy.
+ Set IPV6_V6ONLY socket option correctly when IPv6 is
enabled (MHD_USE_IPv6) but not dual stack
(MHD_USE_DUAL_STACK)
-------------------------------------------------------------------
Thu Oct 3 12:59:19 UTC 2013 - mvyskocil@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package libmicrohttpd
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2010,2011,2012 Stephan Kleine
#
# All modifications and additions to the file contributed by third parties
@ -21,7 +21,7 @@
%global libmicrospdy libmicrospdy0
Name: libmicrohttpd
Version: 0.9.30
Version: 0.9.33
Release: 0
Summary: Small Embeddable HTTP Server Library
License: LGPL-2.1+