| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent e96bb14 commit dd08d6c
1 file changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -32,21 +32,16 @@ Metadata metadata; | |||
| 32 | 32 | } | |
| 33 | 33 | ||
| 34 | 34 | #if HAVE_OPENSSL | |
| 35 | - constexpr int search(const char* s, int n, int c) { | ||
| 36 | - return *s == c ? n : search(s + 1, n + 1, c); | ||
| 35 | + static constexpr size_t search(const char* s, char c, size_t n = 0) { | ||
| 36 | + return *s == c ? n : search(s + 1, c, n + 1); | ||
| 37 | 37 | } | |
| 38 | 38 | ||
| 39 | - std::string GetOpenSSLVersion() { | ||
| 39 | + static inline std::string GetOpenSSLVersion() { | ||
| 40 | 40 | // sample openssl version string format | |
| 41 | 41 | // for reference: "OpenSSL 1.1.0i 14 Aug 2018" | |
| 42 | - char buf[128]; | ||
| 43 | - const char* etext = OPENSSL_VERSION_TEXT; | ||
| 44 | - const int start = search(etext, 0, ' ') + 1; | ||
| 45 | - etext += start; | ||
| 46 | - const int end = search(etext, start, ' '); | ||
| 47 | - const int len = end - start; | ||
| 48 | - snprintf(buf, sizeof(buf), "%.*s", len, &OPENSSL_VERSION_TEXT[start]); | ||
| 49 | - return std::string(buf); | ||
| 42 | + constexpr size_t start = search(OPENSSL_VERSION_TEXT, ' ') + 1; | ||
| 43 | + constexpr size_t len = search(&OPENSSL_VERSION_TEXT[start], ' '); | ||
| 44 | + return std::string(OPENSSL_VERSION_TEXT, start, len); | ||
| 50 | 45 | } | |
| 51 | 46 | #endif // HAVE_OPENSSL | |
| 52 | 47 | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments