aboutsummaryrefslogtreecommitdiff
path: root/src/netaddr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/netaddr.cpp')
-rw-r--r--src/netaddr.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/netaddr.cpp b/src/netaddr.cpp
new file mode 100644
index 0000000..a3a54bf
--- /dev/null
+++ b/src/netaddr.cpp
@@ -0,0 +1,30 @@
+#include "salticidae/netaddr.h"
+
+using namespace salticidae;
+
+#ifdef __cplusplus
+
+extern "C" {
+
+netaddr_t *netaddr_new() { return new NetAddr(); }
+netaddr_t *netaddr_new_from_ip_port(uint32_t ip, uint16_t port) {
+ return new NetAddr(ip, port);
+}
+
+netaddr_t *netaddr_new_from_sip_port(const char *ip, uint16_t port) {
+ return new NetAddr(ip, port);
+}
+
+netaddr_t *netaddr_new_from_sipport(const char *ip_port_addr) {
+ return new NetAddr(ip_port_addr);
+}
+
+bool netaddr_is_eq(const netaddr_t *a, const netaddr_t *b) {
+ return *a == *b;
+}
+
+bool netaddr_is_null(const netaddr_t *self) { return self->is_null(); }
+
+}
+
+#endif