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
This commit is contained in:
George Joseph
2015-12-12 10:08:50 -07:00
parent 14b41115e3
commit 5b867fa904
3 changed files with 37 additions and 5 deletions

View File

@@ -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 */