File nginx-1.8.0-passenger-4.0.18.patch of Package nginx.6301
Index: passenger/ext/nginx/Configuration.c
===================================================================
--- passenger.orig/ext/nginx/Configuration.c 2015-06-24 23:29:12.725985654 +0800
+++ passenger/ext/nginx/Configuration.c 2015-06-24 23:02:39.654901783 +0800
@@ -261,7 +261,11 @@
conf->upstream_config.pass_request_body = NGX_CONF_UNSET;
#if (NGX_HTTP_CACHE)
- conf->upstream_config.cache = NGX_CONF_UNSET_PTR;
+ #if NGINX_VERSION_NUM >= 1007009
+ conf->upstream_config.cache = NGX_CONF_UNSET_PTR;
+ #else
+ conf->upstream_config.cache = NGX_CONF_UNSET;
+ #endif
conf->upstream_config.cache_min_uses = NGX_CONF_UNSET_UINT;
conf->upstream_config.cache_bypass = NGX_CONF_UNSET_PTR;
conf->upstream_config.no_cache = NGX_CONF_UNSET_PTR;
@@ -270,6 +274,9 @@
conf->upstream_config.cache_lock = NGX_CONF_UNSET;
conf->upstream_config.cache_lock_timeout = NGX_CONF_UNSET_MSEC;
#endif
+ #if NGINX_VERSION_NUM >= 1007008
+ conf->upstream_config.cache_lock_age = NGX_CONF_UNSET_MSEC;
+ #endif
#endif
conf->upstream_config.intercept_errors = NGX_CONF_UNSET;
@@ -374,15 +381,34 @@
/******************************/
/******************************/
- if (conf->upstream_config.store != 0) {
- ngx_conf_merge_value(conf->upstream_config.store,
- prev->upstream_config.store, 0);
+ #if (NGX_HTTP_CACHE) && NGINX_VERSION_NUM >= 1007009
+ if (conf->upstream_config.store > 0) {
+ conf->upstream_config.cache = 0;
+ }
+ if (conf->upstream_config.cache > 0) {
+ conf->upstream_config.store = 0;
+ }
+ #endif
+
+ #if NGINX_VERSION_NUM >= 1007009
+ if (conf->upstream_config.store == NGX_CONF_UNSET) {
+ ngx_conf_merge_value(conf->upstream_config.store,
+ prev->upstream_config.store, 0);
- if (conf->upstream_config.store_lengths == NULL) {
conf->upstream_config.store_lengths = prev->upstream_config.store_lengths;
conf->upstream_config.store_values = prev->upstream_config.store_values;
}
- }
+ #else
+ if (conf->upstream_config.store != 0) {
+ ngx_conf_merge_value(conf->upstream_config.store,
+ prev->upstream_config.store, 0);
+
+ if (conf->upstream_config.store_lengths == NULL) {
+ conf->upstream_config.store_lengths = prev->upstream_config.store_lengths;
+ conf->upstream_config.store_values = prev->upstream_config.store_values;
+ }
+ }
+ #endif
ngx_conf_merge_uint_value(conf->upstream_config.store_access,
prev->upstream_config.store_access, 0600);
@@ -526,20 +552,42 @@
#if (NGX_HTTP_CACHE)
- ngx_conf_merge_ptr_value(conf->upstream_config.cache,
- prev->upstream_config.cache, NULL);
+ #if NGINX_VERSION_NUM >= 1007009
+ if (conf->upstream_config.cache == NGX_CONF_UNSET) {
+ ngx_conf_merge_value(conf->upstream_config.cache,
+ prev->upstream_config.cache, 0);
+
+ conf->upstream_config.cache_zone = prev->upstream_config.cache_zone;
+ conf->upstream_config.cache_value = prev->upstream_config.cache_value;
+ }
- if (conf->upstream_config.cache && conf->upstream_config.cache->data == NULL) {
- ngx_shm_zone_t *shm_zone;
+ if (conf->upstream_config.cache_zone && conf->upstream_config.cache_zone->data == NULL) {
+ ngx_shm_zone_t *shm_zone;
- shm_zone = conf->upstream_config.cache;
+ shm_zone = conf->upstream_config.cache_zone;
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
- "\"scgi_cache\" zone \"%V\" is unknown",
- &shm_zone->shm.name);
+ "\"scgi_cache\" zone \"%V\" is unknown",
+ &shm_zone->shm.name);
- return NGX_CONF_ERROR;
- }
+ return NGX_CONF_ERROR;
+ }
+ #else
+ ngx_conf_merge_ptr_value(conf->upstream_config.cache,
+ prev->upstream_config.cache, NULL);
+
+ if (conf->upstream_config.cache && conf->upstream_config.cache->data == NULL) {
+ ngx_shm_zone_t *shm_zone;
+
+ shm_zone = conf->upstream_config.cache;
+
+ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
+ "\"scgi_cache\" zone \"%V\" is unknown",
+ &shm_zone->shm.name);
+
+ return NGX_CONF_ERROR;
+ }
+ #endif
ngx_conf_merge_uint_value(conf->upstream_config.cache_min_uses,
prev->upstream_config.cache_min_uses, 1);
@@ -585,6 +633,11 @@
prev->upstream_config.cache_lock_timeout, 5000);
#endif
+ #if NGINX_VERSION_NUM >= 1007008
+ ngx_conf_merge_msec_value(conf->upstream_config.cache_lock_age,
+ prev->upstream_config.cache_lock_age, 5000);
+ #endif
+
#endif
ngx_conf_merge_value(conf->upstream_config.pass_request_headers,