Changeset 818b54e in nscp
- Timestamp:
- 11/11/09 06:59:09 (4 years ago)
- Branches:
- master, 0.4.0, 0.4.1, 0.4.2
- Children:
- 3eedfa6
- Parents:
- 77b729e
- Files:
-
- 2 added
- 22 edited
-
AutoBuild.h (modified) (1 diff)
-
include/NSCHelper.cpp (modified) (21 diffs)
-
include/NSCHelper.h (modified) (1 diff)
-
include/NTService.h (modified) (1 diff)
-
include/arrayBuffer.h (modified) (1 diff)
-
include/config.h (modified) (1 diff)
-
include/nsc_module_wrapper.hpp (modified) (1 diff)
-
include/settings/Settings.h (modified) (3 diffs)
-
include/simpleini/ConvertUTF.c (added)
-
include/simpleini/ConvertUTF.h (added)
-
include/simpleini/simpleini.h (modified) (1 diff)
-
include/strEx.h (modified) (2 diffs)
-
include/types.hpp (modified) (1 diff)
-
service/CMakeLists.txt (modified) (3 diffs)
-
service/NSCPlugin.cpp (modified) (2 diffs)
-
service/NSCPlugin.h (modified) (1 diff)
-
service/NSClient++-2005.vcproj (modified) (4 diffs)
-
service/NSClient++.cpp (modified) (32 diffs)
-
service/NSClient++.h (modified) (5 diffs)
-
service/StdAfx.h (modified) (1 diff)
-
service/core_api.cpp (modified) (19 diffs)
-
service/core_api.h (modified) (1 diff)
-
service/settings_manager_impl.cpp (modified) (2 diffs)
-
service/settings_manager_impl.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
AutoBuild.h
rd5356c1 r818b54e 5 5 #define FILEVER 0,4,0,33 6 6 #define PRODUCTVER 0,4,0,33 7 #define STRFILEVER _T("0.4.0.33")8 #define STRPRODUCTVER _T("0.4.0.33")9 #define STRPRODUCTDATE _T("2009-11-01")7 #define STRFILEVER "a0.4.0.33" 8 #define STRPRODUCTVER "a0.4.0.33" 9 #define STRPRODUCTDATE "2009-11-01" 10 10 #endif // AUTOBUILD_H -
include/NSCHelper.cpp
r7f9c823 r818b54e 73 73 // @todo deprecate this 74 74 if (str.length() >= bufLen) { 75 std::wstring sstr = str.substr(0, min(10, str.length()));75 std::wstring sstr = str.substr(0, bufLen-2); 76 76 NSC_DEBUG_MSG_STD(_T("String (") + strEx::itos(str.length()) + _T(") to long to fit inside buffer(") + strEx::itos(bufLen) + _T(") : ") + sstr); 77 77 return NSCAPI::isInvalidBufferLen; … … 218 218 * @return The returned status of the command 219 219 */ 220 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommandRAW(const wchar_t* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR*returnPerfBuffer, unsigned int returnPerfBufferLen)220 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommandRAW(const wchar_t* command, const unsigned int argLen, wchar_t **argument, wchar_t *returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t *returnPerfBuffer, unsigned int returnPerfBufferLen) 221 221 { 222 222 if (!fNSAPIInject) … … 233 233 * @return The return of the command 234 234 */ 235 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const TCHAR* command, const unsigned int argLen, TCHAR**argument, std::wstring & message, std::wstring & perf)235 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const wchar_t* command, const unsigned int argLen, wchar_t **argument, std::wstring & message, std::wstring & perf) 236 236 { 237 237 if (!fNSAPIInject) 238 238 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 239 239 unsigned int buf_len = getBufferLength(); 240 TCHAR *msgBuffer = new TCHAR[buf_len+1];241 TCHAR *perfBuffer = new TCHAR[buf_len+1];240 wchar_t *msgBuffer = new wchar_t[buf_len+1]; 241 wchar_t *perfBuffer = new wchar_t[buf_len+1]; 242 242 msgBuffer[0] = 0; 243 243 perfBuffer[0] = 0; … … 276 276 * @return The return of the command 277 277 */ 278 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const TCHAR* command, std::list<std::wstring> argument, std::wstring & message, std::wstring & perf)278 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const wchar_t* command, std::list<std::wstring> argument, std::wstring & message, std::wstring & perf) 279 279 { 280 280 if (!fNSAPIInject) … … 284 284 285 285 unsigned int argLen; 286 TCHAR** aBuffer = arrayBuffer::list2arrayBuffer(argument, argLen);287 TCHAR *msgBuffer = new TCHAR[buf_len+1];288 TCHAR *perfBuffer = new TCHAR[buf_len+1];286 wchar_t ** aBuffer = arrayBuffer::list2arrayBuffer(argument, argLen); 287 wchar_t *msgBuffer = new wchar_t[buf_len+1]; 288 wchar_t *perfBuffer = new wchar_t[buf_len+1]; 289 289 msgBuffer[0] = 0; 290 290 perfBuffer[0] = 0; … … 320 320 * @param command The command to execute 321 321 * @param buffer The buffer to split 322 * @param spli tCharThe char to use as splitter322 * @param spliwchar_t The char to use as splitter 323 323 * @param message The return message buffer 324 324 * @param perf The return performance data buffer 325 325 * @return The result of the command 326 326 */ 327 NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const TCHAR* command, TCHAR* buffer, TCHARsplitChar, std::wstring & message, std::wstring & perf)327 NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const wchar_t* command, wchar_t* buffer, wchar_t splitChar, std::wstring & message, std::wstring & perf) 328 328 { 329 329 if (!fNSAPIInject) 330 330 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 331 331 unsigned int argLen = 0; 332 TCHAR** aBuffer;332 wchar_t ** aBuffer; 333 333 if (buffer) 334 334 aBuffer= arrayBuffer::split2arrayBuffer(buffer, splitChar, argLen); … … 343 343 * @param command The command to execute 344 344 * @param buffer The buffer to split 345 * @param spli tCharThe char to use as splitter345 * @param spliwchar_t The char to use as splitter 346 346 * @param message The return message buffer 347 347 * @param perf The return performance data buffer 348 348 * @return The result of the command 349 349 */ 350 NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const std::wstring command, const std::wstring buffer, TCHAR splitChar, std::wstring & message, std::wstring & perf, bool escape) 350 namespace NSCModuleHelper { 351 NSCAPI::nagiosReturn InjectSplitAndCommand(const std::wstring command, const std::wstring buffer, wchar_t spliwchar_t, std::wstring & message, std::wstring & perf, int escape) 351 352 { 352 353 if (!fNSAPIInject) 353 354 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 354 355 unsigned int argLen = 0; 355 TCHAR** aBuffer;356 wchar_t ** aBuffer; 356 357 if (buffer.empty()) 357 358 aBuffer= arrayBuffer::createEmptyArrayBuffer(argLen); 358 359 else 359 aBuffer= arrayBuffer::split2arrayBuffer(buffer, spli tChar, argLen, escape);360 aBuffer= arrayBuffer::split2arrayBuffer(buffer, spliwchar_t, argLen, escape); 360 361 NSCAPI::nagiosReturn ret = InjectCommand(command.c_str(), argLen, aBuffer, message, perf); 361 362 arrayBuffer::destroyArrayBuffer(aBuffer, argLen); 362 363 return ret; 364 } 363 365 } 364 366 /** … … 392 394 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 393 395 unsigned int buf_len = getBufferLength(); 394 TCHAR *buffer = new TCHAR[buf_len+1];396 wchar_t *buffer = new wchar_t[buf_len+1]; 395 397 if (fNSAPIGetSettingsString(section.c_str(), key.c_str(), defaultValue.c_str(), buffer, buf_len) != NSCAPI::isSuccess) { 396 398 delete [] buffer; … … 437 439 return fNSAPIGetSettingsInt(section.c_str(), key.c_str(), defaultValue); 438 440 } 439 440 void NSCModuleHelper::settings_register_key(std::wstring path, std::wstring key, NSCAPI::settings_type type, std::wstring title, std::wstring description, std::wstring defaultValue, booladvanced) {441 namespace NSCModuleHelper { 442 void settings_register_key(std::wstring path, std::wstring key, NSCAPI::settings_type type, std::wstring title, std::wstring description, std::wstring defaultValue, int advanced) { 441 443 if (!fNSAPISettingsRegKey) 442 444 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 443 445 fNSAPISettingsRegKey(path.c_str(), key.c_str(), type, title.c_str(), description.c_str(), defaultValue.c_str(), advanced); 444 446 } 445 void NSCModuleHelper::settings_register_path(std::wstring path, std::wstring title, std::wstring description, bool advanced) {447 void settings_register_path(std::wstring path, std::wstring title, std::wstring description, bool advanced) { 446 448 if (!fNSAPISettingsRegPath) 447 449 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); … … 450 452 451 453 452 void NSCModuleHelper::settings_save() {454 void settings_save() { 453 455 if (!fNSAPISettingsSave) 454 456 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 455 457 fNSAPISettingsSave(); 456 458 } 457 459 } 458 460 459 461 … … 486 488 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 487 489 unsigned int buf_len = getBufferLength(); 488 TCHAR *buffer = new TCHAR[buf_len+1];490 wchar_t *buffer = new wchar_t[buf_len+1]; 489 491 if (fNSAPIGetApplicationName(buffer, buf_len) != NSCAPI::isSuccess) { 490 492 delete [] buffer; … … 504 506 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 505 507 unsigned int buf_len = getBufferLength(); 506 TCHAR *buffer = new TCHAR[buf_len+1];508 wchar_t *buffer = new wchar_t[buf_len+1]; 507 509 if (fNSAPIGetBasePath(buffer, buf_len) != NSCAPI::isSuccess) { 508 510 delete [] buffer; … … 542 544 fNSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 543 545 len+=2; 544 TCHAR *buf = new TCHAR[len+1];546 wchar_t *buf = new wchar_t[len+1]; 545 547 NSCAPI::errorReturn ret = fNSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 546 548 if (ret == NSCAPI::isSuccess) { … … 558 560 fNSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 559 561 len+=2; 560 TCHAR *buf = new TCHAR[len+1];562 wchar_t *buf = new wchar_t[len+1]; 561 563 NSCAPI::errorReturn ret = fNSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 562 564 if (ret == NSCAPI::isSuccess) { … … 638 640 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 639 641 unsigned int buf_len = getBufferLength(); 640 TCHAR *buffer = new TCHAR[buf_len+1];642 wchar_t *buffer = new wchar_t[buf_len+1]; 641 643 if (fNSAPIDescribeCommand(command.c_str(), buffer, buf_len) != NSCAPI::isSuccess) { 642 644 delete [] buffer; … … 668 670 throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 669 671 unsigned int buf_len = getBufferLength(); 670 TCHAR *buffer = new TCHAR[buf_len+1];672 wchar_t *buffer = new wchar_t[buf_len+1]; 671 673 if (fNSAPIGetApplicationVersionStr(buffer, buf_len) != NSCAPI::isSuccess) { 672 674 delete [] buffer; … … 679 681 680 682 namespace NSCModuleWrapper { 683 #ifdef WIN32 681 684 HINSTANCE hModule_ = NULL; 685 #endif 682 686 } 683 687 /** … … 687 691 * @return TRUE 688 692 */ 689 BOOL NSCModuleWrapper::wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call) 693 #ifdef WIN32 694 int NSCModuleWrapper::wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call) 690 695 { 691 696 switch (ul_reason_for_call) … … 709 714 } 710 715 716 #endif 711 717 /** 712 718 * Wrapper function around the ModuleHelperInit call. … … 759 765 * @ copy status 760 766 */ 761 NSCAPI::errorReturn NSCModuleWrapper::wrapGetModuleName( TCHAR* buf, unsigned int bufLen, std::wstring str) {767 NSCAPI::errorReturn NSCModuleWrapper::wrapGetModuleName(wchar_t* buf, unsigned int bufLen, std::wstring str) { 762 768 return NSCHelper::wrapReturnString(buf, bufLen, str, NSCAPI::isSuccess); 763 769 } 764 770 765 NSCAPI::errorReturn NSCModuleWrapper::wrapGetConfigurationMeta( TCHAR* buf, unsigned int bufLen, std::wstring str) {771 NSCAPI::errorReturn NSCModuleWrapper::wrapGetConfigurationMeta(wchar_t* buf, unsigned int bufLen, std::wstring str) { 766 772 return NSCHelper::wrapReturnString(buf, bufLen, str, NSCAPI::isSuccess); 767 773 } … … 811 817 * @return the return code 812 818 */ 813 NSCAPI::nagiosReturn NSCModuleWrapper::wrapHandleCommand(NSCAPI::nagiosReturn retResult, const std::wstring retMessage, const std::wstring retPerformance, TCHAR *returnBufferMessage, unsigned int returnBufferMessageLen, TCHAR*returnBufferPerf, unsigned int returnBufferPerfLen) {819 NSCAPI::nagiosReturn NSCModuleWrapper::wrapHandleCommand(NSCAPI::nagiosReturn retResult, const std::wstring retMessage, const std::wstring retPerformance, wchar_t *returnBufferMessage, unsigned int returnBufferMessageLen, wchar_t *returnBufferPerf, unsigned int returnBufferPerfLen) { 814 820 if (retMessage.empty()) 815 821 return NSCAPI::returnIgnored; -
include/NSCHelper.h
r7f9c823 r818b54e 27 27 #include <charEx.h> 28 28 #include <arrayBuffer.h> 29 #include <types.hpp> 29 30 #ifdef WIN32 30 31 //#include <windows.h> -
include/NTService.h
r7f9c823 r818b54e 76 76 dispatchTable = new SERVICE_TABLE_ENTRY[2]; 77 77 dispatchTable[0].lpServiceName = serviceName_; 78 dispatchTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)TBase::service_main_dispatch;78 //dispatchTable[0].lpServiceProc = (LPSERVICE_MAIN_FUNCTION)TBase::service_main_dispatch; 79 79 dispatchTable[1].lpServiceName = NULL; 80 80 dispatchTable[1].lpServiceProc = NULL; -
include/arrayBuffer.h
r7f9c823 r818b54e 24 24 #include <list> 25 25 #include <iostream> 26 #include <types.hpp> 27 #include <msvc_wrappers.h> 26 28 /** 27 29 * @ingroup NSClient++ -
include/config.h
r7f9c823 r818b54e 28 28 #include <settings/macros.h> 29 29 // Application Name 30 #define SZAPPNAME _T("NSClient++") 30 31 #ifndef WSTR 32 #define WSTR(x) _T(x) 33 #endif 34 35 #define SZAPPNAME WSTR("NSClient++") 31 36 32 37 // Version 33 #define SZBETATAG _T(" ") 34 //#define SZBETATAG _T(" BETA ") 35 //#define SZBETATAG _T(" BETA ") 36 #define SZVERSION STRPRODUCTVER SZBETATAG STRPRODUCTDATE 38 #define SZBETATAG " " 39 //#define SZBETATAG " BETA " 40 //#define SZBETATAG " BETA " 41 #define _SZVERSION WSTR(STRPRODUCTVER) WSTR(SZBETATAG) WSTR(STRPRODUCTDATE) 42 #define SZVERSION _SZVERSION 43 //STRPRODUCTVER SZBETATAG STRPRODUCTDATE 37 44 //FILEVER[0] 38 45 39 46 #if defined(_M_IX86) 40 #define SZARCH _T("w32")47 #define SZARCH WSTR("w32") 41 48 #elif defined(_M_X64) 42 #define SZARCH _T("x64")49 #define SZARCH WSTR("x64") 43 50 #elif defined(_M_IA64) 44 #define SZARCH _T("ia64")51 #define SZARCH WSTR("ia64") 45 52 #else 46 #define SZARCH _T("unknown")53 #define SZARCH WSTR("unknown") 47 54 #endif 48 55 49 56 // internal name of the service 50 #define SZSERVICENAME _T("NSClientpp")57 #define SZSERVICENAME WSTR("NSClientpp") 51 58 52 59 // Description of service 53 #define SZSERVICEDESCRIPTION _T("Nagios Windows Agent (Provides performance data for Nagios server)")60 #define SZSERVICEDESCRIPTION WSTR("Nagios Windows Agent (Provides performance data for Nagios server)") 54 61 55 62 // displayed name of the service 56 #define SZSERVICEDISPLAYNAME SZSERVICENAME _T(" (Nagios) ") SZVERSION _T(" ") SZARCH63 #define SZSERVICEDISPLAYNAME SZSERVICENAME WSTR(" (Nagios) ") SZVERSION WSTR(" ") SZARCH 57 64 58 65 // list of service dependencies - "dep1\0dep2\0\0" -
include/nsc_module_wrapper.hpp
r7f9c823 r818b54e 12 12 int revision; 13 13 }; 14 14 #ifdef WIN32 15 15 int wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call); 16 16 HINSTANCE getModule(); 17 17 #endif 18 18 int wrapModuleHelperInit(NSCModuleHelper::lpNSAPILoader f);; 19 19 NSCAPI::errorReturn wrapGetModuleName(wchar_t* buf, unsigned int buflen, std::wstring str); -
include/settings/Settings.h
r773ad32 r818b54e 21 21 #pragma once 22 22 23 #include <types.hpp> 23 24 #include <Singleton.h> 24 25 #include <string> … … 754 755 throw SettingsException(_T("Unknown keytype for: ") + *cit + _T(".") + *citk); 755 756 } else { 756 get_logger()->debug(__FILEW__, __LINE__, _T(" ŽSkipping (already exists): ") + *cit + _T(".") + *citk);757 get_logger()->debug(__FILEW__, __LINE__, _T("Skipping (already exists): ") + *cit + _T(".") + *citk); 757 758 } 758 759 } else { 759 get_logger()->debug(__FILEW__, __LINE__, _T(" ŽSkipping (advanced): ") + *cit + _T(".") + *citk);760 get_logger()->debug(__FILEW__, __LINE__, _T("Skipping (advanced): ") + *cit + _T(".") + *citk); 760 761 } 761 762 } … … 1256 1257 return int_val; 1257 1258 if (type==SettingsCore::key_bool) 1258 return int_val==1? TRUE:FALSE;1259 return int_val==1?1:0; 1259 1260 return -1; 1260 1261 } -
include/simpleini/simpleini.h
r9567d4b r818b54e 252 252 #endif // _WIN32 253 253 254 #define SI_CONVERT_ICU 255 254 256 #if defined(SI_CONVERT_ICU) 255 257 # include <unicode/ustring.h> -
include/strEx.h
r77b729e r818b54e 32 32 #include <iostream> 33 33 #include <string> 34 #include <locale>35 34 #include <boost/lexical_cast.hpp> 36 35 #include <boost/date_time.hpp> … … 71 70 std::locale loc; 72 71 for(unsigned int i= 0; i < arg.size(); ++i) 73 { 74 result += std::use_facet<std::ctype<wchar_t> >(loc).narrow(arg[i]); 75 } 72 result += std::use_facet<std::ctype<char> >(loc).narrow(arg[i], 0); 76 73 return result; 77 74 } -
include/types.hpp
r2677e15 r818b54e 2 2 3 3 4 #ifndef WIN32 5 typedef unsigned long DWORD; 6 typedef void* LPVOID; 7 #endif 8 9 4 10 #ifdef WIN32 5 #else 6 typedef unsigned long DWORD 11 #define wcscasecmp _wcsicmp 7 12 #endif 13 14 #ifndef __FILEW__ 15 #define WSTR(x) _T(x) 16 #define __FILEW__ WSTR(__FILE__) 17 #endif -
service/CMakeLists.txt
r7f9c823 r818b54e 28 28 SET(NSCP_LOCAL_INCLUDE_PATH "${PROJECT_BINARY_DIR}/../include" CACHE PATH "directory containing NSCP specific includes") 29 29 30 31 set(Boost_USE_STATIC_LIBS ON) 32 set(Boost_USE_MULTITHREADED ON) 33 34 30 35 IF(WIN32) 31 SET(USERLIB_ROOT "c:/libraries" CACHE PATH "directory containing the dependency libraries")36 #SET(USERLIB_ROOT "c:/libraries" CACHE PATH "directory containing the dependency libraries") 32 37 SET(LIB_INSTALL_DIR "lib" CACHE STRING "Default path for libraries within ${CMAKE_INSTALL_PREFIX}") 33 38 SET(RUNDIR "c:/nscp" CACHE PATH "Not really used in WIN32") 34 SET(CONFIGURATION c:/witty/wt_config.xml CACHE PATH "Path for the wt configuration file") 35 SET(DEPLOYROOT c:/nscp/ CACHE PATH "Path to deploy examples into") 36 SET(BOOST_DIR ${USERLIB_ROOT} CACHE PATH "Use boost in directory") 37 SET(BOOST_VERSION "1_34_1" CACHE STRING "Use boost version in BOOST_DIR") 38 OPTION(BOOST_DYNAMIC "Link to boost DLLs (OFF means static link)" OFF) 39 #SET(CONFIGURATION c:/witty/wt_config.xml CACHE PATH "Path for the wt configuration file") 40 #SET(DEPLOYROOT c:/nscp/ CACHE PATH "Path to deploy examples into") 41 #SET(BOOST_DIR ${USERLIB_ROOT} CACHE PATH "Use boost in directory") 42 SET(BOOST_LIBRARYDIR c:/src/lib/x86 CACHE PATH "") 43 SET(BOOST_INCLUDEDIR c:/src/include/boost-1_39 CACHE PATH "") 44 45 SET(BOOST_LIB_PREFIX lib CACHE STRING "Look for Boost libraries prefixed with this") 46 SET(BOOST_LIB_SUFFIX vc80-mt CACHE STRING "Look for Boost libraries ending with this") 47 48 #SET(BOOST_VERSION "1_34_1" CACHE STRING "Use boost version in BOOST_DIR") 49 #OPTION(BOOST_DYNAMIC "Link to boost DLLs (OFF means static link)" OFF) 39 50 40 51 ELSE(WIN32) … … 51 62 ENDIF(WIN32) 52 63 53 INCLUDE(../cmake/WtFindBoost.txt) 54 INCLUDE(../cmake/WtFindAsio.txt) 64 find_package(Boost COMPONENTS system filesystem thread REQUIRED) 65 66 #INCLUDE(../cmake/WtFindBoost.txt) 67 #INCLUDE(../cmake/WtFindAsio.txt) 55 68 INCLUDE(../cmake/WtFindSsl.txt) 56 69 … … 92 105 ../include/NSCHelper.cpp 93 106 ../include/arrayBuffer.cpp 94 ../include/ServiceCmd.cpp107 # ../include/ServiceCmd.cpp 95 108 ../include/b64/b64.c 96 109 ) 97 target_link_libraries (NSCP ${EXTRA_LIBS}) 110 111 target_link_libraries(NSCP 112 ${Boost_FILESYSTEM_LIBRARY} 113 ${Boost_LIBRARIES} 114 ${EXTRA_LIBS} 115 ) 116 117 98 118 99 119 -
service/NSCPlugin.cpp
r7f9c823 r818b54e 19 19 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * 20 20 ***************************************************************************/ 21 #include " stdafx.h"21 #include "StdAfx.h" 22 22 #include "NSClient++.h" 23 23 #include <error.hpp> … … 215 215 * @throws NSPluginException if the module is not loaded. 216 216 */ 217 NSCAPI::nagiosReturn NSCPlugin::handleCommand(const wchar_t* command, const unsigned int argLen, wchar_t **arguments, wchar_t* returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR* returnPerfBuffer, unsigned int returnPerfBufferLen) {217 NSCAPI::nagiosReturn NSCPlugin::handleCommand(const wchar_t* command, const unsigned int argLen, wchar_t **arguments, wchar_t* returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t* returnPerfBuffer, unsigned int returnPerfBufferLen) { 218 218 if (!isLoaded()) 219 219 throw NSPluginException(module_, _T("Library is not loaded")); -
service/NSCPlugin.h
r7f9c823 r818b54e 154 154 bool hasCommandHandler(void); 155 155 bool hasMessageHandler(void); 156 NSCAPI::nagiosReturn handleCommand(const wchar_t *command, const unsigned int argLen, wchar_t **arguments, wchar_t* returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR* returnPerfBuffer, unsigned int returnPerfBufferLen);156 NSCAPI::nagiosReturn handleCommand(const wchar_t *command, const unsigned int argLen, wchar_t **arguments, wchar_t* returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t* returnPerfBuffer, unsigned int returnPerfBufferLen); 157 157 void handleMessage(int msgType, const wchar_t* file, const int line, const wchar_t *message); 158 158 void unload(void); -
service/NSClient++-2005.vcproj
r7f9c823 r818b54e 1833 1833 </File> 1834 1834 <File 1835 RelativePath="..\include\NSCHelper.cpp"1836 >1837 <FileConfiguration1838 Name="Release|Win32"1839 >1840 <Tool1841 Name="VCCLCompilerTool"1842 UsePrecompiledHeader="0"1843 PrecompiledHeaderThrough=" "1844 PrecompiledHeaderFile=" "1845 />1846 </FileConfiguration>1847 <FileConfiguration1848 Name="Release|x64"1849 >1850 <Tool1851 Name="VCCLCompilerTool"1852 UsePrecompiledHeader="0"1853 PrecompiledHeaderThrough=" "1854 PrecompiledHeaderFile=" "1855 />1856 </FileConfiguration>1857 <FileConfiguration1858 Name="Debug|Win32"1859 >1860 <Tool1861 Name="VCCLCompilerTool"1862 UsePrecompiledHeader="0"1863 PrecompiledHeaderThrough=" "1864 PrecompiledHeaderFile=" "1865 />1866 </FileConfiguration>1867 <FileConfiguration1868 Name="Debug|x64"1869 >1870 <Tool1871 Name="VCCLCompilerTool"1872 UsePrecompiledHeader="0"1873 PrecompiledHeaderThrough=" "1874 PrecompiledHeaderFile=" "1875 />1876 </FileConfiguration>1877 <FileConfiguration1878 Name="Distribution|Win32"1879 >1880 <Tool1881 Name="VCCLCompilerTool"1882 UsePrecompiledHeader="0"1883 PrecompiledHeaderThrough=" "1884 PrecompiledHeaderFile=" "1885 />1886 </FileConfiguration>1887 <FileConfiguration1888 Name="Distribution|x64"1889 >1890 <Tool1891 Name="VCCLCompilerTool"1892 UsePrecompiledHeader="0"1893 PrecompiledHeaderThrough=" "1894 PrecompiledHeaderFile=" "1895 />1896 </FileConfiguration>1897 <FileConfiguration1898 Name="Nightly|Win32"1899 >1900 <Tool1901 Name="VCCLCompilerTool"1902 UsePrecompiledHeader="0"1903 PrecompiledHeaderThrough=" "1904 PrecompiledHeaderFile=" "1905 />1906 </FileConfiguration>1907 <FileConfiguration1908 Name="Nightly|x64"1909 >1910 <Tool1911 Name="VCCLCompilerTool"1912 UsePrecompiledHeader="0"1913 PrecompiledHeaderThrough=" "1914 PrecompiledHeaderFile=" "1915 />1916 </FileConfiguration>1917 <FileConfiguration1918 Name="Debug-MemCheck|Win32"1919 >1920 <Tool1921 Name="VCCLCompilerTool"1922 UsePrecompiledHeader="0"1923 PrecompiledHeaderThrough=" "1924 PrecompiledHeaderFile=" "1925 />1926 </FileConfiguration>1927 <FileConfiguration1928 Name="Debug-MemCheck|x64"1929 >1930 <Tool1931 Name="VCCLCompilerTool"1932 UsePrecompiledHeader="0"1933 PrecompiledHeaderThrough=" "1934 PrecompiledHeaderFile=" "1935 />1936 </FileConfiguration>1937 <FileConfiguration1938 Name="OP5|Win32"1939 >1940 <Tool1941 Name="VCCLCompilerTool"1942 UsePrecompiledHeader="0"1943 PrecompiledHeaderThrough=" "1944 PrecompiledHeaderFile=" "1945 />1946 </FileConfiguration>1947 <FileConfiguration1948 Name="OP5|x64"1949 >1950 <Tool1951 Name="VCCLCompilerTool"1952 UsePrecompiledHeader="0"1953 PrecompiledHeaderThrough=" "1954 PrecompiledHeaderFile=" "1955 />1956 </FileConfiguration>1957 </File>1958 <File1959 1835 RelativePath=".\NSClient++.cpp" 1960 1836 > … … 2327 2203 </File> 2328 2204 <File 2329 RelativePath=". \include\remote_processes.hpp"2205 RelativePath="..\include\remote_processes.hpp" 2330 2206 > 2331 2207 </File> … … 2371 2247 </File> 2372 2248 <File 2249 RelativePath="..\include\simpleini\simpleini.h" 2250 > 2251 </File> 2252 <File 2373 2253 RelativePath=".\include\Singleton.h" 2374 2254 > … … 2388 2268 <File 2389 2269 RelativePath=".\tray_manager.hpp" 2270 > 2271 </File> 2272 <File 2273 RelativePath="..\include\types.hpp" 2390 2274 > 2391 2275 </File> -
service/NSClient++.cpp
r77b729e r818b54e 27 27 //#endif 28 28 #endif 29 #include <remote_processes.hpp>29 //#include <remote_processes.hpp> 30 30 //#include <winsvc.h> 31 31 //#include <Userenv.h> 32 32 //#include <Lmcons.h> 33 #include <remote_processes.hpp>33 //#include <remote_processes.hpp> 34 34 #include "core_api.h" 35 35 #include "settings_manager_impl.h" … … 68 68 } 69 69 DWORD threadProc(LPVOID lpParameter) { 70 #ifdef WIN32 70 71 start_block* param = static_cast<start_block*>(lpParameter); 71 72 DWORD dwSessionId = param->sessionId; … … 78 79 break; 79 80 } 81 #endif 80 82 return 0; 81 83 } … … 196 198 197 199 void display(std::wstring title, std::wstring message) { 200 #ifdef WIN32 198 201 ::MessageBox(NULL, message.c_str(), title.c_str(), MB_OK|MB_ICONERROR); 202 #endif 203 std::wcout << title << std::endl << message << std::endl; 199 204 } 200 205 … … 212 217 * @return exit status 213 218 */ 214 int wmain(int argc, TCHAR* argv[], TCHAR* envp[]) 219 int nscp_main(int argc, wchar_t* argv[]); 220 221 #ifdef WIN32 222 int wmain(int argc, wchar_t* argv[], wchar_t* envp[]) { return nscp_main(argc, argv); } 223 #else 224 int main(int argc, char* argv[]) { 225 wchar_t **wargv = new wchar_t*[argc]; 226 for (int i=0;i<argc;i++) { 227 std::wstring s = to_wstring(argv[i]); 228 wargv[i] = new wchar_t[s.length()+10]; 229 wcscpy(wargv[i], s.c_str()); 230 } 231 int ret = nscp_main(argc, wargv); 232 for (int i=0;i<argc;i++) { 233 delete [] wargv[i]; 234 } 235 delete [] wargv; 236 } 237 #endif 238 int nscp_main(int argc, wchar_t* argv[]) 215 239 { 216 240 srand( (unsigned)time( NULL ) ); … … 219 243 if (false) { 220 244 #ifdef WIN32 221 } if ( _wcsicmp( _T("install"), argv[1]+1 ) == 0 ) {245 } if ( wcscasecmp( _T("install"), argv[1]+1 ) == 0 ) { 222 246 bool bGui = false; 223 247 bool bStart = false; 224 248 std::wstring service_name, service_description; 225 249 for (int i=2;i<argc;i++) { 226 if ( _wcsicmp( _T("gui"), argv[i]) == 0) {250 if (wcscasecmp( _T("gui"), argv[i]) == 0) { 227 251 bGui = true; 228 } else if ( _wcsicmp( _T("start"), argv[i]) == 0) {252 } else if (wcscasecmp( _T("start"), argv[i]) == 0) { 229 253 bStart = true; 230 254 } else { … … 264 288 LOG_MESSAGE(_T("Service installed!")); 265 289 return 0; 266 } else if ( _wcsicmp( _T("uninstall"), argv[1]+1 ) == 0 ) {290 } else if ( wcscasecmp( _T("uninstall"), argv[1]+1 ) == 0 ) { 267 291 bool bGui = false; 268 292 bool bStop = false; 269 293 std::wstring service_name; 270 294 for (int i=2;i<argc;i++) { 271 if ( _wcsicmp( _T("gui"), argv[i]) == 0) {295 if (wcscasecmp( _T("gui"), argv[i]) == 0) { 272 296 bGui = true; 273 } else if ( _wcsicmp( _T("stop"), argv[i]) == 0) {297 } else if (wcscasecmp( _T("stop"), argv[i]) == 0) { 274 298 bStop = true; 275 299 } else { … … 298 322 LOG_MESSAGE(_T("Service uninstalled!")); 299 323 return 0; 300 } else if ( _wcsicmp( _T("start"), argv[1]+1 ) == 0 ) {324 } else if ( wcscasecmp( _T("start"), argv[1]+1 ) == 0 ) { 301 325 g_bConsoleLog = true; 302 326 bool bGui = false; 303 327 std::wstring service_name; 304 328 for (int i=2;i<argc;i++) { 305 if ( _wcsicmp( _T("gui"), argv[i]) == 0) {329 if (wcscasecmp( _T("gui"), argv[i]) == 0) { 306 330 bGui = true; 307 331 } else { … … 319 343 return -1; 320 344 } 321 } else if ( _wcsicmp( _T("stop"), argv[1]+1 ) == 0 ) {345 } else if ( wcscasecmp( _T("stop"), argv[1]+1 ) == 0 ) { 322 346 g_bConsoleLog = true; 323 347 bool bGui = false; 324 348 std::wstring service_name; 325 349 for (int i=2;i<argc;i++) { 326 if ( _wcsicmp( _T("gui"), argv[i]) == 0) {350 if (wcscasecmp( _T("gui"), argv[i]) == 0) { 327 351 bGui = true; 328 352 } else { … … 340 364 return -1; 341 365 } 342 } else if ( _wcsicmp( _T("svc"), argv[1]+1 ) == 0 ) {366 } else if ( wcscasecmp( _T("svc"), argv[1]+1 ) == 0 ) { 343 367 g_bConsoleLog = true; 344 368 try { … … 349 373 } 350 374 #endif 351 } else if ( _wcsicmp( _T("encrypt"), argv[1]+1 ) == 0 ) {375 } else if ( wcscasecmp( _T("encrypt"), argv[1]+1 ) == 0 ) { 352 376 g_bConsoleLog = true; 353 377 std::wstring password; … … 365 389 settings_manager::destroy_settings(); 366 390 return 0; 367 } else if ( _wcsicmp( _T("about"), argv[1]+1 ) == 0 ) {391 } else if ( wcscasecmp( _T("about"), argv[1]+1 ) == 0 ) { 368 392 g_bConsoleLog = true; 369 393 LOG_MESSAGE(SZAPPNAME _T(" (C) Michael Medin - michael<at>medin<dot>name")); … … 402 426 } 403 427 return false; 404 } else if ( _wcsicmp( _T("version"), argv[1]+1 ) == 0 ) {428 } else if ( wcscasecmp( _T("version"), argv[1]+1 ) == 0 ) { 405 429 g_bConsoleLog = true; 406 430 LOG_MESSAGE(SZAPPNAME _T(" Version: ") SZVERSION _T(", Plattform: ") SZARCH); 407 } else if ( _wcsicmp( _T("d"), argv[1]+1 ) == 0 ) {431 } else if ( wcscasecmp( _T("d"), argv[1]+1 ) == 0 ) { 408 432 // Run command from command line (like NRPE) but with debug enabled 409 } else if ( _wcsicmp( _T("noboot"), argv[1]+1 ) == 0 ) {433 } else if ( wcscasecmp( _T("noboot"), argv[1]+1 ) == 0 ) { 410 434 g_bConsoleLog = true; 411 435 mainClient.enableDebug(false); … … 417 441 mainClient.exitCore(true); 418 442 return nRetCode; 419 } else if ( _wcsicmp( _T("c"), argv[1]+1 ) == 0 ) {443 } else if ( wcscasecmp( _T("c"), argv[1]+1 ) == 0 ) { 420 444 // Run command from command line (like NRPE) 421 445 g_bConsoleLog = true; … … 433 457 mainClient.exitCore(true); 434 458 return nRetCode; 435 } else if ( _wcsicmp( _T("test"), argv[1]+1 ) == 0 ) {459 } else if ( wcscasecmp( _T("test"), argv[1]+1 ) == 0 ) { 436 460 bool server = false; 437 if (argc > 2 && _wcsicmp( _T("server"), argv[2] ) == 0 ) {461 if (argc > 2 && wcscasecmp( _T("server"), argv[2] ) == 0 ) { 438 462 server = true; 439 463 } 440 464 std::wcout << "Launching test mode - " << (server?_T("server mode"):_T("client mode")) << std::endl; 441 LOG_MESSAGE_STD(_T("Booting: " SZSERVICEDISPLAYNAME ));465 LOG_MESSAGE_STD(_T("Booting: ") SZSERVICEDISPLAYNAME ); 442 466 #ifdef WIN32 443 467 try { … … 618 642 } 619 643 620 void NSClientT::HandleSettingsCLI( TCHAR* arg, int argc, TCHAR* argv[]) {644 void NSClientT::HandleSettingsCLI(wchar_t* arg, int argc, wchar_t* argv[]) { 621 645 std::wstring sarg = arg; 622 646 try { … … 734 758 */ 735 759 bool NSClientT::initCore(bool boot) { 736 LOG_MESSAGE(_T("Attempting to start NSCLient++ - " SZVERSION));760 LOG_MESSAGE(_T("Attempting to start NSCLient++ - ") SZVERSION); 737 761 if (!settings_manager::init_settings(getBasePath())) { 738 762 return false; … … 815 839 try { 816 840 if (settings_manager::get_settings()->get_string(MAIN_MODULES_SECTION, *cit) == _T("disabled")) { 817 LOG_DEBUG_STD(_T("Not booting: " + *cit + _T(" since it is disabled.")));841 LOG_DEBUG_STD(_T("Not booting: ") + *cit + _T(" since it is disabled.")); 818 842 continue; 819 843 } … … 846 870 return false; 847 871 } 848 LOG_DEBUG_STD(_T("NSCLient++ - " SZVERSION) +_T(" Started!"));849 } 850 LOG_MESSAGE_STD(_T("NSCLient++ - " SZVERSION) +_T(" Started!"));872 LOG_DEBUG_STD(_T("NSCLient++ - ") SZVERSION _T(" Started!")); 873 } 874 LOG_MESSAGE_STD(_T("NSCLient++ - ") SZVERSION _T(" Started!")); 851 875 return true; 852 876 } … … 902 926 bool NSClientT::exitCore(bool boot) { 903 927 plugins_loaded_ = false; 904 LOG_DEBUG(_T("Attempting to stop NSCLient++ - " SZVERSION));928 LOG_DEBUG(_T("Attempting to stop NSCLient++ - ") SZVERSION); 905 929 if (boot) { 906 930 try { … … 965 989 } 966 990 } 967 LOG_MESSAGE_STD(_T("NSCLient++ - " SZVERSION) +_T(" Stopped succcessfully"));991 LOG_MESSAGE_STD(_T("NSCLient++ - ") SZVERSION _T(" Stopped succcessfully")); 968 992 return true; 969 993 } … … 1018 1042 // Member functions 1019 1043 1020 int NSClientT::commandLineExec(const TCHAR* module, const TCHAR* command, const unsigned int argLen, TCHAR** args) {1044 int NSClientT::commandLineExec(const wchar_t* module, const wchar_t* command, const unsigned int argLen, wchar_t** args) { 1021 1045 std::wstring sModule = module; 1022 1046 std::wstring moduleList = _T(""); … … 1258 1282 } 1259 1283 1260 NSCAPI::nagiosReturn NSClientT::inject(std::wstring command, std::wstring arguments, TCHARsplitter, bool escape, std::wstring &msg, std::wstring & perf) {1284 NSCAPI::nagiosReturn NSClientT::inject(std::wstring command, std::wstring arguments, wchar_t splitter, bool escape, std::wstring &msg, std::wstring & perf) { 1261 1285 /*if (shared_client_.get() != NULL && shared_client_->hasMaster()) { 1262 1286 try { … … 1271 1295 } else */{ 1272 1296 unsigned int aLen = 0; 1273 TCHAR** aBuf = arrayBuffer::split2arrayBuffer(arguments, splitter, aLen, escape);1297 wchar_t ** aBuf = arrayBuffer::split2arrayBuffer(arguments, splitter, aLen, escape); 1274 1298 unsigned int buf_len = getBufferLength(); 1275 TCHAR * mBuf = new TCHAR[buf_len+1]; mBuf[0] = '\0';1276 TCHAR * pBuf = new TCHAR[buf_len+1]; pBuf[0] = '\0';1299 wchar_t * mBuf = new wchar_t[buf_len+1]; mBuf[0] = '\0'; 1300 wchar_t * pBuf = new wchar_t[buf_len+1]; pBuf[0] = '\0'; 1277 1301 NSCAPI::nagiosReturn ret = injectRAW(command.c_str(), aLen, aBuf, mBuf, buf_len, pBuf, buf_len); 1278 1302 arrayBuffer::destroyArrayBuffer(aBuf, aLen); … … 1302 1326 * @return The command status 1303 1327 */ 1304 NSCAPI::nagiosReturn NSClientT::injectRAW(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR*returnPerfBuffer, unsigned int returnPerfBufferLen) {1328 NSCAPI::nagiosReturn NSClientT::injectRAW(const wchar_t* command, const unsigned int argLen, wchar_t **argument, wchar_t *returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t *returnPerfBuffer, unsigned int returnPerfBufferLen) { 1305 1329 if (logDebug()) { 1306 1330 LOG_DEBUG_STD(_T("Injecting: ") + (std::wstring) command + _T(": ") + arrayBuffer::arrayBuffer2string(argument, argLen, _T(", "))); … … 1397 1421 1398 1422 void log_broken_message(std::wstring msg) { 1423 #ifdef WIN32 1399 1424 OutputDebugString(msg.c_str()); 1425 #endif 1400 1426 std::wcout << msg << std::endl; 1401 1427 } … … 1408 1434 * @param message The message as a human readable string. 1409 1435 */ 1410 void NSClientT::reportMessage(int msgType, const TCHAR* file, const int line, std::wstring message) {1436 void NSClientT::reportMessage(int msgType, const wchar_t* file, const int line, std::wstring message) { 1411 1437 try { 1412 1438 strEx::replace(message, _T("\n"), _T(" ")); … … 1505 1531 return basePath; 1506 1532 unsigned int buf_len = 4096; 1507 TCHAR* buffer = new TCHAR[buf_len+1]; 1533 #ifdef WIN32 1534 wchar_t* buffer = new wchar_t[buf_len+1]; 1508 1535 GetModuleFileName(NULL, buffer, buf_len); 1509 1536 std::wstring path = buffer; … … 1511 1538 basePath = path.substr(0, pos) + _T("\\"); 1512 1539 delete [] buffer; 1540 #endif 1513 1541 try { 1514 1542 settings_manager::get_core()->set_base(basePath); … … 1526 1554 NSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 1527 1555 len+=2; 1528 TCHAR *buf = new TCHAR[len+1];1556 wchar_t *buf = new wchar_t[len+1]; 1529 1557 NSCAPI::errorReturn ret = NSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 1530 1558 if (ret == NSCAPI::isSuccess) { … … 1539 1567 NSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 1540 1568 len+=2; 1541 TCHAR *buf = new TCHAR[len+1];1569 wchar_t *buf = new wchar_t[len+1]; 1542 1570 NSCAPI::errorReturn ret = NSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 1543 1571 if (ret == NSCAPI::isSuccess) { … … 1548 1576 return _T(""); 1549 1577 } 1550 1551 -
service/NSClient++.h
r77b729e r818b54e 20 20 ***************************************************************************/ 21 21 #pragma once 22 22 #include <types.hpp> 23 23 #include <config.h> 24 24 #include <service/system_service.hpp> … … 146 146 // Member functions 147 147 std::wstring getBasePath(void); 148 NSCAPI::nagiosReturn injectRAW(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR*returnPerfBuffer, unsigned int returnPerfBufferLen);149 NSCAPI::nagiosReturn NSClientT::inject(std::wstring command, std::wstring arguments, TCHARsplitter, bool escape, std::wstring &msg, std::wstring & perf);148 NSCAPI::nagiosReturn injectRAW(const wchar_t* command, const unsigned int argLen, wchar_t **argument, wchar_t *returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t *returnPerfBuffer, unsigned int returnPerfBufferLen); 149 NSCAPI::nagiosReturn inject(std::wstring command, std::wstring arguments, wchar_t splitter, bool escape, std::wstring &msg, std::wstring & perf); 150 150 // std::wstring inject(const std::wstring buffer); 151 151 std::wstring execute(std::wstring password, std::wstring cmd, std::list<std::wstring> args); 152 void reportMessage(int msgType, const TCHAR* file, const int line, std::wstring message);153 int commandLineExec(const TCHAR* module, const TCHAR* command, const unsigned int argLen, TCHAR** args);152 void reportMessage(int msgType, const wchar_t* file, const int line, std::wstring message); 153 int commandLineExec(const wchar_t* module, const wchar_t* command, const unsigned int argLen, wchar_t** args); 154 154 155 155 void addPlugins(const std::list<std::wstring> plugins); … … 161 161 void registerCommand(std::wstring cmd, std::wstring desc); 162 162 unsigned int getBufferLength(); 163 void HandleSettingsCLI( TCHAR* arg, int argc, TCHAR* argv[]);163 void HandleSettingsCLI(wchar_t* arg, int argc, wchar_t* argv[]); 164 164 void startTrayIcons(); 165 165 void startTrayIcon(DWORD dwSessionId); … … 172 172 void session_error(std::wstring file, unsigned int line, std::wstring msg); 173 173 void session_info(std::wstring file, unsigned int line, std::wstring msg); 174 void session_log_message(int msgType, const TCHAR* file, const int line, std::wstring message) {174 void session_log_message(int msgType, const wchar_t* file, const int line, std::wstring message) { 175 175 reportMessage(msgType, file, line, message); 176 176 } 177 int session_inject(std::wstring command, std::wstring arguments, TCHARsplitter, bool escape, std::wstring &msg, std::wstring & perf) {177 int session_inject(std::wstring command, std::wstring arguments, wchar_t splitter, bool escape, std::wstring &msg, std::wstring & perf) { 178 178 return inject(command, arguments, splitter, escape, msg, perf); 179 179 } … … 197 197 std::wstring Decrypt(std::wstring str, unsigned int algorithm = NSCAPI::encryption_xor); 198 198 199 #ifndef __FILEW__200 #define R(x) _T(x)201 #define __FILEW__ R(__FILE__)202 #endif203 199 ////////////////////////////////////////////////////////////////////////// 204 200 // Log macros to simplify logging -
service/StdAfx.h
rb21f30b r818b54e 45 45 46 46 #include "config.h" 47 #include < singleton.h>47 #include <Singleton.h> 48 48 #include <charEx.h> 49 49 #include <memory> -
service/core_api.cpp
r7f9c823 r818b54e 13 13 // 14 14 ////////////////////////////////////////////////////////////////////////// 15 #include " stdafx.h"15 #include "StdAfx.h" 16 16 #include "NSClient++.h" 17 17 #include "core_api.h" … … 19 19 #include <config.h> 20 20 #include <msvc_wrappers.h> 21 #include <settings/settings_ini.hpp> 22 #include <settings/settings_registry.hpp> 23 #include <settings/settings_old.hpp> 21 //#include <settings/settings_ini.hpp> 22 //#include <settings/settings_registry.hpp> 23 //#include <settings/settings_old.hpp> 24 #ifdef WIN32x 24 25 #include <Userenv.h> 26 #endif 25 27 #include <settings/Settings.h> 26 28 #include "settings_manager_impl.h" … … 30 32 31 33 32 NSCAPI::errorReturn NSAPIGetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* defaultValue, TCHAR* buffer, unsigned int bufLen) {34 NSCAPI::errorReturn NSAPIGetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* defaultValue, wchar_t* buffer, unsigned int bufLen) { 33 35 try { 34 36 return NSCHelper::wrapReturnString(buffer, bufLen, settings_manager::get_settings()->get_string(section, key, defaultValue), NSCAPI::isSuccess); … … 38 40 } 39 41 } 40 int NSAPIGetSettingsInt(const TCHAR* section, const TCHAR* key, int defaultValue) {42 int NSAPIGetSettingsInt(const wchar_t* section, const wchar_t* key, int defaultValue) { 41 43 try { 42 44 return settings_manager::get_settings()->get_int(section, key, defaultValue); … … 46 48 } 47 49 } 48 NSCAPI::errorReturn NSAPIGetBasePath( TCHAR*buffer, unsigned int bufLen) {50 NSCAPI::errorReturn NSAPIGetBasePath(wchar_t*buffer, unsigned int bufLen) { 49 51 return NSCHelper::wrapReturnString(buffer, bufLen, mainClient.getBasePath(), NSCAPI::isSuccess); 50 52 } 51 NSCAPI::errorReturn NSAPIGetApplicationName( TCHAR*buffer, unsigned int bufLen) {53 NSCAPI::errorReturn NSAPIGetApplicationName(wchar_t*buffer, unsigned int bufLen) { 52 54 return NSCHelper::wrapReturnString(buffer, bufLen, SZAPPNAME, NSCAPI::isSuccess); 53 55 } 54 NSCAPI::errorReturn NSAPIGetApplicationVersionStr( TCHAR*buffer, unsigned int bufLen) {56 NSCAPI::errorReturn NSAPIGetApplicationVersionStr(wchar_t*buffer, unsigned int bufLen) { 55 57 return NSCHelper::wrapReturnString(buffer, bufLen, SZVERSION, NSCAPI::isSuccess); 56 58 } 57 void NSAPIMessage(int msgType, const TCHAR* file, const int line, const TCHAR* message) {59 void NSAPIMessage(int msgType, const wchar_t* file, const int line, const wchar_t* message) { 58 60 mainClient.reportMessage(msgType, file, line, message); 59 61 } … … 63 65 #endif 64 66 } 65 NSCAPI::nagiosReturn NSAPIInject(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR*returnPerfBuffer, unsigned int returnPerfBufferLen) {67 NSCAPI::nagiosReturn NSAPIInject(const wchar_t* command, const unsigned int argLen, wchar_t **argument, wchar_t *returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t *returnPerfBuffer, unsigned int returnPerfBufferLen) { 66 68 return mainClient.injectRAW(command, argLen, argument, returnMessageBuffer, returnMessageBufferLen, returnPerfBuffer, returnPerfBufferLen); 67 69 } 68 NSCAPI::errorReturn NSAPIGetSettingsSection(const TCHAR* section, TCHAR*** aBuffer, unsigned int * bufLen) {70 NSCAPI::errorReturn NSAPIGetSettingsSection(const wchar_t* section, wchar_t*** aBuffer, unsigned int * bufLen) { 69 71 try { 70 72 unsigned int len = 0; … … 79 81 return NSCAPI::hasFailed; 80 82 } 81 NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer( TCHAR*** aBuffer, unsigned int * bufLen) {83 NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer(wchar_t*** aBuffer, unsigned int * bufLen) { 82 84 arrayBuffer::destroyArrayBuffer(*aBuffer, *bufLen); 83 85 *bufLen = 0; … … 92 94 } 93 95 94 NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen) {96 NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen) { 95 97 if (algorithm != NSCAPI::encryption_xor) { 96 98 LOG_ERROR(_T("Unknown algortihm requested.")); … … 122 124 } 123 125 int realOutLen; 124 TCHAR*realOut = charEx::char_to_tchar(cOutBuf, cOutBufLen, realOutLen);126 wchar_t *realOut = charEx::char_to_tchar(cOutBuf, cOutBufLen, realOutLen); 125 127 if (static_cast<unsigned int>(realOutLen) >= *outBufLen) { 126 128 LOG_ERROR_STD(_T("Invalid out buffer length: ") + strEx::itos(realOutLen) + _T(" was needed but only ") + strEx::itos(*outBufLen) + _T(" was allocated.")); … … 135 137 } 136 138 137 NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen) {139 NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen) { 138 140 if (algorithm != NSCAPI::encryption_xor) { 139 141 LOG_ERROR(_T("Unknown algortihm requested.")); … … 165 167 } 166 168 167 TCHAR*realOut = charEx::char_to_tchar(cOutBuf, cOutLen, realOutLen);169 wchar_t *realOut = charEx::char_to_tchar(cOutBuf, cOutLen, realOutLen); 168 170 if (static_cast<unsigned int>(realOutLen) >= *outBufLen) { 169 171 LOG_ERROR_STD(_T("Invalid out buffer length: ") + strEx::itos(realOutLen) + _T(" was needed but only ") + strEx::itos(*outBufLen) + _T(" was allocated.")); … … 178 180 } 179 181 180 NSCAPI::errorReturn NSAPISetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* value) {182 NSCAPI::errorReturn NSAPISetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* value) { 181 183 try { 182 184 settings_manager::get_settings()->set_string(section, key, value); … … 187 189 return NSCAPI::isSuccess; 188 190 } 189 NSCAPI::errorReturn NSAPISetSettingsInt(const TCHAR* section, const TCHAR* key, int value) {191 NSCAPI::errorReturn NSAPISetSettingsInt(const wchar_t* section, const wchar_t* key, int value) { 190 192 try { 191 193 settings_manager::get_settings()->set_int(section, key, value); … … 233 235 return NSCAPI::hasFailed; 234 236 } 235 NSCAPI::errorReturn NSAPIDescribeCommand(const TCHAR* command, TCHAR* buffer, unsigned int bufLen) {237 NSCAPI::errorReturn NSAPIDescribeCommand(const wchar_t* command, wchar_t* buffer, unsigned int bufLen) { 236 238 return NSCHelper::wrapReturnString(buffer, bufLen, mainClient.describeCommand(command), NSCAPI::isSuccess); 237 239 } … … 242 244 return NSCAPI::isSuccess; 243 245 } 244 NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer( TCHAR*** aBuffer, unsigned int * bufLen) {246 NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer(wchar_t*** aBuffer, unsigned int * bufLen) { 245 247 arrayBuffer::destroyArrayBuffer(*aBuffer, *bufLen); 246 248 *bufLen = 0; … … 248 250 return NSCAPI::isSuccess; 249 251 } 250 NSCAPI::errorReturn NSAPIRegisterCommand(const TCHAR* cmd,const TCHAR* desc) {252 NSCAPI::errorReturn NSAPIRegisterCommand(const wchar_t* cmd,const wchar_t* desc) { 251 253 mainClient.registerCommand(cmd, desc); 252 254 return NSCAPI::isSuccess; 253 255 } 254 NSCAPI::errorReturn NSAPISettingsRegKey(const TCHAR* path, const TCHAR* key, int type, const TCHAR* title, const TCHAR* description, const TCHAR* defVal, int advanced) {256 NSCAPI::errorReturn NSAPISettingsRegKey(const wchar_t* path, const wchar_t* key, int type, const wchar_t* title, const wchar_t* description, const wchar_t* defVal, int advanced) { 255 257 try { 256 258 if (type == NSCAPI::key_string) … … 272 274 273 275 274 NSCAPI::errorReturn NSAPISettingsRegPath(const TCHAR* path, const TCHAR* title, const TCHAR* description, int advanced) {276 NSCAPI::errorReturn NSAPISettingsRegPath(const wchar_t* path, const wchar_t* title, const wchar_t* description, int advanced) { 275 277 try { 276 278 settings_manager::get_core()->register_path(path, title, description, advanced); … … 285 287 } 286 288 287 //int wmain(int argc, TCHAR* argv[], TCHAR* envp[])288 TCHAR* copyString(const std::wstring &str) {289 //int wmain(int argc, wchar_t* argv[], wchar_t* envp[]) 290 wchar_t* copyString(const std::wstring &str) { 289 291 int sz = str.size(); 290 TCHAR *tc = new TCHAR[sz+2];292 wchar_t *tc = new wchar_t[sz+2]; 291 293 wcsncpy_s(tc, sz+1, str.c_str(), sz); 292 294 return tc; … … 333 335 334 336 335 LPVOID NSAPILoader( TCHAR*buffer) {336 if ( _wcsicmp(buffer, _T("NSAPIGetApplicationName")) == 0)337 return &NSAPIGetApplicationName;338 if ( _wcsicmp(buffer, _T("NSAPIGetApplicationVersionStr")) == 0)339 return &NSAPIGetApplicationVersionStr;340 if ( _wcsicmp(buffer, _T("NSAPIGetSettingsString")) == 0)341 return &NSAPIGetSettingsString;342 if ( _wcsicmp(buffer, _T("NSAPIGetSettingsSection")) == 0)343 return &NSAPIGetSettingsSection;344 if ( _wcsicmp(buffer, _T("NSAPIReleaseSettingsSectionBuffer")) == 0)345 return &NSAPIReleaseSettingsSectionBuffer;346 if ( _wcsicmp(buffer, _T("NSAPIGetSettingsInt")) == 0)347 return &NSAPIGetSettingsInt;348 if ( _wcsicmp(buffer, _T("NSAPIMessage")) == 0)349 return &NSAPIMessage;350 if ( _wcsicmp(buffer, _T("NSAPIStopServer")) == 0)351 return &NSAPIStopServer;352 if ( _wcsicmp(buffer, _T("NSAPIInject")) == 0)353 return &NSAPIInject;354 if ( _wcsicmp(buffer, _T("NSAPIGetBasePath")) == 0)355 return &NSAPIGetBasePath;356 if ( _wcsicmp(buffer, _T("NSAPICheckLogMessages")) == 0)357 return &NSAPICheckLogMessages;358 if ( _wcsicmp(buffer, _T("NSAPIEncrypt")) == 0)359 return &NSAPIEncrypt;360 if ( _wcsicmp(buffer, _T("NSAPIDecrypt")) == 0)361 return &NSAPIDecrypt;362 if ( _wcsicmp(buffer, _T("NSAPISetSettingsString")) == 0)363 return &NSAPISetSettingsString;364 if ( _wcsicmp(buffer, _T("NSAPISetSettingsInt")) == 0)365 return &NSAPISetSettingsInt;366 if ( _wcsicmp(buffer, _T("NSAPIWriteSettings")) == 0)367 return &NSAPIWriteSettings;368 if ( _wcsicmp(buffer, _T("NSAPIReadSettings")) == 0)369 return &NSAPIReadSettings;370 if ( _wcsicmp(buffer, _T("NSAPIRehash")) == 0)371 return &NSAPIRehash;372 if ( _wcsicmp(buffer, _T("NSAPIDescribeCommand")) == 0)373 return &NSAPIDescribeCommand;374 if ( _wcsicmp(buffer, _T("NSAPIGetAllCommandNames")) == 0)375 return &NSAPIGetAllCommandNames;376 if ( _wcsicmp(buffer, _T("NSAPIReleaseAllCommandNamessBuffer")) == 0)377 return &NSAPIReleaseAllCommandNamessBuffer;378 if ( _wcsicmp(buffer, _T("NSAPIRegisterCommand")) == 0)379 return &NSAPIRegisterCommand;380 if ( _wcsicmp(buffer, _T("NSAPISettingsRegKey")) == 0)381 return &NSAPISettingsRegKey;382 if ( _wcsicmp(buffer, _T("NSAPISettingsRegPath")) == 0)383 return &NSAPISettingsRegPath;384 if ( _wcsicmp(buffer, _T("NSAPIGetPluginList")) == 0)385 return &NSAPIGetPluginList;386 if ( _wcsicmp(buffer, _T("NSAPIReleasePluginList")) == 0)387 return &NSAPIReleasePluginList;388 if ( _wcsicmp(buffer, _T("NSAPISettingsSave")) == 0)389 return &NSAPISettingsSave;337 LPVOID NSAPILoader(wchar_t*buffer) { 338 if (wcscasecmp(buffer, _T("NSAPIGetApplicationName")) == 0) 339 return reinterpret_cast<LPVOID>(&NSAPIGetApplicationName); 340 if (wcscasecmp(buffer, _T("NSAPIGetApplicationVersionStr")) == 0) 341 return reinterpret_cast<LPVOID>(&NSAPIGetApplicationVersionStr); 342 if (wcscasecmp(buffer, _T("NSAPIGetSettingsString")) == 0) 343 return reinterpret_cast<LPVOID>(&NSAPIGetSettingsString); 344 if (wcscasecmp(buffer, _T("NSAPIGetSettingsSection")) == 0) 345 return reinterpret_cast<LPVOID>(&NSAPIGetSettingsSection); 346 if (wcscasecmp(buffer, _T("NSAPIReleaseSettingsSectionBuffer")) == 0) 347 return reinterpret_cast<LPVOID>(&NSAPIReleaseSettingsSectionBuffer); 348 if (wcscasecmp(buffer, _T("NSAPIGetSettingsInt")) == 0) 349 return reinterpret_cast<LPVOID>(&NSAPIGetSettingsInt); 350 if (wcscasecmp(buffer, _T("NSAPIMessage")) == 0) 351 return reinterpret_cast<LPVOID>(&NSAPIMessage); 352 if (wcscasecmp(buffer, _T("NSAPIStopServer")) == 0) 353 return reinterpret_cast<LPVOID>(&NSAPIStopServer); 354 if (wcscasecmp(buffer, _T("NSAPIInject")) == 0) 355 return reinterpret_cast<LPVOID>(&NSAPIInject); 356 if (wcscasecmp(buffer, _T("NSAPIGetBasePath")) == 0) 357 return reinterpret_cast<LPVOID>(&NSAPIGetBasePath); 358 if (wcscasecmp(buffer, _T("NSAPICheckLogMessages")) == 0) 359 return reinterpret_cast<LPVOID>(&NSAPICheckLogMessages); 360 if (wcscasecmp(buffer, _T("NSAPIEncrypt")) == 0) 361 return reinterpret_cast<LPVOID>(&NSAPIEncrypt); 362 if (wcscasecmp(buffer, _T("NSAPIDecrypt")) == 0) 363 return reinterpret_cast<LPVOID>(&NSAPIDecrypt); 364 if (wcscasecmp(buffer, _T("NSAPISetSettingsString")) == 0) 365 return reinterpret_cast<LPVOID>(&NSAPISetSettingsString); 366 if (wcscasecmp(buffer, _T("NSAPISetSettingsInt")) == 0) 367 return reinterpret_cast<LPVOID>(&NSAPISetSettingsInt); 368 if (wcscasecmp(buffer, _T("NSAPIWriteSettings")) == 0) 369 return reinterpret_cast<LPVOID>(&NSAPIWriteSettings); 370 if (wcscasecmp(buffer, _T("NSAPIReadSettings")) == 0) 371 return reinterpret_cast<LPVOID>(&NSAPIReadSettings); 372 if (wcscasecmp(buffer, _T("NSAPIRehash")) == 0) 373 return reinterpret_cast<LPVOID>(&NSAPIRehash); 374 if (wcscasecmp(buffer, _T("NSAPIDescribeCommand")) == 0) 375 return reinterpret_cast<LPVOID>(&NSAPIDescribeCommand); 376 if (wcscasecmp(buffer, _T("NSAPIGetAllCommandNames")) == 0) 377 return reinterpret_cast<LPVOID>(&NSAPIGetAllCommandNames); 378 if (wcscasecmp(buffer, _T("NSAPIReleaseAllCommandNamessBuffer")) == 0) 379 return reinterpret_cast<LPVOID>(&NSAPIReleaseAllCommandNamessBuffer); 380 if (wcscasecmp(buffer, _T("NSAPIRegisterCommand")) == 0) 381 return reinterpret_cast<LPVOID>(&NSAPIRegisterCommand); 382 if (wcscasecmp(buffer, _T("NSAPISettingsRegKey")) == 0) 383 return reinterpret_cast<LPVOID>(&NSAPISettingsRegKey); 384 if (wcscasecmp(buffer, _T("NSAPISettingsRegPath")) == 0) 385 return reinterpret_cast<LPVOID>(&NSAPISettingsRegPath); 386 if (wcscasecmp(buffer, _T("NSAPIGetPluginList")) == 0) 387 return reinterpret_cast<LPVOID>(&NSAPIGetPluginList); 388 if (wcscasecmp(buffer, _T("NSAPIReleasePluginList")) == 0) 389 return reinterpret_cast<LPVOID>(&NSAPIReleasePluginList); 390 if (wcscasecmp(buffer, _T("NSAPISettingsSave")) == 0) 391 return reinterpret_cast<LPVOID>(&NSAPISettingsSave); 390 392 391 393 LOG_ERROR_STD(_T("Function not found: ") + buffer); -
service/core_api.h
rd5356c1 r818b54e 30 30 // 31 31 32 LPVOID NSAPILoader( TCHAR*buffer);33 NSCAPI::errorReturn NSAPIGetApplicationName( TCHAR*buffer, unsigned int bufLen);34 NSCAPI::errorReturn NSAPIGetBasePath( TCHAR*buffer, unsigned int bufLen);35 NSCAPI::errorReturn NSAPIGetApplicationVersionStr( TCHAR*buffer, unsigned int bufLen);36 NSCAPI::errorReturn NSAPIGetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* defaultValue, TCHAR* buffer, unsigned int bufLen);37 int NSAPIGetSettingsInt(const TCHAR* section, const TCHAR* key, int defaultValue);38 void NSAPIMessage(int msgType, const TCHAR* file, const int line, const TCHAR* message);32 LPVOID NSAPILoader(wchar_t*buffer); 33 NSCAPI::errorReturn NSAPIGetApplicationName(wchar_t*buffer, unsigned int bufLen); 34 NSCAPI::errorReturn NSAPIGetBasePath(wchar_t*buffer, unsigned int bufLen); 35 NSCAPI::errorReturn NSAPIGetApplicationVersionStr(wchar_t*buffer, unsigned int bufLen); 36 NSCAPI::errorReturn NSAPIGetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* defaultValue, wchar_t* buffer, unsigned int bufLen); 37 int NSAPIGetSettingsInt(const wchar_t* section, const wchar_t* key, int defaultValue); 38 void NSAPIMessage(int msgType, const wchar_t* file, const int line, const wchar_t* message); 39 39 void NSAPIStopServer(void); 40 NSCAPI::nagiosReturn NSAPIInject(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR*returnPerfBuffer, unsigned int returnPerfBufferLen);41 NSCAPI::errorReturn NSAPIGetSettingsSection(const TCHAR*, TCHAR***, unsigned int *);42 NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer( TCHAR*** aBuffer, unsigned int * bufLen);40 NSCAPI::nagiosReturn NSAPIInject(const wchar_t* command, const unsigned int argLen, wchar_t **argument, wchar_t *returnMessageBuffer, unsigned int returnMessageBufferLen, wchar_t *returnPerfBuffer, unsigned int returnPerfBufferLen); 41 NSCAPI::errorReturn NSAPIGetSettingsSection(const wchar_t*, wchar_t***, unsigned int *); 42 NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer(wchar_t*** aBuffer, unsigned int * bufLen); 43 43 NSCAPI::boolReturn NSAPICheckLogMessages(int messageType); 44 NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen);45 NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen);46 NSCAPI::errorReturn NSAPISetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* value);47 NSCAPI::errorReturn NSAPISetSettingsInt(const TCHAR* section, const TCHAR* key, int value);44 NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen); 45 NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen); 46 NSCAPI::errorReturn NSAPISetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* value); 47 NSCAPI::errorReturn NSAPISetSettingsInt(const wchar_t* section, const wchar_t* key, int value); 48 48 NSCAPI::errorReturn NSAPIWriteSettings(int type); 49 49 NSCAPI::errorReturn NSAPIReadSettings(int type); 50 50 NSCAPI::errorReturn NSAPIRehash(int flag); 51 NSCAPI::errorReturn NSAPIDescribeCommand(const TCHAR*,TCHAR*,unsigned int);52 NSCAPI::errorReturn NSAPIGetAllCommandNames( TCHAR***, unsigned int *);53 NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer( TCHAR***, unsigned int *);54 NSCAPI::errorReturn NSAPIRegisterCommand(const TCHAR*,const TCHAR*);55 NSCAPI::errorReturn NSAPISettingsRegKey(const TCHAR*, const TCHAR*, int, const TCHAR*, const TCHAR*, const TCHAR*, int);56 NSCAPI::errorReturn NSAPISettingsRegPath(const TCHAR*, const TCHAR*, const TCHAR*, int);51 NSCAPI::errorReturn NSAPIDescribeCommand(const wchar_t*,wchar_t*,unsigned int); 52 NSCAPI::errorReturn NSAPIGetAllCommandNames(wchar_t***, unsigned int *); 53 NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer(wchar_t***, unsigned int *); 54 NSCAPI::errorReturn NSAPIRegisterCommand(const wchar_t*,const wchar_t*); 55 NSCAPI::errorReturn NSAPISettingsRegKey(const wchar_t*, const wchar_t*, int, const wchar_t*, const wchar_t*, const wchar_t*, int); 56 NSCAPI::errorReturn NSAPISettingsRegPath(const wchar_t*, const wchar_t*, const wchar_t*, int); 57 57 NSCAPI::errorReturn NSAPIGetPluginList(int*, NSCAPI::plugin_info*[]); 58 58 NSCAPI::errorReturn NSAPIReleasePluginList(int,NSCAPI::plugin_info*[]); -
service/settings_manager_impl.cpp
rd5356c1 r818b54e 1 #include " stdafx.h"1 #include "StdAfx.h" 2 2 3 3 #include "settings_manager_impl.h" … … 5 5 #define LOG_CRITICAL_STD(msg) LOG_CRITICAL(((std::wstring)msg).c_str()) 6 6 #define LOG_CRITICAL(msg) \ 7 NSAPIMessage(NSCAPI::critical, _ T(__FILE__), __LINE__, msg)7 NSAPIMessage(NSCAPI::critical, __FILEW__, __LINE__, msg) 8 8 9 9 namespace settings_manager { -
service/settings_manager_impl.h
rb21f30b r818b54e 3 3 #include "settings_logger_impl.hpp" 4 4 #include <settings/Settings.h> 5 #ifdef WIN32 5 6 #include <settings/settings_ini.hpp> 6 #ifdef WIN327 7 #include <settings/settings_old.hpp> 8 8 #include <settings/settings_registry.hpp> … … 26 26 /// @author mickem 27 27 std::wstring get_boot_string(std::wstring section, std::wstring key, std::wstring def) { 28 TCHAR* buffer = new TCHAR[1024]; 28 #ifdef WIN32 29 wchar_t* buffer = new wchar_t[1024]; 29 30 GetPrivateProfileString(section.c_str(), key.c_str(), def.c_str(), buffer, 1023, boot_.c_str()); 30 31 std::wstring ret = buffer; 31 32 delete [] buffer; 32 33 return ret; 34 #else 35 return _T("ini"); 36 #endif 33 37 } 34 38 ////////////////////////////////////////////////////////////////////////// … … 68 72 if (type == SettingsCore::registry) 69 73 return new Settings::REGSettings(this, context); 70 #endif71 74 if (type == SettingsCore::ini_file) 72 75 return new Settings::INISettings(this, context); 76 #endif 73 77 throw SettingsException(_T("Undefined settings type: ") + SettingsCore::type_to_string(type)); 74 78 }
Note: See TracChangeset
for help on using the changeset viewer.








