Commit Graph

30 Commits (27ab3f76dbedbb48cfb84e1bfc61e403f0a2c851)

Author SHA1 Message Date
Stefan Bühler 593599f14a rewrite network (write) backends
From: Stefan Bühler <stbuehler@web.de>

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@3012 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-08-22 16:00:59 +00:00
Stefan Bühler ad3e93ea96 Use buffer API to read and modify "used" member
- a lot of code tried to handle manually adding terminating zeroes and
  keeping track of the correct "used" count.
  Replaced all "external" usages with simple wrapper functions:
  * buffer_string_is_empty (used <= 1), buffer_is_empty (used == 0);
    prefer buffer_string_is_empty
  * buffer_string_set_length
  * buffer_string_length
  * CONST_BUF_LEN() macro
- removed "static" buffer hacks (buffers pointing to constant/stack
  memory instead of malloc()ed data)
- buffer_append_strftime(): refactor buffer+strftime uses
- li_tohex(): no need for a buffer for binary-to-hex conversion:
  the output data length is easy to predict
- remove "-Winline" from extra warnings: the "inline" keyword just
  supresses the warning about unused but defined (static) functions;
  don't care whether it actually gets inlined or not.

From: Stefan Bühler <stbuehler@web.de>

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2979 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-02-08 19:10:44 +00:00
Stefan Bühler 9f2be4882d force assertion: setting FD_CLOEXEC must work (if available)
From: Stefan Bühler <stbuehler@web.de>

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2952 152afb58-edef-0310-8abb-c4023f1b3aa9
2014-02-16 13:08:29 +00:00
Stefan Bühler 07dd0bd0a5 add force_assert() to enforce assertions as simple assert()s are disabled by -DNDEBUG (fixes #2546)
From: Stefan Bühler <stbuehler@web.de>

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2948 152afb58-edef-0310-8abb-c4023f1b3aa9
2014-02-16 13:08:20 +00:00
Stefan Bühler 25a3f2e826 [network] use constants available at compile time for maximum number of chunks for writev instead of calling sysconf (fixes #2470)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2885 152afb58-edef-0310-8abb-c4023f1b3aa9
2013-06-29 12:46:02 +00:00
Cyril Brulebois 9c43331382 Use NULL instead of 0 where pointers are expected.
There are 6 remaining occurrences after this commit, in mod_compress,
due to zlib's Z_NULL being defined as 0 instead of NULL.

Signed-off-by: Cyril Brulebois <kibi@debian.org>

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2845 152afb58-edef-0310-8abb-c4023f1b3aa9
2012-08-31 14:11:43 +00:00
Stefan Bühler f434d514ad Limit amount of bytes we send in one go; fixes stalling in one connection and timeouts on slow systems.
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2801 152afb58-edef-0310-8abb-c4023f1b3aa9
2011-08-22 15:12:28 +00:00
Stefan Bühler 22e8b456a9 Fix header inclusion order, always include "config.h" before any system header
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2624 152afb58-edef-0310-8abb-c4023f1b3aa9
2009-10-11 14:31:42 +00:00
Jan Kneschke aab9e92a63 * fixed compilation in network_writev.c on MacOS X 10.3.9 (fixes #903)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1744 152afb58-edef-0310-8abb-c4023f1b3aa9
2007-04-10 16:15:21 +00:00
Marcus Rückert f8d54c8574 - properly ifdef for dragonflybsd. this should be the last missing chunk
patch by Jörg Sonnenberger

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1676 152afb58-edef-0310-8abb-c4023f1b3aa9
2007-02-20 17:08:32 +00:00
Jan Kneschke b4778f8e6d fixed writev() on FreeBSD 4.x and older (FreeBSD-port: PR103758)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1383 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-10-07 17:27:29 +00:00
Marcus Rückert 8cd1471cb3 - white space cleanup part 2 this time 1.4 ;)
i hope it helps with merging stuff back to 1.5

git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1371 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-10-04 13:26:23 +00:00
Jan Kneschke 49815a7798 fixed writev() for older glibc's
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.11-ssl-fixes@1306 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-09-15 13:28:07 +00:00
Jan Kneschke dcb2689f4d use sysconf() to get IOV_MAX (fixes #842)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.11-ssl-fixes@1289 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-09-09 13:21:21 +00:00
Jan Kneschke 6ae26a7dab fallback to madvise(), it works at least
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@996 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-14 23:49:38 +00:00
Jan Kneschke 156c02a466 test for posix_madvise
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@976 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-01 11:39:08 +00:00
Jan Kneschke 869b6d4585 - darwin 7 doesn't like madvise
- use posix_madvise instead of madvise


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@959 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-01-31 10:56:01 +00:00
Jan Kneschke 93ba0f958e fixed unsigned/signed compare
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@866 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-11-18 13:28:12 +00:00
Jan Kneschke 53144a5a86 fixed calcutation of offset and length for range-request
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@842 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-11-14 10:33:03 +00:00
Jan Kneschke 87cfee3fc5 fixed SIGBUS in range-requests as we were mmaping/madvising too much
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@838 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-11-11 12:45:41 +00:00
Jan Kneschke dc87ff8c44 fixed range request handling in network_writev
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@829 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-11-10 12:14:55 +00:00
Jan Kneschke 6e424095f2 added check for madvise
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@810 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-10-31 20:31:26 +00:00
Jan Kneschke 03452de486 added madvise, smaller mmap()ed windows and local-buffering
(step 1 and 2 of the optimizations)


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@796 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-10-24 11:37:43 +00:00
Jan Kneschke ff29203dba close fds on error and add CLOEXEC to FDs which stay open for a longer time
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@794 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-10-22 08:10:07 +00:00
Jan Kneschke 4f58672a85 added a comment on possible optimizations to the code and
added #ifdef USE_MADVISE to improve experimental support for read-head via mmap()


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@791 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-10-18 10:39:38 +00:00
Jan Kneschke bd893badb9 added the fd as parameter for the write() functions
- the plugins can use them now too


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@737 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-09-26 08:52:37 +00:00
Jan Kneschke b32a18b1e8 updated cq->written and con->bytes_written correctly
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@728 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-09-22 09:08:06 +00:00
Jan Kneschke 63dceeb0c6 open files only once for chunk, cache mmap and let the chunk itself close the fd (fixed #261, #257)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@703 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-09-14 08:00:33 +00:00
Jan Kneschke 5e134da075 dropped file-cache, added stat-cache and modules ALWAYS cleanup at connection-end
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@502 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-08-08 08:22:06 +00:00
Jan Kneschke bcdc6a3bbc moved everything below trunk/ and added branches/ and tags/
git-svn-id: svn://svn.lighttpd.net/lighttpd/trunk@30 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-02-20 14:27:00 +00:00