diff --git a/varnish-5.0.0.tar.gz b/varnish-5.0.0.tar.gz deleted file mode 100644 index 6535cd0..0000000 --- a/varnish-5.0.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5101ad72b29d288a07e2e5ded4c2abe850b70ff000c13ceb1764625e83823f4a -size 2472963 diff --git a/varnish-5.1.2-add-fallthrough-comments.patch b/varnish-5.1.2-add-fallthrough-comments.patch new file mode 100644 index 0000000..5568102 --- /dev/null +++ b/varnish-5.1.2-add-fallthrough-comments.patch @@ -0,0 +1,166 @@ +GCC 7 introduces new warnings, including implicit fallthrough in switch blocks; +see https://gcc.gnu.org/gcc-7/changes.html#c-family. This warnings are turned +into errors in our case (-Werror). + +This patch adds comments to make fallthroughs explicit and thus avoids compiler +warnings. + +Note that most of these warnings are located in lib/libvgz, which will be +upgraded in a future release (see commit 5fae561 on master branch at +https://github.com/varnishcache/varnish-cache/commit/5fae561). + +-- +diff -up varnish-5.1.2/lib/libvgz/infback.c.orig varnish-5.1.2/lib/libvgz/infback.c +--- varnish-5.1.2/lib/libvgz/infback.c.orig 2017-06-25 18:25:04.558206683 +0200 ++++ varnish-5.1.2/lib/libvgz/infback.c 2017-06-25 18:25:16.410207203 +0200 +@@ -477,6 +477,7 @@ void FAR *out_desc; + } + Tracev((stderr, "inflate: codes ok\n")); + state->mode = LEN; ++ /* FALLTHROUGH */ + + case LEN: + /* use inflate_fast() if we have enough input and output */ +diff -up varnish-5.1.2/lib/libvgz/inflate.c.orig varnish-5.1.2/lib/libvgz/inflate.c +--- varnish-5.1.2/lib/libvgz/inflate.c.orig 2017-06-25 18:24:51.234206098 +0200 ++++ varnish-5.1.2/lib/libvgz/inflate.c 2017-06-25 18:25:42.098208329 +0200 +@@ -719,6 +719,7 @@ int flush; + if (state->flags & 0x0200) CRC2(state->check, hold); + INITBITS(); + state->mode = EXLEN; ++ /* FALLTHROUGH */ + case EXLEN: + if (state->flags & 0x0400) { + NEEDBITS(16); +@@ -731,6 +732,7 @@ int flush; + else if (state->head != Z_NULL) + state->head->extra = Z_NULL; + state->mode = EXTRA; ++ /* FALLTHROUGH */ + case EXTRA: + if (state->flags & 0x0400) { + copy = state->length; +@@ -753,6 +755,7 @@ int flush; + } + state->length = 0; + state->mode = NAME; ++ /* FALLTHROUGH */ + case NAME: + if (state->flags & 0x0800) { + if (have == 0) goto inf_leave; +@@ -774,6 +777,7 @@ int flush; + state->head->name = Z_NULL; + state->length = 0; + state->mode = COMMENT; ++ /* FALLTHROUGH */ + case COMMENT: + if (state->flags & 0x1000) { + if (have == 0) goto inf_leave; +@@ -794,6 +798,7 @@ int flush; + else if (state->head != Z_NULL) + state->head->comment = Z_NULL; + state->mode = HCRC; ++ /* FALLTHROUGH */ + case HCRC: + if (state->flags & 0x0200) { + NEEDBITS(16); +@@ -817,6 +822,7 @@ int flush; + strm->adler = state->check = ZSWAP32(hold); + INITBITS(); + state->mode = DICT; ++ /* FALLTHROUGH */ + case DICT: + if (state->havedict == 0) { + RESTORE(); +@@ -824,8 +830,10 @@ int flush; + } + strm->adler = state->check = adler32(0L, Z_NULL, 0); + state->mode = TYPE; ++ /* FALLTHROUGH */ + case TYPE: + if (flush == Z_BLOCK || flush == Z_TREES) goto inf_leave; ++ /* FALLTHROUGH */ + case TYPEDO: + if (strm->start_bit == 0) + strm->start_bit = 8 * (strm->total_in + in - have) - bits; +@@ -881,8 +889,10 @@ int flush; + INITBITS(); + state->mode = COPY_; + if (flush == Z_TREES) goto inf_leave; ++ /* FALLTHROUGH */ + case COPY_: + state->mode = COPY; ++ /* FALLTHROUGH */ + case COPY: + copy = state->length; + if (copy) { +@@ -1022,8 +1032,10 @@ int flush; + Tracev((stderr, "inflate: codes ok\n")); + state->mode = LEN_; + if (flush == Z_TREES) goto inf_leave; ++ /* FALLTHROUGH */ + case LEN_: + state->mode = LEN; ++ /* FALLTHROUGH */ + case LEN: + if (have >= 6 && left >= 258) { + RESTORE(); +@@ -1073,6 +1085,7 @@ int flush; + } + state->extra = (unsigned)(here.op) & 15; + state->mode = LENEXT; ++ /* FALLTHROUGH */ + case LENEXT: + if (state->extra) { + NEEDBITS(state->extra); +@@ -1083,6 +1096,7 @@ int flush; + Tracevv((stderr, "inflate: length %u\n", state->length)); + state->was = state->length; + state->mode = DIST; ++ /* FALLTHROUGH */ + case DIST: + for (;;) { + here = state->distcode[BITS(state->distbits)]; +@@ -1110,6 +1124,7 @@ int flush; + state->offset = (unsigned)here.val; + state->extra = (unsigned)(here.op) & 15; + state->mode = DISTEXT; ++ /* FALLTHROUGH */ + case DISTEXT: + if (state->extra) { + NEEDBITS(state->extra); +@@ -1126,6 +1141,7 @@ int flush; + #endif + Tracevv((stderr, "inflate: distance %u\n", state->offset)); + state->mode = MATCH; ++ /* FALLTHROUGH */ + case MATCH: + if (left == 0) goto inf_leave; + copy = out - left; +@@ -1201,6 +1217,7 @@ int flush; + } + #ifdef GUNZIP + state->mode = LENGTH; ++ /* FALLTHROUGH */ + case LENGTH: + if (state->wrap && state->flags) { + NEEDBITS(32); +@@ -1214,6 +1231,7 @@ int flush; + } + #endif + state->mode = DONE; ++ /* FALLTHROUGH */ + case DONE: + ret = Z_STREAM_END; + goto inf_leave; +diff -up varnish-5.1.2/bin/varnishadm/varnishadm.c.orig varnish-5.1.2/bin/varnishadm/varnishadm.c +--- varnish-5.1.2/bin/varnishadm/varnishadm.c.orig 2017-06-25 18:38:35.790242267 +0200 ++++ varnish-5.1.2/bin/varnishadm/varnishadm.c 2017-06-25 18:41:45.510250589 +0200 +@@ -462,6 +462,7 @@ main(int argc, char * const *argv) + case 'h': + /* Usage help */ + usage(0); ++ break; + case 'n': + n_arg = optarg; + break; diff --git a/varnish-5.1.2.tar.gz b/varnish-5.1.2.tar.gz new file mode 100644 index 0000000..6759282 --- /dev/null +++ b/varnish-5.1.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39d858137e26948a7c85f07363f13f0778da61d234126e03a160a0cb9ba4fce3 +size 2597817 diff --git a/varnish.changes b/varnish.changes index 96998dc..b4350e1 100644 --- a/varnish.changes +++ b/varnish.changes @@ -1,3 +1,83 @@ +------------------------------------------------------------------- +Fri Jun 23 19:42:07 UTC 2017 - antoine.belvire@opensuse.org + +- Update to version 5.1.2: + * Fix an endless loop in Backend Polling (#2295) + * Fix a Chunked bug in tight workspaces (#2207, #2275) + * Fix a bug relating to req.body when on waitinglist (#2266) + * Handle EPIPE on broken TCP connections (#2267) + * Work around the x86 arch's turbo-double FP format in parameter + setup code. (#1875) + * Fix race related to backend probe with proxy header (#2278) + * Keep VCL temperature consistent between mgt/worker also when + worker protests. + * A lot of HTTP/2 fixes. +- Changes introduced by version 5.1.1: + * Fix bug introduced by stubborn old bugger right before release + 5.1.0 was cut. +- Changes introduced by version 5.1.0: + * Added varnishd command-line options -I, -x and -?, and + tightened restrictions on permitted combinations of options. + * More progress on support for HTTP/2. + * Add ``return(fail)`` to almost all VCL subroutines. + * Restored the old hit-for-pass, invoked with + ``return(pass(DURATION))`` from + ``vcl_backend_response``. hit-for-miss remains the default. + Added the cache_hitmiss stat, and cache_hitpass only counts the + new/old hit-for-pass cases. Restored HitPass to the Varnish + log, and added HitMiss. Added the HFP prefix to TTL log entries + to log a hit-for-pass duration. + * Rolled back the fix for #1206. Client delivery decides solely + whether to send a 304 client response, based on client request + and response headers. + * Added vtest.sh. + * Added vxid as a lefthand side for VSL queries. + * Added the setenv and write_body commands for Varnish test cases + (VTCs). err_shell is deprecated. Also added the operators + -cliexpect, -match and -hdrlen, and -reason replaces -msg. + Added the ${bad_backend} macro. + * varnishtest can be stopped with the TERM, INT and KILL signals, + but not with HUP. + * The fallback director has now an extra, optional parameter to + keep using the current backend until it falls sick. + * VMOD shared libraries are now copied to the workdir, to avoid + problems when VMODs are updated via packaging systems. + * Bump the VRT version to 6.0. + * Export more symbols from libvarnishapi.so. + * The size of the VSL log is limited to 4G-1b, placing upper + bounds on the -l option and the vsl_space and vsm_space + parameters. + * Added parameters clock_step, thread_pool_reserve and + ban_cutoff. + * Parameters vcl_dir and vmod_dir are deprecated, use vcl_path + and vmod_path instead. + * All parameters are defined, even on platforms that don't + support them. An unsupported parameter is documented as such in + param.show. Setting such a parameter is not an error, but has + no effect. + * Clarified the interpretations of the + and - operators in VCL + with operands of the various data types. + * DURATION types may be used in boolean contexts. + * INT, DURATION and REAL values can now be negative. + * Response codes 1000 or greater may now be set in VCL + internally. resp.status is delivered modulo 1000 in client + responses. + * IP addresses can be compared for equality in VCL. + * Introduce the STEVEDORE data type, and the objects + storage.SNAME in VCL. Added req.storage and beresp.storage; + beresp.storage_hint is deprecated. + * Retired the umem stevedore. + * req.ttl is deprecated. + * Added std.getenv() and std.late_100_continue(). + * The fetch_failed stat is incremented for any kind of fetch + failure. + * Added the stats n_test_gunzip and + bans_lurker_obj_killed_cutoff. + * Clarified the meanings of the %r, %{X}i and %{X}o formatters in + varnishncsa. +- Add varnish-5.1.2-add-fallthrough-comments.patch to fix build + with GCC 7 (boo#1041259). + ------------------------------------------------------------------- Tue May 16 20:14:01 UTC 2017 - dimstar@opensuse.org diff --git a/varnish.spec b/varnish.spec index 9c1919d..ede61d9 100644 --- a/varnish.spec +++ b/varnish.spec @@ -21,7 +21,7 @@ %define pkg_logdir %_localstatedir/log/%name %define pkg_cachedir %_localstatedir/cache/%name Name: varnish -Version: 5.0.0 +Version: 5.1.2 Release: 0 Summary: High-performance HTTP accelerator License: BSD-2-Clause @@ -34,6 +34,8 @@ Source3: varnish.sysconfig Source5: varnish.logrotate Source7: varnish.service Source8: varnishlog.service +# PATCH-FIX-UPSTREAM varnish-5.1.2-add-fallthrough-comments.patch -- Fix build with GCC 7 +Patch: varnish-5.1.2-add-fallthrough-comments.patch BuildRequires: python3-docutils BuildRequires: libxslt BuildRequires: ncurses-devel @@ -94,6 +96,7 @@ This package holds the development files for varnish. %prep %setup -q +%patch -p1 %build export CFLAGS="%optflags -fstack-protector"