aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2014-08-21 16:20:40 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2014-08-21 16:20:40 +0100
commit763bc588d221eecdbd607c88d4950ec5cf5d04da (patch)
tree05017e56088dc268272e3d923eb126fc228e656c /src
parent150abb093ae35e4f85fc13d3ec19718b084b6f07 (diff)
downloadrspamd-763bc588d221eecdbd607c88d4950ec5cf5d04da.tar.gz
rspamd-763bc588d221eecdbd607c88d4950ec5cf5d04da.zip
Add function rspamd_inet_address_set_port.
Diffstat (limited to 'src')
-rw-r--r--src/libutil/util.c13
-rw-r--r--src/libutil/util.h5
2 files changed, 18 insertions, 0 deletions
diff --git a/src/libutil/util.c b/src/libutil/util.c
index 3c696c579..4562a90fe 100644
--- a/src/libutil/util.c
+++ b/src/libutil/util.c
@@ -2371,6 +2371,19 @@ rspamd_inet_address_get_port (rspamd_inet_addr_t *addr)
return 0;
}
+void
+rspamd_inet_address_set_port (rspamd_inet_addr_t *addr, uint16_t port)
+{
+ switch (addr->af) {
+ case AF_INET:
+ addr->addr.s4.sin_port = htons (port);
+ break;
+ case AF_INET6:
+ addr->addr.s6.sin6_port = htons (port);
+ break;
+ }
+}
+
int
rspamd_inet_address_connect (rspamd_inet_addr_t *addr, gint type,
gboolean async)
diff --git a/src/libutil/util.h b/src/libutil/util.h
index 7cc73f53a..9bef49a7e 100644
--- a/src/libutil/util.h
+++ b/src/libutil/util.h
@@ -511,6 +511,11 @@ const char * rspamd_inet_address_to_string (rspamd_inet_addr_t *addr);
uint16_t rspamd_inet_address_get_port (rspamd_inet_addr_t *addr);
/**
+ * Set port for inet address
+ */
+void rspamd_inet_address_set_port (rspamd_inet_addr_t *addr, uint16_t port);
+
+/**
* Connect to inet_addr address
* @param addr
* @param async perform operations asynchronously