Commit Graph

21 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 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 94feee046c fixed handling of EAGAIN in linux-sendfile (fixes #657)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2072 152afb58-edef-0310-8abb-c4023f1b3aa9
2008-02-10 18:49:39 +00:00
Jan Kneschke a0aafd9a24 save the old errno of the sendfile() call in case that the attr_get()
fails in stat-cache-get-entry 


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1386 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-10-08 18:24:14 +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 7cd02126d5 oops, fixed compile
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@1000 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-15 18:09:01 +00:00
Jan Kneschke f965cd20ae - move the extra-stat() out of the main-path
it was only used to detect file-shrinks, but also resulted in interupted 
  transfers if the file was removed, but still open.
- we detect file-shrinks now if sendfile() returns 0


git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@998 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-15 10:46:17 +00:00
Jan Kneschke 83a0dc2702 disable posix_fadvise support as 2.4.x kernels cause problems here.
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@992 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-13 19:22:00 +00:00
Jan Kneschke a5b69917d1 if posix_fadvise is not implemented, ignore the error
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@991 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-02-09 14:37:48 +00:00
Jan Kneschke 754f950fc1 set SEQENTIAL READ on the sendfile file-fds
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@960 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-01-31 10:56:37 +00:00
Jan Kneschke e485768d1e handle a sendfile() = 0 is connection closed by remote side
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@930 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-01-09 16:53:47 +00:00
Jan Kneschke c87a000c13 renamed file.offset to file.start (we had 3 different 'offset' which was confusing)
added a offset tag to the mmap part of the file-struct to allow moving mmap-windows




git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@795 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-10-24 11:36:22 +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 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