diff options
| author | Nils Maier <maierman@web.de> | 2013-09-23 15:10:53 +0200 |
|---|---|---|
| committer | Nils Maier <maierman@web.de> | 2013-09-23 15:10:53 +0200 |
| commit | d560bf0e6fb12e4908140a577d5d8b574baa9dc4 (patch) | |
| tree | e0ea1c396adebb0db54775ad3c840dfa39620a87 /src/LibsslTLSContext.cc | |
| parent | 2f1f45bcc58c6b3a4dc050f3e3d9676c82b80e47 (diff) | |
TLS: Fix dangling str() pointers
Diffstat (limited to 'src/LibsslTLSContext.cc')
| -rw-r--r-- | src/LibsslTLSContext.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/LibsslTLSContext.cc b/src/LibsslTLSContext.cc index 6f59a5d4..e358b9cc 100644 --- a/src/LibsslTLSContext.cc +++ b/src/LibsslTLSContext.cc @@ -135,8 +135,9 @@ bool OpenSSLTLSContext::addP12CredentialFile(const std::string& p12file) std::stringstream ss; BufferedFile(p12file.c_str(), "rb").transfer(ss); - void *ptr = const_cast<char*>(ss.str().c_str()); - size_t len = ss.str().length(); + auto data = ss.str(); + void *ptr = const_cast<char*>(data.c_str()); + size_t len = data.length(); std::unique_ptr<BIO, bio_deleter> bio(BIO_new_mem_buf(ptr, len)); A2_LOG_DEBUG(fmt("p12 size: %" PRIu64, len)); |
