aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2024-03-13 23:32:43 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2024-03-28 03:42:07 +0100
commit1c2496294698ca60acc9b2f15d792180ed83673e (patch)
tree0c48e06d1a37c8ce425b5511dc7dba012a84e4ef /include/osmocom
parent50e38cf36a3911629cb0871ea3f7e2e7bc1b2119 (diff)
sockaddr_str: add conversion to,from osmo_sockaddrHEADmaster
Add functions to pass struct osmo_sockaddr to the osmo_sockaddr_str_{to,from}* API directly. So far the interface to osmo_sockaddr_str_ is: osmo_sockaddr_str_from_sockaddr(&my_sa_str, &my_osa->u.sas); I'm working a lot with osmo_sockaddr at the moment, and the cumulated time of forgetting to add 'u.sas' and having another compilation cycle because of those is justifying this additional API. Change-Id: I0df84b4bb8cb5d8434b735fa3a38e7f95be43e91
Diffstat (limited to 'include/osmocom')
-rw-r--r--include/osmocom/core/sockaddr_str.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/osmocom/core/sockaddr_str.h b/include/osmocom/core/sockaddr_str.h
index c646f499..8ec514c7 100644
--- a/include/osmocom/core/sockaddr_str.h
+++ b/include/osmocom/core/sockaddr_str.h
@@ -34,6 +34,7 @@ struct in6_addr;
struct sockaddr_storage;
struct sockaddr_in;
struct sockaddr_in6;
+struct osmo_sockaddr;
/*! \defgroup sockaddr_str IP address/port utilities.
* @{
@@ -84,6 +85,7 @@ int osmo_sockaddr_str_from_32h(struct osmo_sockaddr_str *sockaddr_str, uint32_t
int osmo_sockaddr_str_from_sockaddr_in(struct osmo_sockaddr_str *sockaddr_str, const struct sockaddr_in *src);
int osmo_sockaddr_str_from_sockaddr_in6(struct osmo_sockaddr_str *sockaddr_str, const struct sockaddr_in6 *src);
int osmo_sockaddr_str_from_sockaddr(struct osmo_sockaddr_str *sockaddr_str, const struct sockaddr_storage *src);
+int osmo_sockaddr_str_from_osa(struct osmo_sockaddr_str *sockaddr_str, const struct osmo_sockaddr *src);
int osmo_sockaddr_str_to_in_addr(const struct osmo_sockaddr_str *sockaddr_str, struct in_addr *dst);
int osmo_sockaddr_str_to_in6_addr(const struct osmo_sockaddr_str *sockaddr_str, struct in6_addr *dst);
@@ -92,6 +94,7 @@ int osmo_sockaddr_str_to_32h(const struct osmo_sockaddr_str *sockaddr_str, uint3
int osmo_sockaddr_str_to_sockaddr_in(const struct osmo_sockaddr_str *sockaddr_str, struct sockaddr_in *dst);
int osmo_sockaddr_str_to_sockaddr_in6(const struct osmo_sockaddr_str *sockaddr_str, struct sockaddr_in6 *dst);
int osmo_sockaddr_str_to_sockaddr(const struct osmo_sockaddr_str *sockaddr_str, struct sockaddr_storage *dst);
+int osmo_sockaddr_str_to_osa(const struct osmo_sockaddr_str *sockaddr_str, struct osmo_sockaddr *dst);
int osmo_sockaddr_str_from_32n(struct osmo_sockaddr_str *sockaddr_str, uint32_t ip, uint16_t port)
OSMO_DEPRECATED("osmo_sockaddr_str_from_32n() actually uses *host* byte order. Use osmo_sockaddr_str_from_32h() instead");