diff options
Diffstat (limited to 'ndb/src/mgmsrv/Services.cpp')
-rw-r--r-- | ndb/src/mgmsrv/Services.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/ndb/src/mgmsrv/Services.cpp b/ndb/src/mgmsrv/Services.cpp index ed32ab9c963..9a4980eefdc 100644 --- a/ndb/src/mgmsrv/Services.cpp +++ b/ndb/src/mgmsrv/Services.cpp @@ -25,7 +25,6 @@ #include <signaldata/SetLogLevelOrd.hpp> #include <LogLevel.hpp> #include <BaseString.hpp> -#include <Base64.hpp> #include <ConfigValues.hpp> #include <mgmapi_configuration.hpp> @@ -33,6 +32,8 @@ #include "Services.hpp" #include "../mgmapi/ndb_logevent.hpp" +#include <base64.h> + extern bool g_StopServer; static const unsigned int MAX_READ_TIMEOUT = 1000 ; @@ -598,17 +599,18 @@ MgmApiSession::getConfig_common(Parser_t::Context &, cfg->pack(src); NdbMutex_Unlock(m_mgmsrv.m_configMutex); - BaseString str; - int res = base64_encode(src, str); + char *tmp_str = (char *) malloc(base64_needed_encoded_length(src.length())); + int res = base64_encode(src.get_data(), src.length(), tmp_str); m_output->println("get config reply"); m_output->println("result: Ok"); - m_output->println("Content-Length: %d", str.length()); + m_output->println("Content-Length: %d", strlen(tmp_str)); m_output->println("Content-Type: ndbconfig/octet-stream"); m_output->println("Content-Transfer-Encoding: base64"); m_output->println(""); - m_output->println(str.c_str()); + m_output->println(tmp_str); + free(tmp_str); return; } |