Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -76,16 +76,18 @@ ExternalProject_Add(cjson
-DENABLE_CJSON_TEST=off
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/dist
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
)

ExternalProject_Add(mbedtls
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/mbedtls
CMAKE_ARGS
-DCMAKE_C_FLAGS="-fPIC"
"-DCMAKE_C_FLAGS=-fPIC -Wno-error=documentation -Wno-error"
-DENABLE_TESTING=off
-DENABLE_PROGRAMS=off
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/dist
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
)
file(READ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/mbedtls/include/mbedtls/mbedtls_config.h INPUT_CONTENT)
string(REPLACE "//#define MBEDTLS_SSL_DTLS_SRTP" "#define MBEDTLS_SSL_DTLS_SRTP" MODIFIED_CONTENT ${INPUT_CONTENT})
Expand All @@ -98,6 +100,7 @@ ExternalProject_Add(srtp2
-DTEST_APPS=off
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/dist
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
)

ExternalProject_Add(usrsctp
Expand All @@ -107,4 +110,5 @@ ExternalProject_Add(usrsctp
-Dsctp_build_programs=off
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/dist
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
)
17 changes: 16 additions & 1 deletion src/address.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ int addr_from_string(const char* buf, Address* addr) {
}

int addr_to_string(const Address* addr, char* buf, size_t len) {
memset(buf, 0, sizeof(len));
memset(buf, 0, len);
switch (addr->family) {
case AF_INET6:
return inet_ntop(AF_INET6, &addr->sin6.sin6_addr, buf, len) != NULL;
Expand All @@ -57,3 +57,18 @@ int addr_equal(const Address* a, const Address* b) {
// TODO
return 1;
}

int addr_cmp(const Address* a, const Address* b) {
if (a->family != b->family) return -1;
if (a->port != b->port) return -1;
switch (a->family) {
case AF_INET:
default:
if (a->sin.sin_addr.s_addr != b->sin.sin_addr.s_addr) return -1;
break;
case AF_INET6:
if (memcmp(&a->sin6.sin6_addr, &b->sin6.sin6_addr, sizeof(a->sin6.sin6_addr)) != 0) return -1;
break;
}
return 0;
}
3 changes: 3 additions & 0 deletions src/address.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,7 @@ int addr_from_string(const char* str, Address* addr);

int addr_equal(const Address* a, const Address* b);

// Compare two addresses; return 0 if equal, non-zero otherwise
int addr_cmp(const Address* a, const Address* b);

#endif // ADDRESS_H_
Loading