Skip to content

Commit c23bb55

Browse files
committed
Use configuration pool for provider objects
1 parent 3dee620 commit c23bb55

File tree

3 files changed

+11
-8
lines changed

3 files changed

+11
-8
lines changed

ngx_http_bot_verifier_module.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,23 +197,23 @@ ngx_http_bot_verifier_module_create_loc_conf(ngx_conf_t *cf)
197197

198198
char *google_domains[2] = {"google.com", "googlebot.com"};
199199
len = sizeof(google_domains) / sizeof(google_domains[0]);
200-
ngx_http_bot_verifier_module_provider_t *google = ngx_http_bot_verifier_module_make_provider("Google", google_domains, len);
200+
ngx_http_bot_verifier_module_provider_t *google = ngx_http_bot_verifier_module_make_provider(cf->pool, "Google", google_domains, len);
201201

202202
char *bing_domains[1] = {"search.msn.com"};
203203
len = sizeof(bing_domains) / sizeof(bing_domains[0]);
204-
ngx_http_bot_verifier_module_provider_t *bing = ngx_http_bot_verifier_module_make_provider("Bing", bing_domains, len);
204+
ngx_http_bot_verifier_module_provider_t *bing = ngx_http_bot_verifier_module_make_provider(cf->pool, "Bing", bing_domains, len);
205205

206206
char *yahoo_domains[1] = {"yahoo.com"};
207207
len = sizeof(yahoo_domains) / sizeof(yahoo_domains[0]);
208-
ngx_http_bot_verifier_module_provider_t *yahoo = ngx_http_bot_verifier_module_make_provider("Yahoo", yahoo_domains, len);
208+
ngx_http_bot_verifier_module_provider_t *yahoo = ngx_http_bot_verifier_module_make_provider(cf->pool, "Yahoo", yahoo_domains, len);
209209

210210
char *baidu_domains[1] = {"crawl.baidu.com"};
211211
len = sizeof(baidu_domains) / sizeof(baidu_domains[0]);
212-
ngx_http_bot_verifier_module_provider_t *baidu = ngx_http_bot_verifier_module_make_provider("Baidu", baidu_domains, len);
212+
ngx_http_bot_verifier_module_provider_t *baidu = ngx_http_bot_verifier_module_make_provider(cf->pool, "Baidu", baidu_domains, len);
213213

214214
char *yandex_domains[3] = {"yandex.com", "yandex.net", "yandex.ru"};
215215
len = sizeof(yandex_domains) / sizeof(yandex_domains[0]);
216-
ngx_http_bot_verifier_module_provider_t *yandex = ngx_http_bot_verifier_module_make_provider("Yandex", yandex_domains, len);
216+
ngx_http_bot_verifier_module_provider_t *yandex = ngx_http_bot_verifier_module_make_provider(cf->pool, "Yandex", yandex_domains, len);
217217

218218
conf->provider_len = 5;
219219
conf->providers = ngx_pcalloc(cf->pool, sizeof(ngx_http_bot_verifier_module_provider_t**) + conf->provider_len * sizeof(ngx_http_bot_verifier_module_provider_t*));

ngx_http_bot_verifier_provider.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22

33
#include "ngx_http_bot_verifier_provider.h"
44

5-
ngx_http_bot_verifier_module_provider_t *ngx_http_bot_verifier_module_make_provider(char *name, char *valid_domains[], size_t len) {
6-
ngx_http_bot_verifier_module_provider_t *provider = (ngx_http_bot_verifier_module_provider_t*) malloc(sizeof(ngx_http_bot_verifier_module_provider_t) + sizeof(char*) * len);
5+
ngx_http_bot_verifier_module_provider_t
6+
*ngx_http_bot_verifier_module_make_provider(ngx_pool_t *pool, char *name, char *valid_domains[], size_t len) {
7+
ngx_http_bot_verifier_module_provider_t *provider = (ngx_http_bot_verifier_module_provider_t*) ngx_palloc(pool, sizeof(ngx_http_bot_verifier_module_provider_t) + sizeof(char*) * len);
78
provider->name = name;
89
provider->len = len;
910

ngx_http_bot_verifier_provider.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22
#define __NGX_HTTP_BOT_VERIFIER_PROVIDER_H__
33

44
#include <stdlib.h>
5+
#include <ngx_core.h>
56

67
typedef struct {
78
size_t len;
89
const char *name;
910
const char *valid_domains[];
1011
} ngx_http_bot_verifier_module_provider_t;
1112

12-
ngx_http_bot_verifier_module_provider_t *ngx_http_bot_verifier_module_make_provider(char *name, char *valid_domains[], size_t len);
13+
ngx_http_bot_verifier_module_provider_t
14+
*ngx_http_bot_verifier_module_make_provider(ngx_pool_t *pool, char *name, char *valid_domains[], size_t len);
1315

1416
#endif

0 commit comments

Comments
 (0)