platform/upstream/libwebsockets.git
8 years agocruft remove sigusr2 handling
Andy Green [Fri, 22 Apr 2016 13:58:38 +0000 (21:58 +0800)]
cruft remove sigusr2 handling

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agoclient account for retries
Andy Green [Fri, 22 Apr 2016 04:40:44 +0000 (12:40 +0800)]
client account for retries

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agoUpdate libwebsockets.h
hgrundy [Thu, 21 Apr 2016 09:20:10 +0000 (17:20 +0800)]
Update libwebsockets.h

Fix for FreeBSD

8 years agorecv treat zero return as error
Justin Chen [Thu, 14 Apr 2016 13:42:11 +0000 (21:42 +0800)]
recv treat zero return as error

https://github.com/warmcat/libwebsockets/issues/475

8 years agowindows snprintf is _snprintf
Meir Yanovich [Fri, 8 Apr 2016 08:07:46 +0000 (16:07 +0800)]
windows snprintf is _snprintf

https://github.com/warmcat/libwebsockets/issues/411#issuecomment-207290650

8 years agoandroid fix rlimit
Galen Ma [Fri, 8 Apr 2016 08:04:58 +0000 (16:04 +0800)]
android fix rlimit

https://github.com/warmcat/libwebsockets/issues/488

8 years agourldecode forbid malformed
Andy Green [Thu, 7 Apr 2016 10:57:28 +0000 (18:57 +0800)]
urldecode forbid malformed

And update attack.sh to confirm the new test cases

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agolibuv add idle processing to force service where needed
Andy Green [Wed, 6 Apr 2016 01:25:46 +0000 (09:25 +0800)]
libuv add idle processing to force service where needed

https://github.com/warmcat/libwebsockets/issues/485

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agolws_service_adjust_timeout optimize
Andy Green [Wed, 6 Apr 2016 01:39:48 +0000 (09:39 +0800)]
lws_service_adjust_timeout optimize

Make it exit quicker if something is pending

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agorevert 622d9f2 ssl pending handcrank
Andy Green [Tue, 5 Apr 2016 11:51:55 +0000 (19:51 +0800)]
revert 622d9f2 ssl pending handcrank

https://github.com/warmcat/libwebsockets/issues/483

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agowin32 libuv build notes
Meir Yanovich [Tue, 5 Apr 2016 11:51:43 +0000 (19:51 +0800)]
win32 libuv build notes

8 years agowin32 needs strange strftime args
Meir Yanovich [Tue, 5 Apr 2016 11:51:25 +0000 (19:51 +0800)]
win32 needs strange strftime args

8 years agolibuv win32 fixes 2
Meir Yanovich [Mon, 4 Apr 2016 23:31:16 +0000 (07:31 +0800)]
libuv win32 fixes 2

https://github.com/warmcat/libwebsockets/issues/411#issuecomment-204284368

8 years agolibuv win32 fixes
Andy Green [Mon, 4 Apr 2016 23:31:11 +0000 (07:31 +0800)]
libuv win32 fixes

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agouri processing reject paths not starting with slash
Andy Green [Sat, 2 Apr 2016 00:03:48 +0000 (08:03 +0800)]
uri processing reject paths not starting with slash

https://github.com/warmcat/libwebsockets/issues/481

Return 403 Forbidden if we don't end up with a uri path starting with /

Test server already did this, but this makes it built into the
library.

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agov1.7.5
Andy Green [Fri, 1 Apr 2016 01:45:57 +0000 (09:45 +0800)]
v1.7.5

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agotest server align rxbuf with permessage deflate rx buf size
Andy Green [Fri, 1 Apr 2016 01:30:09 +0000 (09:30 +0800)]
test server align rxbuf with permessage deflate rx buf size

Add a test html button that will send 9KB of junk to confirm it

https://github.com/warmcat/libwebsockets/issues/480

permessage-deflate now checks the protocol rx buffer size for being
>=128, if not, permessage-deflate is disabled on that connection.

If it is >=128 but less than the zlib decompress buffer size, the
zlib decompress buffer size for that connection is reduced to the
nearest power of two of the protocol rx buf size.

To test this, dumb_increment is left violating the >= 128 rx buffer
size and permessage-deflte can be seen to be disabled on his
connections in the test html.

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agoFix build with musl libc
V.Krishn [Sun, 8 Mar 2015 09:35:27 +0000 (09:35 +0000)]
Fix build with musl libc

Fix building libwebsockets with the musl C libary.

<sys/cdefs.h> is an internal glibc header and should be avoided in user code.

__P() was used for compatibility with some old K&R C compilers, when there were
no prototypes (which were introduced to C with C89). As supporting legacy
non-ANSI compilers is nowadays not necessary anymore get rid of the unnecessary
function prototype using __P().

8 years agorevert cmake remove targets from install path
Andy Green [Tue, 29 Mar 2016 13:49:47 +0000 (21:49 +0800)]
revert cmake remove targets from install path

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agohttp2 build with alpn capable ssl no debug
Andy Green [Fri, 25 Mar 2016 13:03:01 +0000 (21:03 +0800)]
http2 build with alpn capable ssl no debug

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agolibuv: handle signals only if requested
Denis Osvald [Tue, 22 Mar 2016 14:19:10 +0000 (15:19 +0100)]
libuv: handle signals only if requested

Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
8 years agov1.7.4
Andy Green [Tue, 22 Mar 2016 01:19:32 +0000 (09:19 +0800)]
v1.7.4

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agob64decode correct decode of some strings
Andy Green [Fri, 18 Mar 2016 23:48:24 +0000 (07:48 +0800)]
b64decode correct decode of some strings

https://github.com/warmcat/libwebsockets/issues/467

Signed-off-by: Andy Green <andy@warmcat.com>
8 years agoOptimize payload exhaustion
Alex Hultman [Wed, 16 Mar 2016 22:56:23 +0000 (23:56 +0100)]
Optimize payload exhaustion

https://github.com/warmcat/libwebsockets/pull/462

AG refactor and do loop unrolling

8 years agoappveyor update 1.0.2g
Andy Green [Thu, 17 Mar 2016 00:58:12 +0000 (08:58 +0800)]
appveyor update 1.0.2g

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoclang fixes 1
Andy Green [Tue, 15 Mar 2016 13:24:04 +0000 (21:24 +0800)]
clang fixes 1

https://github.com/warmcat/libwebsockets/issues/461

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoclient perform WSI_CREATE callback
bjqiwei [Tue, 15 Mar 2016 08:27:49 +0000 (16:27 +0800)]
client perform WSI_CREATE callback

8 years agossl ecdh adapt if missing ecdh.h include
Joakim Soderberg [Sat, 12 Mar 2016 00:49:09 +0000 (08:49 +0800)]
ssl ecdh adapt if missing ecdh.h include

https://github.com/warmcat/libwebsockets/issues/457

8 years agoclient ext hdr skip if no arg
Andy Green [Wed, 9 Mar 2016 15:35:41 +0000 (23:35 +0800)]
client ext hdr skip if no arg

https://github.com/warmcat/libwebsockets/issues/453

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agorelease checklist specfile install soname
Andy Green [Wed, 9 Mar 2016 02:48:49 +0000 (10:48 +0800)]
release checklist specfile install soname

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agorpm specfile so install list bump
Andy Green [Wed, 9 Mar 2016 02:45:00 +0000 (10:45 +0800)]
rpm specfile so install list bump

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibev set foreign loop properly
Andy Green [Tue, 8 Mar 2016 23:47:34 +0000 (07:47 +0800)]
libev set foreign loop properly

After gaby64

https://github.com/warmcat/libwebsockets/issues/455

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agowindows deal with no snprintf
Andy Green [Fri, 4 Mar 2016 02:58:52 +0000 (10:58 +0800)]
windows deal with no snprintf

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibuv.c: Service fd with LWS_POLLHUP on poll errors
Alex Hultman [Wed, 2 Mar 2016 10:39:37 +0000 (11:39 +0100)]
libuv.c: Service fd with LWS_POLLHUP on poll errors

8 years agowince minor adaptations
Ondraco [Mon, 29 Feb 2016 23:33:56 +0000 (07:33 +0800)]
wince minor adaptations

https://github.com/warmcat/libwebsockets/issues/444

8 years agov1.7.3 upstream/1.7.3
Andy Green [Mon, 29 Feb 2016 03:30:07 +0000 (11:30 +0800)]
v1.7.3

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibuv when in use skip shutdown close phase
Andy Green [Mon, 29 Feb 2016 03:11:48 +0000 (11:11 +0800)]
libuv when in use skip shutdown close phase

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agowindows listen for pollhup
Andy Green [Mon, 29 Feb 2016 02:08:26 +0000 (10:08 +0800)]
windows listen for pollhup

After Ondraco

https://github.com/warmcat/libwebsockets/issues/441

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server libuv support status protocol
Andy Green [Sun, 28 Feb 2016 17:11:08 +0000 (01:11 +0800)]
test server libuv support status protocol

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibuv create 1Hz background timeout check
Andy Green [Sun, 28 Feb 2016 17:09:01 +0000 (01:09 +0800)]
libuv create 1Hz background timeout check

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoah move more_rx_waiting to wsi scope
Andy Green [Sun, 28 Feb 2016 03:02:42 +0000 (11:02 +0800)]
ah move more_rx_waiting to wsi scope

Originally this was alright in wsi->u.hdr, because ah implied header
processing.  But since we allowed ah to be held across http
keep-alive transactions if we saw we had more header data, it means
we were trying to read this union member out of scope after it had
transitioned.

Moving the more_rx_waiting member to be a 1-bit bifield in the wsi
solves it and lets us check the state any time later at http
transaction completion.

https://github.com/warmcat/libwebsockets/issues/441

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoDon't include <sys/cdefs.h> for NetBSD
Kamil Rytarowski [Sat, 27 Feb 2016 02:18:43 +0000 (03:18 +0100)]
Don't include <sys/cdefs.h> for NetBSD

We needed it for the BSD symbol to be defined, while __NetBSD__ is defined
with a compiler.

Thanks Andy Green for the initial fix.

Signed-off-by: Kamil Rytarowski <n54@gmx.com>
8 years agonetbsd netinet include
Andy Green [Sat, 27 Feb 2016 01:34:48 +0000 (09:34 +0800)]
netbsd netinet include

https://github.com/warmcat/libwebsockets/issues/442

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoforce service properly when unconsumed rxbuf in ah
Andy Green [Fri, 26 Feb 2016 02:50:04 +0000 (10:50 +0800)]
force service properly when unconsumed rxbuf in ah

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoclose wsi must do detatch ah flow even if no ah
Andy Green [Thu, 25 Feb 2016 13:55:06 +0000 (21:55 +0800)]
close wsi must do detatch ah flow even if no ah

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoimprove timeout and ah list comments
Andy Green [Thu, 25 Feb 2016 13:54:31 +0000 (21:54 +0800)]
improve timeout and ah list comments

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoremove ah scan
Andy Green [Thu, 25 Feb 2016 13:54:06 +0000 (21:54 +0800)]
remove ah scan

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agofix missing callback return check
Andy Green [Thu, 25 Feb 2016 12:23:45 +0000 (20:23 +0800)]
fix missing callback return check

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agounix privs change group before user
Andy Green [Thu, 25 Feb 2016 07:15:41 +0000 (15:15 +0800)]
unix privs change group before user

Otherwise we no longer have privs to change the group after doing the user

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server log LWS_CALLBACK_HTTP
Andy Green [Thu, 25 Feb 2016 07:08:03 +0000 (15:08 +0800)]
test server log LWS_CALLBACK_HTTP

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agov1.7.2
Andy Green [Thu, 25 Feb 2016 02:11:01 +0000 (10:11 +0800)]
v1.7.2

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolws status fix LWS_PRE
Andy Green [Thu, 25 Feb 2016 01:27:02 +0000 (09:27 +0800)]
lws status fix LWS_PRE

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agodefeat POLLOUT if socket in shutdown wait
Andy Green [Wed, 24 Feb 2016 13:32:31 +0000 (21:32 +0800)]
defeat POLLOUT if socket in shutdown wait

After andrejs.hanins@ubnt.com

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agows union member must have actual struct at start not pointer
Andy Green [Wed, 24 Feb 2016 05:42:12 +0000 (13:42 +0800)]
ws union member must have actual struct at start not pointer

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoclient callback closed if not upgraded also for server connection
Andrejs Hanins [Wed, 24 Feb 2016 11:18:46 +0000 (19:18 +0800)]
client callback closed if not upgraded also for server connection

https://github.com/warmcat/libwebsockets/issues/437
https://github.com/warmcat/libwebsockets/pull/440

8 years agoclient connect must init position_in_fds_table
Andrejs Hanins [Mon, 22 Feb 2016 15:35:12 +0000 (23:35 +0800)]
client connect must init position_in_fds_table

8 years agowindows doesnt have localtime_r
Andy Green [Sun, 21 Feb 2016 13:41:22 +0000 (21:41 +0800)]
windows doesnt have localtime_r

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server status no ssl include time header
Andy Green [Sun, 21 Feb 2016 07:12:20 +0000 (15:12 +0800)]
test server status no ssl include time header

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server add lws_status
Andy Green [Sun, 21 Feb 2016 05:44:07 +0000 (13:44 +0800)]
test server add lws_status

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoLWS_BUILD_HASH improve
Andy Green [Sun, 21 Feb 2016 05:43:53 +0000 (13:43 +0800)]
LWS_BUILD_HASH improve

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest html add tabs
Andy Green [Sun, 21 Feb 2016 05:43:41 +0000 (13:43 +0800)]
test html add tabs

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibwebsockets.org url updates
Andy Green [Sun, 21 Feb 2016 02:49:04 +0000 (10:49 +0800)]
libwebsockets.org url updates

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolwsl stderr sink use formatted time
Sebastian Reimer [Sat, 20 Feb 2016 23:45:03 +0000 (07:45 +0800)]
lwsl stderr sink use formatted time

AG change to use localtime_r for threadsafety and leave old method as fallback

8 years agossl get rid of build_cert_chain
Andy Green [Sat, 20 Feb 2016 23:10:55 +0000 (07:10 +0800)]
ssl get rid of build_cert_chain

It's not supported on major distro SSL (Fedora is 1.1) and
libressl (on 2.x) doesn't have it either.

https://github.com/warmcat/libwebsockets/issues/435

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoStop uv loop in default signal handler, clean-ups
Alex Hultman [Sat, 20 Feb 2016 15:01:12 +0000 (16:01 +0100)]
Stop uv loop in default signal handler, clean-ups

8 years agoMake sure every handle is closed before destroying the uv loop
Alex Hultman [Sat, 20 Feb 2016 14:32:57 +0000 (15:32 +0100)]
Make sure every handle is closed before destroying the uv loop

8 years agoDon't destroy ev/uv loops if they haven't been created yet
Alex Hultman [Sat, 20 Feb 2016 10:58:49 +0000 (11:58 +0100)]
Don't destroy ev/uv loops if they haven't been created yet

8 years agov1.7.1
Andy Green [Sat, 20 Feb 2016 01:19:54 +0000 (09:19 +0800)]
v1.7.1

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agochangelog sync
Andy Green [Sat, 20 Feb 2016 01:13:15 +0000 (09:13 +0800)]
changelog sync

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoattack.sh add check for nonexistant file processing
Andy Green [Sat, 20 Feb 2016 00:11:35 +0000 (08:11 +0800)]
attack.sh add check for nonexistant file processing

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolws_return_http_status send content length
Andy Green [Sat, 20 Feb 2016 00:02:49 +0000 (08:02 +0800)]
lws_return_http_status send content length

If we're sending content, we must do so with a
content-length on http/1.1

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server example systemd service file
Andy Green [Sat, 20 Feb 2016 00:04:53 +0000 (08:04 +0800)]
test server example systemd service file

Make sure you have daemonization enabled to use this

make .. -DLWS_WITHOUT_DAEMONIZE=0

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agodaemonize work under systemd
Andy Green [Sat, 20 Feb 2016 00:04:32 +0000 (08:04 +0800)]
daemonize work under systemd

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoah pool lifetime use dynamic rxpos
Andy Green [Sat, 20 Feb 2016 00:04:09 +0000 (08:04 +0800)]
ah pool lifetime use dynamic rxpos

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server allow set uid gid from cmdline
Andy Green [Sat, 20 Feb 2016 00:03:51 +0000 (08:03 +0800)]
test server allow set uid gid from cmdline

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agowindows plat correct assert test in lws_poll_listen_fd
Andy Green [Thu, 18 Feb 2016 13:02:34 +0000 (21:02 +0800)]
windows plat correct assert test in lws_poll_listen_fd

After https://github.com/warmcat/libwebsockets/issues/430

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server SSL STS header delivery example
Andy Green [Thu, 18 Feb 2016 11:39:24 +0000 (19:39 +0800)]
test server SSL STS header delivery example

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server allow only best quality ciphers
Andy Green [Thu, 18 Feb 2016 11:20:02 +0000 (19:20 +0800)]
test server allow only best quality ciphers

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agossl add server ecdh curve init
Andy Green [Wed, 17 Feb 2016 13:11:13 +0000 (21:11 +0800)]
ssl add server ecdh curve init

Using "real" SSL certs requires some init for openssl ECDH
curve.  Add a default curve "prime256v1" and allow overriding it
at context creation time.

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotest server allow external certs
Andy Green [Wed, 17 Feb 2016 04:00:40 +0000 (12:00 +0800)]
test server allow external certs

Allow the test server to use external certs for testing

libwebsockets-test-server --ssl -C libwebsockets.org.crt -K libwebsockets.org.key -A libwebsockets.org.cer

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agossl ecdh check errors properly
Andy Green [Wed, 17 Feb 2016 03:10:39 +0000 (11:10 +0800)]
ssl ecdh check errors properly

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agomore documentation typos
Andy Green [Tue, 16 Feb 2016 23:47:42 +0000 (07:47 +0800)]
more documentation typos

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoFix some typos.
Peter Pentchev [Tue, 16 Feb 2016 13:19:36 +0000 (15:19 +0200)]
Fix some typos.

8 years agodebug reduce noise
Andy Green [Tue, 16 Feb 2016 10:47:24 +0000 (18:47 +0800)]
debug reduce noise

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agov1.7.0
Andy Green [Tue, 16 Feb 2016 04:32:18 +0000 (12:32 +0800)]
v1.7.0

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoappveyor update openssl url
Andy Green [Tue, 16 Feb 2016 05:20:30 +0000 (13:20 +0800)]
appveyor update openssl url

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agocoverity 158147 test ping sprintf bounds
Andy Green [Mon, 15 Feb 2016 13:08:18 +0000 (21:08 +0800)]
coverity 158147 test ping sprintf bounds

Well, just in the test app arg processing, but yes...

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agocoverity 158146 test fraggle sprintf bounds
Andy Green [Mon, 15 Feb 2016 13:07:09 +0000 (21:07 +0800)]
coverity 158146 test fraggle sprintf bounds

Well, just in the test app arg processing, but yes...

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agocoverity 158145 lws_header_table_detatch must handle no ah attached
Andy Green [Mon, 15 Feb 2016 13:00:39 +0000 (21:00 +0800)]
coverity 158145 lws_header_table_detatch must handle no ah attached

callers should protect it so this doesn't make a problem.  But
Coverity is correct the code is confused about it.

Make it okay if we close a connection before the ah got attached.

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agorelease checklist coverity
Andy Green [Mon, 15 Feb 2016 12:55:29 +0000 (20:55 +0800)]
release checklist coverity

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoapi doc update pre 1.7
Andy Green [Mon, 15 Feb 2016 12:48:00 +0000 (20:48 +0800)]
api doc update pre 1.7

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agotimeout settable from info
Andy Green [Mon, 15 Feb 2016 12:36:02 +0000 (20:36 +0800)]
timeout settable from info

This adds an info member that allows the user code to
set the library's network action timeout in seconds.

If left at the default 0, the build-time default
AWAITING_TIMEOUT continues to be used.

As suggested

https://github.com/warmcat/libwebsockets/issues/427

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agorelease checklist api updates
Andy Green [Mon, 15 Feb 2016 12:38:59 +0000 (20:38 +0800)]
release checklist api updates

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agohttp_transaction_completed handle two completions in detach reset order
Andy Green [Mon, 15 Feb 2016 11:05:43 +0000 (19:05 +0800)]
http_transaction_completed handle two completions in detach reset order

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoah owns rxbuf
Andy Green [Mon, 15 Feb 2016 04:37:04 +0000 (12:37 +0800)]
ah owns rxbuf

This is intended to solve a longstanding problem with the
relationship between http/1.1 keep-alive and the service
loop.

Ah now contain an rx buffer which is used during header
processing, and the ah may not be detached from the wsi
until the rx buffer is exhausted.

Having the rx buffer in the ah means we can delay using the
rx until a later service loop.

Ah which have pending rx force POLLIN service on the wsi
they are attached to automatically, so we can interleave
general service / connections with draining each ah rx
buffer.

The possible http/1.1 situations and their dispositions are:

 1) exactly one set of http headers come.  After processing,
    the ah is detached since no pending rx left.  If more
    headers come later, a fresh ah is aqcuired when available
    and the rx flow control blocks the read until then.

 2) more that one whole set of headers come and we remain in
    http mode (no upgrade).  The ah is left attached and
    returns to the service loop after the first set of headers.
    We will get forced service due to the ah having pending
    content (respecting flowcontrol) and process the pending
    rx in the ah.  If we use it all up, we will detach the
    ah.

 3) one set of http headers come with ws traffic appended.
    We service the headers, do the upgrade, and keep the ah
    until the remaining ws content is used.  When we
    exhausted the ws traffix in the ah rx buffer, we
    detach the ah.

Since there can be any amount of http/1.1 pipelining on a
connection, and each may be expensive to service, it's now
enforced there is a return to the service loop after each
header set is serviced on a connection.

When I added the forced service for ah with pending buffering,
I added support for it to the windows plat code.  However this
is untested.

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoautobahn wait for all fork completion
Andy Green [Mon, 15 Feb 2016 06:44:18 +0000 (14:44 +0800)]
autobahn wait for all fork completion

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoautobahn put back 2.10 2.11
Andy Green [Mon, 15 Feb 2016 06:23:41 +0000 (14:23 +0800)]
autobahn put back 2.10 2.11

The test ordering breaks if we try to skip them, just
leave them in.

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agoattack.sh add http1.1 pipelining check
Andy Green [Mon, 15 Feb 2016 06:01:06 +0000 (14:01 +0800)]
attack.sh add http1.1 pipelining check

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agorelease checklist qa
Andy Green [Mon, 15 Feb 2016 04:37:23 +0000 (12:37 +0800)]
release checklist qa

Signed-off-by: Andy Green <andy.green@linaro.org>
8 years agolibuv integration
Andy Green [Sun, 14 Feb 2016 01:27:41 +0000 (09:27 +0800)]
libuv integration

This gets the libuv stuff plumbed in and working.

Currently it's only workable for some service thread, and there
is an isolated valgrind problem left

==28425== 128 bytes in 1 blocks are definitely lost in loss record 3 of 3
==28425==    at 0x4C28C50: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==28425==    by 0x4C2AB1E: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==28425==    by 0x58BBB27: maybe_resize (core.c:748)
==28425==    by 0x58BBB27: uv__io_start (core.c:787)
==28425==    by 0x58C1B80: uv__signal_loop_once_init (signal.c:225)
==28425==    by 0x58C1B80: uv_signal_init (signal.c:260)
==28425==    by 0x58BF7A6: uv_loop_init (loop.c:66)
==28425==    by 0x4157F5: lws_uv_initloop (libuv.c:89)
==28425==    by 0x405536: main (test-server-libuv.c:284)

libuv wants to sign off on all libuv 'handles' that will close, and
callback to do the close confirmation asynchronously.  The wsi close function
is adapted when libuv is in use to work with libuv accordingly and exit the uv
loop the number of remaining wsi is zero.

Signed-off-by: Andy Green <andy.green@linaro.org>