path: root/src/mod_access.c
AgeCommit message (Collapse)AuthorFilesLines
2017-03-28[core] remove some unused header includesGlenn Strauss1-1/+0
remove exposure of stdio.h in buffer.h for print_backtrace(), now static
2017-03-08[config] more specific checks for array listsGlenn Strauss1-0/+12
More specific checks on contents of array lists. Each module using lists now does better checking on the types of values in the list (strings, integers, arrays/lists) This helps prevent misconfiguration of things like cgi.assign, fastcgi.server, and scgi.server, where source code might be served as static files if parenthesis are misplaced. x-ref:
2016-07-13[mod_access] new directive url.access-allow (fixes #1421)Glenn Strauss1-0/+45
url.access-allow is list of allowed url suffixes (e.g. file extensions) If url.access-allow has been set, then deny any URL that does not match the explicitly listed suffixes. (thx japc) x-ref: "access_allow directive for lighttpd"
2016-03-19consistent inclusion of config.h at top of files (fixes #2073)Glenn Strauss1-0/+2
From: Glenn Strauss <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-11-07[config] check config option scope; warn if server option is given in ↵Stefan Bühler1-1/+2
conditional From: Stefan Bühler <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-05-14fix segfaults in many plugins if they failed configurationStefan Bühler1-0/+2
From: Stefan Bühler <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-02-08Use buffer API to read and modify "used" memberStefan Bühler1-4/+4
- 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 <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2015-02-08fix buffer, chunk and http_chunk APIStefan Bühler1-1/+1
* remove unused structs and functions (buffer_array, read_buffer) * change return type from int to void for many functions, as the return value (indicating error/success) was never checked, and the function would only fail on programming errors and not on invalid input; changed functions to use force_assert instead of returning an error. * all "len" parameters now are the real size of the memory to be read. the length of strings is given always without the terminating 0. * the "buffer" struct still counts the terminating 0 in ->used, provide buffer_string_length() to get the length of a string in a buffer. unset config "strings" have used == 0, which is used in some places to distinguish unset values from "" (empty string) values. * most buffer usages should now use it as string container. * optimise some buffer copying by "moving" data to other buffers * use (u)intmax_t for generic int-to-string functions * remove unused enum values: UNUSED_CHUNK, ENCODING_UNSET * converted BUFFER_APPEND_SLASH to inline function (no macro feature needed) * refactor: create chunkqueue_steal: moving (partial) chunks into another queue * http_chunk: added separate function to terminate chunked body instead of magic handling in http_chunk_append_mem(). http_chunk_append_* now handle empty chunks, and never terminate the chunked body. From: Stefan Bühler <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2013-11-13fix/silence bugs reported by ccc-analyzer (clang)Stefan Bühler1-1/+1
These should all be non critical: * memory leaks on startup in error cases (which lead to immediate shutdowns anyway) * http_auth/ldap: passing uninitialized "ret" to ldap_err2string * sizeof(T) not matching the target pointer in malloc/calloc calls; those cases were either: * T being the wrong pointer type - shouldn't matter as long as all pointers have same size * T being larger than the type needed * mod_accesslog: direct use after free in cleanup (server shutdown); could crash before "clean" shutdown * some false positives (mod_compress, mod_expire) * assert(srv->config_context->used > 0); - this is always the case, as there is always a global config block From: Stefan Bühler <> git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2009-10-11Fix header inclusion order, always include "config.h" before any system headerStefan Bühler1-4/+4
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2009-03-07Added some extra warning options in cmake and fix the resulting warnings ↵Stefan Bühler1-0/+1
(unused/static functions) git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2008-08-01Insert many con->mode checks; they should prevent two modules to handle the ↵Stefan Bühler1-0/+1
same request if they shouldn't (#631) git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2007-06-15check the URL twice, before and after path-info handling. (fixes #1230)Jan Kneschke1-7/+30
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-10-04- white space cleanup part 2 this time 1.4 ;)Marcus Rückert1-37/+37
i hope it helps with merging stuff back to 1.5 git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2006-01-14added tests for lowercase filesysytemsJan Kneschke1-4/+14
made mod_access aware of lowercase filesystems git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-09-24either remove include config.h or covered it in HAVE_CONFIG_HJan Kneschke1-2/+0
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-08-16fixed possible uninit variables of the config-parser fails (merged [183])Jan Kneschke1-2/+2
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-08-08removed setup_connection (merged [295])Jan Kneschke1-25/+7
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9
2005-02-20moved everything below trunk/ and added branches/ and tags/Jan Kneschke1-0/+177
git-svn-id: svn:// 152afb58-edef-0310-8abb-c4023f1b3aa9