Browse Source

Fix includes.

tags/0.7.0
Vsevolod Stakhov 10 years ago
parent
commit
0b70166de4
4 changed files with 13 additions and 10 deletions
  1. 1
    0
      src/filter.h
  2. 1
    1
      src/protocol.h
  3. 10
    8
      src/util.c
  4. 1
    1
      src/util.h

+ 1
- 0
src/filter.h View File

@@ -8,6 +8,7 @@

#include "config.h"
#include "symbols_cache.h"
#include "task.h"

struct rspamd_task;
struct rspamd_settings;

+ 1
- 1
src/protocol.h View File

@@ -9,6 +9,7 @@
#include "config.h"
#include "filter.h"
#include "http.h"
#include "task.h"

#define RSPAMD_BASE_ERROR 500
#define RSPAMD_FILTER_ERROR RSPAMD_BASE_ERROR + 1
@@ -17,7 +18,6 @@
#define RSPAMD_LENGTH_ERROR RSPAMD_BASE_ERROR + 4
#define RSPAMD_STATFILE_ERROR RSPAMD_BASE_ERROR + 5

struct rspamd_task;
struct metric;

/**

+ 10
- 8
src/util.c View File

@@ -2083,21 +2083,23 @@ restart:
}

gboolean
rspamd_ip_is_valid (void *ptr, int af)
rspamd_ip_is_valid (rspamd_inet_addr_t *addr)
{
const struct in_addr ip4_any = { INADDR_ANY }, ip4_none = { INADDR_NONE };
const struct in6_addr ip6_any = IN6ADDR_ANY_INIT;

gboolean ret = FALSE;

if (G_LIKELY (af == AF_INET)) {
if (memcmp (ptr, &ip4_any, sizeof (struct in_addr)) != 0 &&
memcmp (ptr, &ip4_none, sizeof (struct in_addr)) != 0) {
if (G_LIKELY (addr->af == AF_INET)) {
if (memcmp (&addr->addr.s4.sin_addr, &ip4_any, sizeof (struct in_addr)) != 0 &&
memcmp (&addr->addr.s4.sin_addr, &ip4_none,
sizeof (struct in_addr)) != 0) {
ret = TRUE;
}
}
else if (G_UNLIKELY (af == AF_INET6)) {
if (memcmp (ptr, &ip6_any, sizeof (struct in6_addr)) != 0) {
else if (G_UNLIKELY (addr->af == AF_INET6)) {
if (memcmp (&addr->addr.s6.sin6_addr, &ip6_any,
sizeof (struct in6_addr)) != 0) {
ret = TRUE;
}
}
@@ -2264,9 +2266,9 @@ rspamd_inet_address_get_port (rspamd_inet_addr_t *addr)
{
switch (addr->af) {
case AF_INET:
return addr->addr.s4.sin_port;
return ntohs (addr->addr.s4.sin_port);
case AF_INET6:
return addr->addr.s6.sin6_port;
return ntohs (addr->addr.s6.sin6_port);
}

return 0;

+ 1
- 1
src/util.h View File

@@ -448,7 +448,7 @@ gint rspamd_read_passphrase (gchar *buf, gint size, gint rwflag, gpointer key);
* @param af address family (AF_INET or AF_INET6)
* @return TRUE if the address is valid
*/
gboolean rspamd_ip_is_valid (void *ptr, int af);
gboolean rspamd_ip_is_valid (rspamd_inet_addr_t *addr);

/**
* Emit UCL object to gstring

Loading…
Cancel
Save