Commit Graph

3106 Commits (d1fba244692210e994ac304fa3cc3ad27147a144)

Author SHA1 Message Date
Glenn Strauss d1fba24469 [mod_evhost] use config_plugin_values_init()
use array of buffers to increase performance
(reduce pointer chasing)
2020-07-08 18:08:51 -04:00
Glenn Strauss 28691e6f84 [mod_simple_vhost] use config_plugin_values_init()
replace caching with one-element cache of last directory root

stat_cache is a cache and will handle additional caching, as configured
2020-07-08 18:08:51 -04:00
Glenn Strauss 74bbb3077f [mod_accesslog] use config_plugin_values_init()
inline various structures and use C99 VLA to increase performance
(reduce pointer chasing)
2020-07-08 18:08:51 -04:00
Glenn Strauss adbbc6a4f5 [mod_trigger_b4_dl] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss ca95cea4b5 [mod_evasive] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss b07bc5d266 [mod_geoip] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 66a460d977 [mod_secdownload] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 4b0c9c9853 [mod_cml] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 364939096a [mod_status] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 3dacea4927 [mod_uploadprogress] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 5b58e5e47e [mod_ssi] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss be7eb1083a [mod_userdir] use config_plugin_values_init() 2020-05-23 17:59:30 -04:00
Glenn Strauss 28b7d0b656 [mod_userdir] split policy from userdir path build 2020-05-23 17:59:30 -04:00
Glenn Strauss 5fd8e1940e [mod_usertrack] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 84ccd87b31 [mod_magnet] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 476fd9569c [mod_flv_streaming] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 32c42074ec [mod_expire] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 362ccedc41 [mod_indexfile] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss d5782eba65 [mod_alias] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 3fabcc3653 [mod_setenv] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss a377b159ec [mod_skeleton] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 49140fe308 [mod_staticfile] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss 4b9ee09857 [core] use (const char *) in config file parsing 2020-05-23 17:59:29 -04:00
Glenn Strauss 20450fd652 [core] mv config_setup_connection to connections.c
rename config_setup_connection() to connection_reset_config()
2020-05-23 17:59:29 -04:00
Glenn Strauss d7a6a7a263 [core] (const buffer *) from strftime_cache_get() 2020-05-23 17:59:29 -04:00
Glenn Strauss 784a4355d4 [mod_access] use config_plugin_values_init() 2020-05-23 17:59:29 -04:00
Glenn Strauss b87e8783c4 [core] config_plugin_values_init() new interface
new data structures and interface for processing config directives
(towards more efficient approach to config merging)

continue work to isolate data_config
2020-05-23 17:59:29 -04:00
Glenn Strauss aba290e0bd [core] improve condition caching perf 2020-05-23 17:59:29 -04:00
Glenn Strauss b2b41e36e3 [core] struct plugin_data_base 2020-05-23 17:59:29 -04:00
Glenn Strauss be04c1239f [core] macros CONST_LEN_STR and CONST_STR_LEN 2020-05-23 17:59:29 -04:00
Glenn Strauss e06ac39c81 [core] rearrange server_config, server members
rearrange server_config, server members to improved affinity
2020-05-23 17:59:29 -04:00
Glenn Strauss c022269547 [core] srv->plugin_slots as compact list 2020-05-23 17:59:29 -04:00
Glenn Strauss e2de4e581e [core] const char *name in struct plugin
put void *data (always used) as first member of struct plugin

add int nconfig member to PLUGIN_DATA

calloc() inits p->data to NULL
2020-05-23 17:59:29 -04:00
Glenn Strauss 2c43ae73dd [mod_redirect,mod_rewrite] store context_ndx
store config context_ndx instead of data_config *dc
2020-05-23 17:59:29 -04:00
Glenn Strauss 36f64b26a1 [core] simpler config_check_cond()
optimize for common case where condition has been evaluated for
the request and a cached result exists

(also: begin isolating data_config)
2020-05-23 17:59:29 -04:00
Glenn Strauss b6e0880ae6 [mod_accesslog] avoid alloc for parsing cookie val 2020-05-23 17:59:29 -04:00
Glenn Strauss feb21b3da2 [core] inline header and env arrays into con 2020-05-23 17:59:29 -04:00
Glenn Strauss e3dc34d142 [core] array a->sorted[] as ptrs rather than pos
While slightly more memory use in 64-bit (though same memory use as
prior versions of lighttpd), avoids bouncing through second array
when searching in sorted list.  Most use of arrays in lighttpd is to
build a list once, and elements are not removed from the list.
2020-05-23 17:59:29 -04:00
Glenn Strauss a762402da5 [core] keep a->data[] sorted (REVERT)
This reverts commit 2260a8062ee599ecf28d9b52b981603fd2084aff.

original ordering of array elements is significant
e.g. in lighttpd.conf lists where first match to request is applied
2020-02-24 11:15:32 -05:00
Glenn Strauss 78cf61b152 [core] streamline config_check_cond()
avoid passing srv; use con->srv when needed
2020-02-24 11:15:32 -05:00
Glenn Strauss 5aadcba456 [core] buffer string in data_config
(instead of (buffer *))
2020-02-24 11:15:32 -05:00
Glenn Strauss a51278030e [core] const char *op in data_config
(instead of (buffer *))
2020-02-24 11:15:32 -05:00
Glenn Strauss c2238256e2 [core] inline array as part of data_array value
(instead of value being (array *))
2020-02-24 11:15:32 -05:00
Glenn Strauss 6eb34ef5ab [core] add const to callers of http_header_*_get()
(The few places where value is modified in-place were not made const)
2020-02-24 11:15:32 -05:00
Glenn Strauss 601c572c39 [core] inline buffer as part of data_string value
(instead of value being (buffer *))
2020-02-24 11:15:32 -05:00
Glenn Strauss b7942c58cc [core] (data_unset *) from array_get_element_klen
return (data_unset *) from array_get_element_klen() to prep for
putting buffer into data_string for value member, rather than as
(buffer *)

(allow in-place modification of these buffer values)
2020-02-24 11:15:32 -05:00
Glenn Strauss 47a758f959 [core] inline buffer key for *_patch_connection()
handle buffer key as part of DATA_UNSET in *_patch_connection()
(instead of key being (buffer *))
2020-02-24 11:15:32 -05:00
Glenn Strauss ad9b7e009b [core] inline buffer as part of DATA_UNSET key
(instead of key being (buffer *))
2020-02-24 11:15:32 -05:00
Glenn Strauss cff64cf170 [core] http_header_hkey_get() over const array
fixed-size power-2 struct keylenvalue
http_headers_off[] of offsets into http_headers[] by string length
2020-02-24 11:15:32 -05:00
Glenn Strauss a7a721ab43 [core] treat con->conditional_is_valid as bitfield 2020-02-24 11:15:32 -05:00