diff options
author | Determinant <tederminant@gmail.com> | 2019-06-03 17:30:01 -0400 |
---|---|---|
committer | Determinant <tederminant@gmail.com> | 2019-06-03 17:30:01 -0400 |
commit | 9f294eb2e0ae0bed8120fc34fd9782f2f0a9ac74 (patch) | |
tree | d5005c9888874bd2b169fcd51418a3fab36fe631 /include/salticidae/netaddr.h | |
parent | 9ec5a371f5c05fda8ddeac3470be6fc5c67d44e9 (diff) |
WIP: C bindings
Diffstat (limited to 'include/salticidae/netaddr.h')
-rw-r--r-- | include/salticidae/netaddr.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/include/salticidae/netaddr.h b/include/salticidae/netaddr.h index 224d1d4..917c498 100644 --- a/include/salticidae/netaddr.h +++ b/include/salticidae/netaddr.h @@ -34,10 +34,10 @@ #include "salticidae/util.h" #include "salticidae/stream.h" +#ifdef __cplusplus namespace salticidae { /* TODO: IPv6 support */ - struct NetAddr { uint32_t ip; uint16_t port; @@ -124,4 +124,20 @@ namespace std { }; } +using netaddr_t = salticidae::NetAddr; +#else +typedef struct netaddr_t netaddr_t; +#endif + +extern "C" { + +netaddr_t *netaddr_new(); +netaddr_t *netaddr_new_from_ip_port(uint32_t ip, uint16_t port); +netaddr_t *netaddr_new_from_sip_port(const char *ip, uint16_t port); +netaddr_t *netaddr_new_from_sipport(const char *ip_port_addr); +bool netaddr_is_eq(const netaddr_t *a, const netaddr_t *b); +bool netaddr_is_null(const netaddr_t *self); + +} + #endif |