ret = -1;
}
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
else {
msg_warn_session ("cannot parse forwarded IP: %T", hdr);
ret = -1;
}
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
else {
msg_warn_session ("cannot parse real IP: %T", hdr);
}
session->wrk->nconns --;
- rspamd_inet_address_destroy (session->from_addr);
+ rspamd_inet_address_free (session->from_addr);
REF_RELEASE (session->cfg);
if (session->pool) {
{
struct fuzzy_session *session = d;
- rspamd_inet_address_destroy (session->addr);
+ rspamd_inet_address_free (session->addr);
rspamd_explicit_memzero (session->nm, sizeof (session->nm));
session->worker->nconns--;
g_slice_free1 (sizeof (*session), session);
if (session) {
rspamd_http_connection_reset (session->conn);
rspamd_http_connection_unref (session->conn);
- rspamd_inet_address_destroy (session->addr);
+ rspamd_inet_address_free (session->addr);
close (session->sock);
if (session->psrc) {
struct rspamd_fuzzy_collection_session *session = conn_ent->ud;
- rspamd_inet_address_destroy (session->from_addr);
+ rspamd_inet_address_free (session->from_addr);
g_slice_free1 (sizeof (struct rspamd_fuzzy_collection_session), session);
if (!ctx->collection_keypair) {
msg_err ("deny request from %s, as no local keypair is specified",
rspamd_inet_address_to_string (addr));
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
close (nfd);
return;
if (!ctx->master_ips) {
msg_err ("deny update request from %s as no masters defined",
rspamd_inet_address_to_string (addr));
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
close (nfd);
return;
else if (radix_find_compressed_addr (ctx->master_ips, addr) == RADIX_NO_VALUE) {
msg_err ("deny update request from %s",
rspamd_inet_address_to_string (addr));
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
close (nfd);
return;
if (!ctx->sync_keypair) {
msg_err ("deny update request from %s, as no local keypair is specified",
rspamd_inet_address_to_string (addr));
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
close (nfd);
return;
keystat = rspamd_mempool_alloc0 (pool, sizeof (*keystat));
/* Hash of ip -> fuzzy_key_stat */
keystat->last_ips = rspamd_lru_hash_new_full (1024,
- (GDestroyNotify)rspamd_inet_address_destroy, fuzzy_key_stat_dtor,
+ (GDestroyNotify) rspamd_inet_address_free, fuzzy_key_stat_dtor,
rspamd_inet_address_hash, rspamd_inet_address_equal);
key->stat = keystat;
pk = rspamd_keypair_component (kp, RSPAMD_KEYPAIR_COMPONENT_PK,
rspamd_mempool_add_destructor (cfg->cfg_pool,
(rspamd_mempool_destruct_t)g_hash_table_unref, ctx->master_flags);
ctx->errors_ips = rspamd_lru_hash_new_full (1024,
- (GDestroyNotify) rspamd_inet_address_destroy, g_free,
+ (GDestroyNotify) rspamd_inet_address_free, g_free,
rspamd_inet_address_hash, rspamd_inet_address_equal);
rspamd_mempool_add_destructor (cfg->cfg_pool,
(rspamd_mempool_destruct_t)rspamd_lru_hash_destroy, ctx->errors_ips);
trecv->from_ip = trecv->real_ip;
trecv->addr = rspamd_inet_address_copy (task->from_addr);
rspamd_mempool_add_destructor (task->task_pool,
- (rspamd_mempool_destruct_t)rspamd_inet_address_destroy,
+ (rspamd_mempool_destruct_t)rspamd_inet_address_free,
trecv->addr);
if (task->hostname) {
}
if (session->addr) {
- rspamd_inet_address_destroy (session->addr);
+ rspamd_inet_address_free (session->addr);
}
if (session->rcpts) {
rspamd_monitored_propagate_error (m,
"invalid address");
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
else {
rspamd_monitored_propagate_success (m, lat);
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
}
}
}
if (task->client_addr) {
- rspamd_inet_address_destroy (task->client_addr);
+ rspamd_inet_address_free (task->client_addr);
}
if (task->from_addr) {
- rspamd_inet_address_destroy (task->from_addr);
+ rspamd_inet_address_free (task->from_addr);
}
if (task->err) {
}
void
-rspamd_inet_address_destroy (rspamd_inet_addr_t *addr)
+rspamd_inet_address_free (rspamd_inet_addr_t *addr)
{
if (addr) {
if (addr->af == AF_UNIX) {
}
else {
/* Avoid leak */
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
return (nfd);
serrno = errno;
close (nfd);
errno = serrno;
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
return (-1);
*target = addr;
}
else {
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
}
return TRUE;
err:
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
return FALSE;
}
if (rspamd_parse_inet_address (&cur_addr, begin, len)) {
if (*addrs == NULL) {
*addrs = g_ptr_array_new_full (1,
- (GDestroyNotify)rspamd_inet_address_destroy);
+ (GDestroyNotify) rspamd_inet_address_free);
if (pool != NULL) {
rspamd_mempool_add_destructor (pool,
if (*addrs == NULL) {
*addrs = g_ptr_array_new_full (addr_cnt,
- (GDestroyNotify)rspamd_inet_address_destroy);
+ (GDestroyNotify) rspamd_inet_address_free);
if (pool != NULL) {
rspamd_mempool_add_destructor (pool,
/* Special case of unix socket, as getaddrinfo cannot deal with them */
if (*addrs == NULL) {
*addrs = g_ptr_array_new_full (1,
- (GDestroyNotify)rspamd_inet_address_destroy);
+ (GDestroyNotify) rspamd_inet_address_free);
if (pool != NULL) {
rspamd_mempool_add_destructor (pool,
* Destroy the specified IP address
* @param addr
*/
-void rspamd_inet_address_destroy (rspamd_inet_addr_t *addr);
+void rspamd_inet_address_free (rspamd_inet_addr_t *addr);
/**
* Apply the specified mask to an address (ignored for AF_UNIX)
}
if (cbd->addr) {
- rspamd_inet_address_destroy (cbd->addr);
+ rspamd_inet_address_free (cbd->addr);
}
write_http_request (cbd);
}
else {
- rspamd_inet_address_destroy (cbd->addr);
+ rspamd_inet_address_free (cbd->addr);
cbd->addr = NULL;
}
}
else {
msg_warn_map ("cannot load map: cannot connect to %s: %s",
data->host, strerror (errno));
- rspamd_inet_address_destroy (cbd->addr);
+ rspamd_inet_address_free (cbd->addr);
cbd->addr = NULL;
MAP_RELEASE (cbd, "http_callback_data");
}
{
struct upstream_addr_elt *elt = a;
- rspamd_inet_address_destroy (elt->addr);
+ rspamd_inet_address_free (elt->addr);
g_slice_free1 (sizeof (*elt), elt);
}
if (up->new_addrs) {
LL_FOREACH_SAFE(up->new_addrs, cur, tmp) {
/* Here we need to free pointer as well */
- rspamd_inet_address_destroy (cur->addr);
+ rspamd_inet_address_free (cur->addr);
g_free (cur);
}
}
case RDNS_REQUEST_A:
addr = rspamd_inet_address_new (AF_INET, &elt->content.a.addr);
rspamd_lua_ip_push (cd->L, addr);
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
lua_rawseti (cd->L, -2, ++i);
break;
case RDNS_REQUEST_AAAA:
addr = rspamd_inet_address_new (AF_INET6, &elt->content.aaa.addr);
rspamd_lua_ip_push (cd->L, addr);
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
lua_rawseti (cd->L, -2, ++i);
break;
case RDNS_REQUEST_NS:
}
if (cbd->addr) {
- rspamd_inet_address_destroy (cbd->addr);
+ rspamd_inet_address_free (cbd->addr);
}
if (cbd->mime_type) {
if (ip) {
if (ip->addr) {
- rspamd_inet_address_destroy (ip->addr);
+ rspamd_inet_address_free (ip->addr);
}
g_slice_free1 (sizeof (struct rspamd_lua_ip), ip);
}
rspamd_inet_address_get_port (addr->addr));
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
if (ud->ctx == NULL || ud->ctx->err) {
}
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
return NULL;
rspamd_inet_address_get_port (addr->addr), tv);
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
if (ctx == NULL || ctx->err) {
}
else {
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
msg_err ("bad arguments for redis request");
lua_pushboolean (L, FALSE);
rspamd_inet_address_get_port (addr->addr), tv);
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
if (ctx->d.sync == NULL || ctx->d.sync->err) {
}
else {
if (ip) {
- rspamd_inet_address_destroy (ip);
+ rspamd_inet_address_free (ip);
}
lua_pushboolean (L, FALSE);
}
else {
if (task->from_addr) {
- rspamd_inet_address_destroy (task->from_addr);
+ rspamd_inet_address_free (task->from_addr);
}
task->from_addr = addr;
}
if (cbd->addr) {
- rspamd_inet_address_destroy (cbd->addr);
+ rspamd_inet_address_free (cbd->addr);
}
while (lua_tcp_shift_handler (cbd)) {}
lua_pop (L, 1);
}
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
close (nfd);
}
if (sock == -1) {
rspamd_fprintf (stderr, "cannot connect to: %s\n", control_path);
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
exit (1);
}
event_base_loop (ev_base, 0);
rspamd_http_connection_unref (conn);
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
lua_close (L);
close (sock);
}
g_ptr_array_free (session->mirror_conns, TRUE);
rspamd_http_message_shmem_unref (session->shmem_ref);
rspamd_http_message_unref (session->client_message);
- rspamd_inet_address_destroy (session->client_addr);
+ rspamd_inet_address_free (session->client_addr);
close (session->client_sock);
rspamd_mempool_delete (session->pool);
g_slice_free1 (sizeof (*session), session);
typedef struct rspamd_inet_addr_s rspamd_inet_addr_t;
bool rspamd_parse_inet_address (rspamd_inet_addr_t **target,
const char *src);
- void rspamd_inet_address_destroy (rspamd_inet_addr_t *addr);
+ void rspamd_inet_address_freefree (rspamd_inet_addr_t *addr);
]]
test("Create inet addr from string", function()
local res = ffi.C.rspamd_parse_inet_address(ip, c[1])
assert_equal(res, c[2], "Expect " .. tostring(c[2]) .. " while parsing " .. c[1])
if res then
- ffi.C.rspamd_inet_address_destroy(ip[0])
+ ffi.C.rspamd_inet_address_free(ip[0])
end
end
end)
return;
}
- rspamd_inet_address_destroy (addr);
+ rspamd_inet_address_free (addr);
rspamd_http_router_handle_socket (rt, nfd, NULL);
}