From 5b867fa9043dec7aee8fbe21a6537efb103e4d92 Mon Sep 17 00:00:00 2001 From: George Joseph Date: Sat, 12 Dec 2015 10:08:50 -0700 Subject: pjsip/config_transport: Check pjproject version at runtime for async ops pjproject < 2.5.0 will segfault on a tls transport if async_operations is greater than 1. A runtime version check has been added to throw an error if the version is < 2.5.0 and async_operations > 1. To assist in the check, a new api "ast_compare_versions" was added to utils which compares 2 major.minor.patch.extra version strings. ASTERISK-25615 #close Change-Id: I8e88bb49cbcfbca88d9de705496d6f6a8c938a98 Reported-by: George Joseph Tested-by: George Joseph --- include/asterisk/utils.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include/asterisk') diff --git a/include/asterisk/utils.h b/include/asterisk/utils.h index 832500c31..cfb78c027 100644 --- a/include/asterisk/utils.h +++ b/include/asterisk/utils.h @@ -1099,4 +1099,16 @@ int ast_crypt_validate(const char *key, const char *expected); */ int ast_file_is_readable(const char *filename); +/* + * \brief Compare 2 major.minor.patch.extra version strings. + * \since 13.7.0 + * + * \param version1. + * \param version2. + * \return -1 if version 1 < version 2. + * \return 0 if version 1 = version 2. + * \return 1 if version 1 > version 2. + */ +int ast_compare_versions(const char *version1, const char *version2); + #endif /* _ASTERISK_UTILS_H */ -- cgit v1.2.3