Changeset 818b54e in nscp


Ignore:
Timestamp:
11/11/09 06:59:09 (4 years ago)
Author:
Michael Medin <michael@…>
Branches:
master, 0.4.0, 0.4.1, 0.4.2
Children:
3eedfa6
Parents:
77b729e
Message:

First version which builds on Linux!!! (though 99% of all features are still disabled).
All it does is build and tell you there is no settings subsystem (which there isn't as simpleini does not support wchar_t on unix :(

Files:
2 added
22 edited

Legend:

Unmodified
Added
Removed
  • AutoBuild.h

    rd5356c1 r818b54e  
    55#define FILEVER        0,4,0,33 
    66#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" 
    1010#endif // AUTOBUILD_H 
  • include/NSCHelper.cpp

    r7f9c823 r818b54e  
    7373  // @todo deprecate this 
    7474  if (str.length() >= bufLen) { 
    75     std::wstring sstr = str.substr(0, min(10, str.length())); 
     75    std::wstring sstr = str.substr(0, bufLen-2); 
    7676    NSC_DEBUG_MSG_STD(_T("String (") + strEx::itos(str.length()) + _T(") to long to fit inside buffer(") + strEx::itos(bufLen) + _T(") : ") + sstr); 
    7777    return NSCAPI::isInvalidBufferLen; 
     
    218218 * @return The returned status of the command 
    219219 */ 
    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)  
     220NSCAPI::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)  
    221221{ 
    222222  if (!fNSAPIInject) 
     
    233233 * @return The return of the command 
    234234 */ 
    235 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const TCHAR* command, const unsigned int argLen, TCHAR **argument, std::wstring & message, std::wstring & perf)  
     235NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const wchar_t* command, const unsigned int argLen, wchar_t **argument, std::wstring & message, std::wstring & perf)  
    236236{ 
    237237  if (!fNSAPIInject) 
    238238    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    239239  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]; 
    242242  msgBuffer[0] = 0; 
    243243  perfBuffer[0] = 0; 
     
    276276* @return The return of the command 
    277277*/ 
    278 NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const TCHAR* command, std::list<std::wstring> argument, std::wstring & message, std::wstring & perf)  
     278NSCAPI::nagiosReturn NSCModuleHelper::InjectCommand(const wchar_t* command, std::list<std::wstring> argument, std::wstring & message, std::wstring & perf)  
    279279{ 
    280280  if (!fNSAPIInject) 
     
    284284 
    285285  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]; 
    289289  msgBuffer[0] = 0; 
    290290  perfBuffer[0] = 0; 
     
    320320 * @param command The command to execute 
    321321 * @param buffer The buffer to split 
    322  * @param splitChar The char to use as splitter 
     322 * @param spliwchar_t The char to use as splitter 
    323323 * @param message The return message buffer 
    324324 * @param perf The return performance data buffer 
    325325 * @return The result of the command 
    326326 */ 
    327 NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const TCHAR* command, TCHAR* buffer, TCHAR splitChar, std::wstring & message, std::wstring & perf) 
     327NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const wchar_t* command, wchar_t* buffer, wchar_t splitChar, std::wstring & message, std::wstring & perf) 
    328328{ 
    329329  if (!fNSAPIInject) 
    330330    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    331331  unsigned int argLen = 0; 
    332   TCHAR ** aBuffer; 
     332  wchar_t ** aBuffer; 
    333333  if (buffer) 
    334334    aBuffer= arrayBuffer::split2arrayBuffer(buffer, splitChar, argLen); 
     
    343343 * @param command The command to execute 
    344344 * @param buffer The buffer to split 
    345  * @param splitChar The char to use as splitter 
     345 * @param spliwchar_t The char to use as splitter 
    346346 * @param message The return message buffer 
    347347 * @param perf The return performance data buffer 
    348348 * @return The result of the command 
    349349 */ 
    350 NSCAPI::nagiosReturn NSCModuleHelper::InjectSplitAndCommand(const std::wstring command, const std::wstring buffer, TCHAR splitChar, std::wstring & message, std::wstring & perf, bool escape) 
     350namespace NSCModuleHelper { 
     351NSCAPI::nagiosReturn InjectSplitAndCommand(const std::wstring command, const std::wstring buffer, wchar_t spliwchar_t, std::wstring & message, std::wstring & perf, int escape) 
    351352{ 
    352353  if (!fNSAPIInject) 
    353354    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    354355  unsigned int argLen = 0; 
    355   TCHAR ** aBuffer; 
     356  wchar_t ** aBuffer; 
    356357  if (buffer.empty()) 
    357358    aBuffer= arrayBuffer::createEmptyArrayBuffer(argLen); 
    358359  else 
    359     aBuffer= arrayBuffer::split2arrayBuffer(buffer, splitChar, argLen, escape); 
     360    aBuffer= arrayBuffer::split2arrayBuffer(buffer, spliwchar_t, argLen, escape); 
    360361  NSCAPI::nagiosReturn ret = InjectCommand(command.c_str(), argLen, aBuffer, message, perf); 
    361362  arrayBuffer::destroyArrayBuffer(aBuffer, argLen); 
    362363  return ret; 
     364} 
    363365} 
    364366/** 
     
    392394    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    393395  unsigned int buf_len = getBufferLength(); 
    394   TCHAR *buffer = new TCHAR[buf_len+1]; 
     396  wchar_t *buffer = new wchar_t[buf_len+1]; 
    395397  if (fNSAPIGetSettingsString(section.c_str(), key.c_str(), defaultValue.c_str(), buffer, buf_len) != NSCAPI::isSuccess) { 
    396398    delete [] buffer; 
     
    437439  return fNSAPIGetSettingsInt(section.c_str(), key.c_str(), defaultValue); 
    438440} 
    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, bool advanced) { 
     441namespace NSCModuleHelper { 
     442void settings_register_key(std::wstring path, std::wstring key, NSCAPI::settings_type type, std::wstring title, std::wstring description, std::wstring defaultValue, int advanced) { 
    441443  if (!fNSAPISettingsRegKey) 
    442444    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    443445  fNSAPISettingsRegKey(path.c_str(), key.c_str(), type, title.c_str(), description.c_str(), defaultValue.c_str(), advanced); 
    444446} 
    445 void NSCModuleHelper::settings_register_path(std::wstring path, std::wstring title, std::wstring description, bool advanced) { 
     447void settings_register_path(std::wstring path, std::wstring title, std::wstring description, bool advanced) { 
    446448  if (!fNSAPISettingsRegPath) 
    447449    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
     
    450452 
    451453 
    452 void NSCModuleHelper::settings_save() { 
     454void settings_save() { 
    453455  if (!fNSAPISettingsSave) 
    454456    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    455457  fNSAPISettingsSave(); 
    456458} 
    457  
     459} 
    458460 
    459461 
     
    486488    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    487489  unsigned int buf_len = getBufferLength(); 
    488   TCHAR *buffer = new TCHAR[buf_len+1]; 
     490  wchar_t *buffer = new wchar_t[buf_len+1]; 
    489491  if (fNSAPIGetApplicationName(buffer, buf_len) != NSCAPI::isSuccess) { 
    490492    delete [] buffer; 
     
    504506    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    505507  unsigned int buf_len = getBufferLength(); 
    506   TCHAR *buffer = new TCHAR[buf_len+1]; 
     508  wchar_t *buffer = new wchar_t[buf_len+1]; 
    507509  if (fNSAPIGetBasePath(buffer, buf_len) != NSCAPI::isSuccess) { 
    508510    delete [] buffer; 
     
    542544  fNSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 
    543545  len+=2; 
    544   TCHAR *buf = new TCHAR[len+1]; 
     546  wchar_t *buf = new wchar_t[len+1]; 
    545547  NSCAPI::errorReturn ret = fNSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 
    546548  if (ret == NSCAPI::isSuccess) { 
     
    558560  fNSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 
    559561  len+=2; 
    560   TCHAR *buf = new TCHAR[len+1]; 
     562  wchar_t *buf = new wchar_t[len+1]; 
    561563  NSCAPI::errorReturn ret = fNSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 
    562564  if (ret == NSCAPI::isSuccess) { 
     
    638640    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    639641  unsigned int buf_len = getBufferLength(); 
    640   TCHAR *buffer = new TCHAR[buf_len+1]; 
     642  wchar_t *buffer = new wchar_t[buf_len+1]; 
    641643  if (fNSAPIDescribeCommand(command.c_str(), buffer, buf_len) != NSCAPI::isSuccess) { 
    642644    delete [] buffer; 
     
    668670    throw NSCMHExcpetion(_T("NSCore has not been initiated...")); 
    669671  unsigned int buf_len = getBufferLength(); 
    670   TCHAR *buffer = new TCHAR[buf_len+1]; 
     672  wchar_t *buffer = new wchar_t[buf_len+1]; 
    671673  if (fNSAPIGetApplicationVersionStr(buffer, buf_len) != NSCAPI::isSuccess) { 
    672674    delete [] buffer; 
     
    679681 
    680682namespace NSCModuleWrapper { 
     683#ifdef WIN32 
    681684  HINSTANCE hModule_ = NULL; 
     685#endif 
    682686} 
    683687/** 
     
    687691 * @return TRUE 
    688692 */ 
    689 BOOL NSCModuleWrapper::wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call) 
     693#ifdef WIN32 
     694int NSCModuleWrapper::wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call) 
    690695{ 
    691696  switch (ul_reason_for_call) 
     
    709714} 
    710715 
     716#endif 
    711717/** 
    712718 * Wrapper function around the ModuleHelperInit call. 
     
    759765* @  copy status 
    760766*/ 
    761 NSCAPI::errorReturn NSCModuleWrapper::wrapGetModuleName(TCHAR* buf, unsigned int bufLen, std::wstring str) { 
     767NSCAPI::errorReturn NSCModuleWrapper::wrapGetModuleName(wchar_t* buf, unsigned int bufLen, std::wstring str) { 
    762768  return NSCHelper::wrapReturnString(buf, bufLen, str, NSCAPI::isSuccess); 
    763769} 
    764770 
    765 NSCAPI::errorReturn NSCModuleWrapper::wrapGetConfigurationMeta(TCHAR* buf, unsigned int bufLen, std::wstring str) { 
     771NSCAPI::errorReturn NSCModuleWrapper::wrapGetConfigurationMeta(wchar_t* buf, unsigned int bufLen, std::wstring str) { 
    766772  return NSCHelper::wrapReturnString(buf, bufLen, str, NSCAPI::isSuccess); 
    767773} 
     
    811817 * @return the return code 
    812818 */ 
    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) { 
     819NSCAPI::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) { 
    814820  if (retMessage.empty()) 
    815821    return NSCAPI::returnIgnored; 
  • include/NSCHelper.h

    r7f9c823 r818b54e  
    2727#include <charEx.h> 
    2828#include <arrayBuffer.h> 
     29#include <types.hpp> 
    2930#ifdef WIN32 
    3031//#include <windows.h> 
  • include/NTService.h

    r7f9c823 r818b54e  
    7676    dispatchTable = new SERVICE_TABLE_ENTRY[2]; 
    7777    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; 
    7979    dispatchTable[1].lpServiceName = NULL; 
    8080    dispatchTable[1].lpServiceProc = NULL; 
  • include/arrayBuffer.h

    r7f9c823 r818b54e  
    2424#include <list> 
    2525#include <iostream> 
     26#include <types.hpp> 
     27#include <msvc_wrappers.h> 
    2628/** 
    2729 * @ingroup NSClient++ 
  • include/config.h

    r7f9c823 r818b54e  
    2828#include <settings/macros.h> 
    2929// 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++") 
    3136 
    3237// 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 
    3744//FILEVER[0] 
    3845 
    3946#if defined(_M_IX86) 
    40 #define SZARCH _T("w32") 
     47#define SZARCH WSTR("w32") 
    4148#elif defined(_M_X64) 
    42 #define SZARCH _T("x64") 
     49#define SZARCH WSTR("x64") 
    4350#elif defined(_M_IA64) 
    44 #define SZARCH _T("ia64") 
     51#define SZARCH WSTR("ia64") 
    4552#else 
    46 #define SZARCH _T("unknown") 
     53#define SZARCH WSTR("unknown") 
    4754#endif 
    4855 
    4956// internal name of the service 
    50 #define SZSERVICENAME        _T("NSClientpp") 
     57#define SZSERVICENAME        WSTR("NSClientpp") 
    5158 
    5259// 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)") 
    5461 
    5562// displayed name of the service 
    56 #define SZSERVICEDISPLAYNAME SZSERVICENAME _T(" (Nagios) ") SZVERSION _T(" ") SZARCH 
     63#define SZSERVICEDISPLAYNAME SZSERVICENAME WSTR(" (Nagios) ") SZVERSION WSTR(" ") SZARCH 
    5764 
    5865// list of service dependencies - "dep1\0dep2\0\0" 
  • include/nsc_module_wrapper.hpp

    r7f9c823 r818b54e  
    1212    int revision; 
    1313  }; 
    14  
     14#ifdef WIN32 
    1515  int wrapDllMain(HANDLE hModule, DWORD ul_reason_for_call); 
    1616  HINSTANCE getModule(); 
    17  
     17#endif 
    1818  int wrapModuleHelperInit(NSCModuleHelper::lpNSAPILoader f);; 
    1919  NSCAPI::errorReturn wrapGetModuleName(wchar_t* buf, unsigned int buflen, std::wstring str); 
  • include/settings/Settings.h

    r773ad32 r818b54e  
    2121#pragma once 
    2222 
     23#include <types.hpp> 
    2324#include <Singleton.h> 
    2425#include <string> 
     
    754755                throw SettingsException(_T("Unknown keytype for: ") + *cit + _T(".") + *citk); 
    755756            } 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); 
    757758            } 
    758759          } 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); 
    760761          } 
    761762        } 
     
    12561257          return int_val; 
    12571258        if (type==SettingsCore::key_bool) 
    1258           return int_val==1?TRUE:FALSE; 
     1259          return int_val==1?1:0; 
    12591260        return -1; 
    12601261      } 
  • include/simpleini/simpleini.h

    r9567d4b r818b54e  
    252252#endif // _WIN32 
    253253 
     254#define SI_CONVERT_ICU 
     255 
    254256#if defined(SI_CONVERT_ICU) 
    255257# include <unicode/ustring.h> 
  • include/strEx.h

    r77b729e r818b54e  
    3232#include <iostream> 
    3333#include <string> 
    34 #include <locale>  
    3534#include <boost/lexical_cast.hpp> 
    3635#include <boost/date_time.hpp> 
     
    7170    std::locale loc; 
    7271    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); 
    7673    return result; 
    7774  } 
  • include/types.hpp

    r2677e15 r818b54e  
    22 
    33 
     4#ifndef WIN32 
     5typedef unsigned long DWORD; 
     6typedef void* LPVOID; 
     7#endif 
     8 
     9 
    410#ifdef WIN32 
    5 #else 
    6 typedef unsigned long DWORD 
     11#define wcscasecmp _wcsicmp 
    712#endif 
     13 
     14#ifndef __FILEW__ 
     15#define WSTR(x) _T(x) 
     16#define __FILEW__ WSTR(__FILE__) 
     17#endif 
  • service/CMakeLists.txt

    r7f9c823 r818b54e  
    2828SET(NSCP_LOCAL_INCLUDE_PATH "${PROJECT_BINARY_DIR}/../include" CACHE PATH "directory containing NSCP specific includes") 
    2929 
     30 
     31set(Boost_USE_STATIC_LIBS   ON) 
     32set(Boost_USE_MULTITHREADED ON) 
     33 
     34 
    3035IF(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") 
    3237  SET(LIB_INSTALL_DIR "lib" CACHE STRING "Default path for libraries within ${CMAKE_INSTALL_PREFIX}") 
    3338  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) 
    3950 
    4051ELSE(WIN32) 
     
    5162ENDIF(WIN32) 
    5263 
    53 INCLUDE(../cmake/WtFindBoost.txt) 
    54 INCLUDE(../cmake/WtFindAsio.txt) 
     64find_package(Boost COMPONENTS system filesystem thread REQUIRED) 
     65 
     66#INCLUDE(../cmake/WtFindBoost.txt) 
     67#INCLUDE(../cmake/WtFindAsio.txt) 
    5568INCLUDE(../cmake/WtFindSsl.txt) 
    5669 
     
    92105  ../include/NSCHelper.cpp 
    93106  ../include/arrayBuffer.cpp 
    94   ../include/ServiceCmd.cpp 
     107# ../include/ServiceCmd.cpp 
    95108  ../include/b64/b64.c 
    96109) 
    97 target_link_libraries (NSCP  ${EXTRA_LIBS}) 
     110 
     111target_link_libraries(NSCP  
     112  ${Boost_FILESYSTEM_LIBRARY} 
     113  ${Boost_LIBRARIES} 
     114  ${EXTRA_LIBS} 
     115) 
     116 
     117 
    98118 
    99119 
  • service/NSCPlugin.cpp

    r7f9c823 r818b54e  
    1919*   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             * 
    2020***************************************************************************/ 
    21 #include "stdafx.h" 
     21#include "StdAfx.h" 
    2222#include "NSClient++.h" 
    2323#include <error.hpp> 
     
    215215 * @throws NSPluginException if the module is not loaded. 
    216216 */ 
    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) { 
     217NSCAPI::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) { 
    218218  if (!isLoaded()) 
    219219    throw NSPluginException(module_, _T("Library is not loaded")); 
  • service/NSCPlugin.h

    r7f9c823 r818b54e  
    154154  bool hasCommandHandler(void); 
    155155  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); 
    157157  void handleMessage(int msgType, const wchar_t* file, const int line, const wchar_t *message); 
    158158  void unload(void); 
  • service/NSClient++-2005.vcproj

    r7f9c823 r818b54e  
    18331833      </File> 
    18341834      <File 
    1835         RelativePath="..\include\NSCHelper.cpp" 
    1836         > 
    1837         <FileConfiguration 
    1838           Name="Release|Win32" 
    1839           > 
    1840           <Tool 
    1841             Name="VCCLCompilerTool" 
    1842             UsePrecompiledHeader="0" 
    1843             PrecompiledHeaderThrough=" " 
    1844             PrecompiledHeaderFile=" " 
    1845           /> 
    1846         </FileConfiguration> 
    1847         <FileConfiguration 
    1848           Name="Release|x64" 
    1849           > 
    1850           <Tool 
    1851             Name="VCCLCompilerTool" 
    1852             UsePrecompiledHeader="0" 
    1853             PrecompiledHeaderThrough=" " 
    1854             PrecompiledHeaderFile=" " 
    1855           /> 
    1856         </FileConfiguration> 
    1857         <FileConfiguration 
    1858           Name="Debug|Win32" 
    1859           > 
    1860           <Tool 
    1861             Name="VCCLCompilerTool" 
    1862             UsePrecompiledHeader="0" 
    1863             PrecompiledHeaderThrough=" " 
    1864             PrecompiledHeaderFile=" " 
    1865           /> 
    1866         </FileConfiguration> 
    1867         <FileConfiguration 
    1868           Name="Debug|x64" 
    1869           > 
    1870           <Tool 
    1871             Name="VCCLCompilerTool" 
    1872             UsePrecompiledHeader="0" 
    1873             PrecompiledHeaderThrough=" " 
    1874             PrecompiledHeaderFile=" " 
    1875           /> 
    1876         </FileConfiguration> 
    1877         <FileConfiguration 
    1878           Name="Distribution|Win32" 
    1879           > 
    1880           <Tool 
    1881             Name="VCCLCompilerTool" 
    1882             UsePrecompiledHeader="0" 
    1883             PrecompiledHeaderThrough=" " 
    1884             PrecompiledHeaderFile=" " 
    1885           /> 
    1886         </FileConfiguration> 
    1887         <FileConfiguration 
    1888           Name="Distribution|x64" 
    1889           > 
    1890           <Tool 
    1891             Name="VCCLCompilerTool" 
    1892             UsePrecompiledHeader="0" 
    1893             PrecompiledHeaderThrough=" " 
    1894             PrecompiledHeaderFile=" " 
    1895           /> 
    1896         </FileConfiguration> 
    1897         <FileConfiguration 
    1898           Name="Nightly|Win32" 
    1899           > 
    1900           <Tool 
    1901             Name="VCCLCompilerTool" 
    1902             UsePrecompiledHeader="0" 
    1903             PrecompiledHeaderThrough=" " 
    1904             PrecompiledHeaderFile=" " 
    1905           /> 
    1906         </FileConfiguration> 
    1907         <FileConfiguration 
    1908           Name="Nightly|x64" 
    1909           > 
    1910           <Tool 
    1911             Name="VCCLCompilerTool" 
    1912             UsePrecompiledHeader="0" 
    1913             PrecompiledHeaderThrough=" " 
    1914             PrecompiledHeaderFile=" " 
    1915           /> 
    1916         </FileConfiguration> 
    1917         <FileConfiguration 
    1918           Name="Debug-MemCheck|Win32" 
    1919           > 
    1920           <Tool 
    1921             Name="VCCLCompilerTool" 
    1922             UsePrecompiledHeader="0" 
    1923             PrecompiledHeaderThrough=" " 
    1924             PrecompiledHeaderFile=" " 
    1925           /> 
    1926         </FileConfiguration> 
    1927         <FileConfiguration 
    1928           Name="Debug-MemCheck|x64" 
    1929           > 
    1930           <Tool 
    1931             Name="VCCLCompilerTool" 
    1932             UsePrecompiledHeader="0" 
    1933             PrecompiledHeaderThrough=" " 
    1934             PrecompiledHeaderFile=" " 
    1935           /> 
    1936         </FileConfiguration> 
    1937         <FileConfiguration 
    1938           Name="OP5|Win32" 
    1939           > 
    1940           <Tool 
    1941             Name="VCCLCompilerTool" 
    1942             UsePrecompiledHeader="0" 
    1943             PrecompiledHeaderThrough=" " 
    1944             PrecompiledHeaderFile=" " 
    1945           /> 
    1946         </FileConfiguration> 
    1947         <FileConfiguration 
    1948           Name="OP5|x64" 
    1949           > 
    1950           <Tool 
    1951             Name="VCCLCompilerTool" 
    1952             UsePrecompiledHeader="0" 
    1953             PrecompiledHeaderThrough=" " 
    1954             PrecompiledHeaderFile=" " 
    1955           /> 
    1956         </FileConfiguration> 
    1957       </File> 
    1958       <File 
    19591835        RelativePath=".\NSClient++.cpp" 
    19601836        > 
     
    23272203      </File> 
    23282204      <File 
    2329         RelativePath=".\include\remote_processes.hpp" 
     2205        RelativePath="..\include\remote_processes.hpp" 
    23302206        > 
    23312207      </File> 
     
    23712247      </File> 
    23722248      <File 
     2249        RelativePath="..\include\simpleini\simpleini.h" 
     2250        > 
     2251      </File> 
     2252      <File 
    23732253        RelativePath=".\include\Singleton.h" 
    23742254        > 
     
    23882268      <File 
    23892269        RelativePath=".\tray_manager.hpp" 
     2270        > 
     2271      </File> 
     2272      <File 
     2273        RelativePath="..\include\types.hpp" 
    23902274        > 
    23912275      </File> 
  • service/NSClient++.cpp

    r77b729e r818b54e  
    2727//#endif 
    2828#endif 
    29 #include <remote_processes.hpp> 
     29//#include <remote_processes.hpp> 
    3030//#include <winsvc.h> 
    3131//#include <Userenv.h> 
    3232//#include <Lmcons.h> 
    33 #include <remote_processes.hpp> 
     33//#include <remote_processes.hpp> 
    3434#include "core_api.h" 
    3535#include "settings_manager_impl.h" 
     
    6868  } 
    6969  DWORD threadProc(LPVOID lpParameter) { 
     70#ifdef WIN32 
    7071    start_block* param = static_cast<start_block*>(lpParameter); 
    7172    DWORD dwSessionId = param->sessionId; 
     
    7879        break; 
    7980    } 
     81#endif 
    8082    return 0; 
    8183  } 
     
    196198 
    197199void display(std::wstring title, std::wstring message) { 
     200#ifdef WIN32 
    198201  ::MessageBox(NULL, message.c_str(), title.c_str(), MB_OK|MB_ICONERROR); 
     202#endif 
     203  std::wcout << title << std::endl << message << std::endl; 
    199204} 
    200205 
     
    212217 * @return exit status 
    213218 */ 
    214 int wmain(int argc, TCHAR* argv[], TCHAR* envp[]) 
     219int nscp_main(int argc, wchar_t* argv[]); 
     220 
     221#ifdef WIN32 
     222int wmain(int argc, wchar_t* argv[], wchar_t* envp[]) { return nscp_main(argc, argv); } 
     223#else 
     224int 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 
     238int nscp_main(int argc, wchar_t* argv[]) 
    215239{ 
    216240  srand( (unsigned)time( NULL ) ); 
     
    219243    if (false) { 
    220244#ifdef WIN32 
    221     } if ( _wcsicmp( _T("install"), argv[1]+1 ) == 0 ) { 
     245    } if ( wcscasecmp( _T("install"), argv[1]+1 ) == 0 ) { 
    222246      bool bGui = false; 
    223247      bool bStart = false; 
    224248      std::wstring service_name, service_description; 
    225249      for (int i=2;i<argc;i++) { 
    226         if (_wcsicmp( _T("gui"), argv[i]) == 0) { 
     250        if (wcscasecmp( _T("gui"), argv[i]) == 0) { 
    227251          bGui = true; 
    228         } else if (_wcsicmp( _T("start"), argv[i]) == 0) { 
     252        } else if (wcscasecmp( _T("start"), argv[i]) == 0) { 
    229253          bStart = true; 
    230254        } else { 
     
    264288      LOG_MESSAGE(_T("Service installed!")); 
    265289      return 0; 
    266     } else if ( _wcsicmp( _T("uninstall"), argv[1]+1 ) == 0 ) { 
     290    } else if ( wcscasecmp( _T("uninstall"), argv[1]+1 ) == 0 ) { 
    267291      bool bGui = false; 
    268292      bool bStop = false; 
    269293      std::wstring service_name; 
    270294      for (int i=2;i<argc;i++) { 
    271         if (_wcsicmp( _T("gui"), argv[i]) == 0) { 
     295        if (wcscasecmp( _T("gui"), argv[i]) == 0) { 
    272296          bGui = true; 
    273         } else if (_wcsicmp( _T("stop"), argv[i]) == 0) { 
     297        } else if (wcscasecmp( _T("stop"), argv[i]) == 0) { 
    274298          bStop = true; 
    275299        } else { 
     
    298322      LOG_MESSAGE(_T("Service uninstalled!")); 
    299323      return 0; 
    300     } else if ( _wcsicmp( _T("start"), argv[1]+1 ) == 0 ) { 
     324    } else if ( wcscasecmp( _T("start"), argv[1]+1 ) == 0 ) { 
    301325      g_bConsoleLog = true; 
    302326      bool bGui = false; 
    303327      std::wstring service_name; 
    304328      for (int i=2;i<argc;i++) { 
    305         if (_wcsicmp( _T("gui"), argv[i]) == 0) { 
     329        if (wcscasecmp( _T("gui"), argv[i]) == 0) { 
    306330          bGui = true; 
    307331        } else { 
     
    319343        return -1; 
    320344      } 
    321     } else if ( _wcsicmp( _T("stop"), argv[1]+1 ) == 0 ) { 
     345    } else if ( wcscasecmp( _T("stop"), argv[1]+1 ) == 0 ) { 
    322346      g_bConsoleLog = true; 
    323347      bool bGui = false; 
    324348      std::wstring service_name; 
    325349      for (int i=2;i<argc;i++) { 
    326         if (_wcsicmp( _T("gui"), argv[i]) == 0) { 
     350        if (wcscasecmp( _T("gui"), argv[i]) == 0) { 
    327351          bGui = true; 
    328352        } else { 
     
    340364        return -1; 
    341365      } 
    342     } else if ( _wcsicmp( _T("svc"), argv[1]+1 ) == 0 ) { 
     366    } else if ( wcscasecmp( _T("svc"), argv[1]+1 ) == 0 ) { 
    343367      g_bConsoleLog = true; 
    344368      try { 
     
    349373      } 
    350374#endif 
    351     } else if ( _wcsicmp( _T("encrypt"), argv[1]+1 ) == 0 ) { 
     375    } else if ( wcscasecmp( _T("encrypt"), argv[1]+1 ) == 0 ) { 
    352376      g_bConsoleLog = true; 
    353377      std::wstring password; 
     
    365389      settings_manager::destroy_settings(); 
    366390      return 0; 
    367     } else if ( _wcsicmp( _T("about"), argv[1]+1 ) == 0 ) { 
     391    } else if ( wcscasecmp( _T("about"), argv[1]+1 ) == 0 ) { 
    368392      g_bConsoleLog = true; 
    369393      LOG_MESSAGE(SZAPPNAME _T(" (C) Michael Medin - michael<at>medin<dot>name")); 
     
    402426      } 
    403427      return false; 
    404     } else if ( _wcsicmp( _T("version"), argv[1]+1 ) == 0 ) { 
     428    } else if ( wcscasecmp( _T("version"), argv[1]+1 ) == 0 ) { 
    405429      g_bConsoleLog = true; 
    406430      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 ) { 
    408432      // 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 ) { 
    410434      g_bConsoleLog = true; 
    411435      mainClient.enableDebug(false); 
     
    417441      mainClient.exitCore(true); 
    418442      return nRetCode; 
    419     } else if ( _wcsicmp( _T("c"), argv[1]+1 ) == 0 ) { 
     443    } else if ( wcscasecmp( _T("c"), argv[1]+1 ) == 0 ) { 
    420444      // Run command from command line (like NRPE) 
    421445      g_bConsoleLog = true; 
     
    433457      mainClient.exitCore(true); 
    434458      return nRetCode; 
    435     } else if ( _wcsicmp( _T("test"), argv[1]+1 ) == 0 ) { 
     459    } else if ( wcscasecmp( _T("test"), argv[1]+1 ) == 0 ) { 
    436460      bool server = false; 
    437       if (argc > 2 && _wcsicmp( _T("server"), argv[2] ) == 0 ) { 
     461      if (argc > 2 && wcscasecmp( _T("server"), argv[2] ) == 0 ) { 
    438462        server = true; 
    439463      } 
    440464      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 ); 
    442466#ifdef WIN32 
    443467      try { 
     
    618642} 
    619643 
    620 void NSClientT::HandleSettingsCLI(TCHAR* arg, int argc, TCHAR* argv[]) { 
     644void NSClientT::HandleSettingsCLI(wchar_t* arg, int argc, wchar_t* argv[]) { 
    621645  std::wstring sarg = arg; 
    622646  try { 
     
    734758 */ 
    735759bool NSClientT::initCore(bool boot) { 
    736   LOG_MESSAGE(_T("Attempting to start NSCLient++ - " SZVERSION)); 
     760  LOG_MESSAGE(_T("Attempting to start NSCLient++ - ") SZVERSION); 
    737761  if (!settings_manager::init_settings(getBasePath())) { 
    738762    return false; 
     
    815839        try { 
    816840          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.")); 
    818842            continue; 
    819843          } 
     
    846870      return false; 
    847871    } 
    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!")); 
    851875  return true; 
    852876} 
     
    902926bool NSClientT::exitCore(bool boot) { 
    903927  plugins_loaded_ = false; 
    904   LOG_DEBUG(_T("Attempting to stop NSCLient++ - " SZVERSION)); 
     928  LOG_DEBUG(_T("Attempting to stop NSCLient++ - ") SZVERSION); 
    905929  if (boot) { 
    906930    try { 
     
    965989    } 
    966990  } 
    967   LOG_MESSAGE_STD(_T("NSCLient++ - " SZVERSION) + _T(" Stopped succcessfully")); 
     991  LOG_MESSAGE_STD(_T("NSCLient++ - ") SZVERSION _T(" Stopped succcessfully")); 
    968992  return true; 
    969993} 
     
    10181042// Member functions 
    10191043 
    1020 int NSClientT::commandLineExec(const TCHAR* module, const TCHAR* command, const unsigned int argLen, TCHAR** args) { 
     1044int NSClientT::commandLineExec(const wchar_t* module, const wchar_t* command, const unsigned int argLen, wchar_t** args) { 
    10211045  std::wstring sModule = module; 
    10221046  std::wstring moduleList = _T(""); 
     
    12581282} 
    12591283 
    1260 NSCAPI::nagiosReturn NSClientT::inject(std::wstring command, std::wstring arguments, TCHAR splitter, bool escape, std::wstring &msg, std::wstring & perf) { 
     1284NSCAPI::nagiosReturn NSClientT::inject(std::wstring command, std::wstring arguments, wchar_t splitter, bool escape, std::wstring &msg, std::wstring & perf) { 
    12611285  /*if (shared_client_.get() != NULL && shared_client_->hasMaster()) { 
    12621286    try { 
     
    12711295  } else */{ 
    12721296    unsigned int aLen = 0; 
    1273     TCHAR ** aBuf = arrayBuffer::split2arrayBuffer(arguments, splitter, aLen, escape); 
     1297    wchar_t ** aBuf = arrayBuffer::split2arrayBuffer(arguments, splitter, aLen, escape); 
    12741298    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'; 
    12771301    NSCAPI::nagiosReturn ret = injectRAW(command.c_str(), aLen, aBuf, mBuf, buf_len, pBuf, buf_len); 
    12781302    arrayBuffer::destroyArrayBuffer(aBuf, aLen); 
     
    13021326 * @return The command status 
    13031327 */ 
    1304 NSCAPI::nagiosReturn NSClientT::injectRAW(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR *returnPerfBuffer, unsigned int returnPerfBufferLen) { 
     1328NSCAPI::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) { 
    13051329  if (logDebug()) { 
    13061330    LOG_DEBUG_STD(_T("Injecting: ") + (std::wstring) command + _T(": ") + arrayBuffer::arrayBuffer2string(argument, argLen, _T(", "))); 
     
    13971421 
    13981422void log_broken_message(std::wstring msg) { 
     1423#ifdef WIN32 
    13991424  OutputDebugString(msg.c_str()); 
     1425#endif 
    14001426  std::wcout << msg << std::endl; 
    14011427} 
     
    14081434 * @param message The message as a human readable string. 
    14091435 */ 
    1410 void NSClientT::reportMessage(int msgType, const TCHAR* file, const int line, std::wstring message) { 
     1436void NSClientT::reportMessage(int msgType, const wchar_t* file, const int line, std::wstring message) { 
    14111437  try { 
    14121438    strEx::replace(message, _T("\n"), _T(" ")); 
     
    15051531    return basePath; 
    15061532  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]; 
    15081535  GetModuleFileName(NULL, buffer, buf_len); 
    15091536  std::wstring path = buffer; 
     
    15111538  basePath = path.substr(0, pos) + _T("\\"); 
    15121539  delete [] buffer; 
     1540#endif 
    15131541  try { 
    15141542    settings_manager::get_core()->set_base(basePath); 
     
    15261554  NSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 
    15271555  len+=2; 
    1528   TCHAR *buf = new TCHAR[len+1]; 
     1556  wchar_t *buf = new wchar_t[len+1]; 
    15291557  NSCAPI::errorReturn ret = NSAPIEncrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 
    15301558  if (ret == NSCAPI::isSuccess) { 
     
    15391567  NSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), NULL, &len); 
    15401568  len+=2; 
    1541   TCHAR *buf = new TCHAR[len+1]; 
     1569  wchar_t *buf = new wchar_t[len+1]; 
    15421570  NSCAPI::errorReturn ret = NSAPIDecrypt(algorithm, str.c_str(), static_cast<unsigned int>(str.size()), buf, &len); 
    15431571  if (ret == NSCAPI::isSuccess) { 
     
    15481576  return _T(""); 
    15491577} 
    1550  
    1551  
  • service/NSClient++.h

    r77b729e r818b54e  
    2020***************************************************************************/ 
    2121#pragma once 
    22  
     22#include <types.hpp> 
    2323#include <config.h> 
    2424#include <service/system_service.hpp> 
     
    146146  // Member functions 
    147147  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, TCHAR splitter, 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); 
    150150//  std::wstring inject(const std::wstring buffer); 
    151151  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); 
    154154 
    155155  void addPlugins(const std::list<std::wstring> plugins); 
     
    161161  void registerCommand(std::wstring cmd, std::wstring desc); 
    162162  unsigned int getBufferLength(); 
    163   void HandleSettingsCLI(TCHAR* arg, int argc, TCHAR* argv[]); 
     163  void HandleSettingsCLI(wchar_t* arg, int argc, wchar_t* argv[]); 
    164164  void startTrayIcons(); 
    165165  void startTrayIcon(DWORD dwSessionId); 
     
    172172  void session_error(std::wstring file, unsigned int line, std::wstring msg); 
    173173  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) { 
    175175    reportMessage(msgType, file, line, message); 
    176176  } 
    177   int session_inject(std::wstring command, std::wstring arguments, TCHAR splitter, 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) { 
    178178    return inject(command, arguments, splitter, escape, msg, perf); 
    179179  } 
     
    197197std::wstring Decrypt(std::wstring str, unsigned int algorithm = NSCAPI::encryption_xor); 
    198198 
    199 #ifndef __FILEW__ 
    200 #define R(x) _T(x) 
    201 #define __FILEW__ R(__FILE__) 
    202 #endif 
    203199////////////////////////////////////////////////////////////////////////// 
    204200// Log macros to simplify logging 
  • service/StdAfx.h

    rb21f30b r818b54e  
    4545 
    4646#include "config.h" 
    47 #include <singleton.h> 
     47#include <Singleton.h> 
    4848#include <charEx.h> 
    4949#include <memory> 
  • service/core_api.cpp

    r7f9c823 r818b54e  
    1313// 
    1414////////////////////////////////////////////////////////////////////////// 
    15 #include "stdafx.h" 
     15#include "StdAfx.h" 
    1616#include "NSClient++.h" 
    1717#include "core_api.h" 
     
    1919#include <config.h> 
    2020#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 
    2425#include <Userenv.h> 
     26#endif 
    2527#include <settings/Settings.h> 
    2628#include "settings_manager_impl.h" 
     
    3032 
    3133 
    32 NSCAPI::errorReturn NSAPIGetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* defaultValue, TCHAR* buffer, unsigned int bufLen) { 
     34NSCAPI::errorReturn NSAPIGetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* defaultValue, wchar_t* buffer, unsigned int bufLen) { 
    3335  try { 
    3436    return NSCHelper::wrapReturnString(buffer, bufLen, settings_manager::get_settings()->get_string(section, key, defaultValue), NSCAPI::isSuccess); 
     
    3840  } 
    3941} 
    40 int NSAPIGetSettingsInt(const TCHAR* section, const TCHAR* key, int defaultValue) { 
     42int NSAPIGetSettingsInt(const wchar_t* section, const wchar_t* key, int defaultValue) { 
    4143  try { 
    4244    return settings_manager::get_settings()->get_int(section, key, defaultValue); 
     
    4648  } 
    4749} 
    48 NSCAPI::errorReturn NSAPIGetBasePath(TCHAR*buffer, unsigned int bufLen) { 
     50NSCAPI::errorReturn NSAPIGetBasePath(wchar_t*buffer, unsigned int bufLen) { 
    4951  return NSCHelper::wrapReturnString(buffer, bufLen, mainClient.getBasePath(), NSCAPI::isSuccess); 
    5052} 
    51 NSCAPI::errorReturn NSAPIGetApplicationName(TCHAR*buffer, unsigned int bufLen) { 
     53NSCAPI::errorReturn NSAPIGetApplicationName(wchar_t*buffer, unsigned int bufLen) { 
    5254  return NSCHelper::wrapReturnString(buffer, bufLen, SZAPPNAME, NSCAPI::isSuccess); 
    5355} 
    54 NSCAPI::errorReturn NSAPIGetApplicationVersionStr(TCHAR*buffer, unsigned int bufLen) { 
     56NSCAPI::errorReturn NSAPIGetApplicationVersionStr(wchar_t*buffer, unsigned int bufLen) { 
    5557  return NSCHelper::wrapReturnString(buffer, bufLen, SZVERSION, NSCAPI::isSuccess); 
    5658} 
    57 void NSAPIMessage(int msgType, const TCHAR* file, const int line, const TCHAR* message) { 
     59void NSAPIMessage(int msgType, const wchar_t* file, const int line, const wchar_t* message) { 
    5860  mainClient.reportMessage(msgType, file, line, message); 
    5961} 
     
    6365#endif 
    6466} 
    65 NSCAPI::nagiosReturn NSAPIInject(const TCHAR* command, const unsigned int argLen, TCHAR **argument, TCHAR *returnMessageBuffer, unsigned int returnMessageBufferLen, TCHAR *returnPerfBuffer, unsigned int returnPerfBufferLen) { 
     67NSCAPI::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) { 
    6668  return mainClient.injectRAW(command, argLen, argument, returnMessageBuffer, returnMessageBufferLen, returnPerfBuffer, returnPerfBufferLen); 
    6769} 
    68 NSCAPI::errorReturn NSAPIGetSettingsSection(const TCHAR* section, TCHAR*** aBuffer, unsigned int * bufLen) { 
     70NSCAPI::errorReturn NSAPIGetSettingsSection(const wchar_t* section, wchar_t*** aBuffer, unsigned int * bufLen) { 
    6971  try { 
    7072    unsigned int len = 0; 
     
    7981  return NSCAPI::hasFailed; 
    8082} 
    81 NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer(TCHAR*** aBuffer, unsigned int * bufLen) { 
     83NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer(wchar_t*** aBuffer, unsigned int * bufLen) { 
    8284  arrayBuffer::destroyArrayBuffer(*aBuffer, *bufLen); 
    8385  *bufLen = 0; 
     
    9294} 
    9395 
    94 NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen) { 
     96NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen) { 
    9597  if (algorithm != NSCAPI::encryption_xor) { 
    9698    LOG_ERROR(_T("Unknown algortihm requested.")); 
     
    122124  } 
    123125  int realOutLen; 
    124   TCHAR *realOut = charEx::char_to_tchar(cOutBuf, cOutBufLen, realOutLen); 
     126  wchar_t *realOut = charEx::char_to_tchar(cOutBuf, cOutBufLen, realOutLen); 
    125127  if (static_cast<unsigned int>(realOutLen) >= *outBufLen) { 
    126128    LOG_ERROR_STD(_T("Invalid out buffer length: ") + strEx::itos(realOutLen) + _T(" was needed but only ") + strEx::itos(*outBufLen) + _T(" was allocated.")); 
     
    135137} 
    136138 
    137 NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const TCHAR* inBuffer, unsigned int inBufLen, TCHAR* outBuf, unsigned int *outBufLen) { 
     139NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen) { 
    138140  if (algorithm != NSCAPI::encryption_xor) { 
    139141    LOG_ERROR(_T("Unknown algortihm requested.")); 
     
    165167  } 
    166168 
    167   TCHAR *realOut = charEx::char_to_tchar(cOutBuf, cOutLen, realOutLen); 
     169  wchar_t *realOut = charEx::char_to_tchar(cOutBuf, cOutLen, realOutLen); 
    168170  if (static_cast<unsigned int>(realOutLen) >= *outBufLen) { 
    169171    LOG_ERROR_STD(_T("Invalid out buffer length: ") + strEx::itos(realOutLen) + _T(" was needed but only ") + strEx::itos(*outBufLen) + _T(" was allocated.")); 
     
    178180} 
    179181 
    180 NSCAPI::errorReturn NSAPISetSettingsString(const TCHAR* section, const TCHAR* key, const TCHAR* value) { 
     182NSCAPI::errorReturn NSAPISetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* value) { 
    181183  try { 
    182184    settings_manager::get_settings()->set_string(section, key, value); 
     
    187189  return NSCAPI::isSuccess; 
    188190} 
    189 NSCAPI::errorReturn NSAPISetSettingsInt(const TCHAR* section, const TCHAR* key, int value) { 
     191NSCAPI::errorReturn NSAPISetSettingsInt(const wchar_t* section, const wchar_t* key, int value) { 
    190192  try { 
    191193    settings_manager::get_settings()->set_int(section, key, value); 
     
    233235  return NSCAPI::hasFailed; 
    234236} 
    235 NSCAPI::errorReturn NSAPIDescribeCommand(const TCHAR* command, TCHAR* buffer, unsigned int bufLen) { 
     237NSCAPI::errorReturn NSAPIDescribeCommand(const wchar_t* command, wchar_t* buffer, unsigned int bufLen) { 
    236238  return NSCHelper::wrapReturnString(buffer, bufLen, mainClient.describeCommand(command), NSCAPI::isSuccess); 
    237239} 
     
    242244  return NSCAPI::isSuccess; 
    243245} 
    244 NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer(TCHAR*** aBuffer, unsigned int * bufLen) { 
     246NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer(wchar_t*** aBuffer, unsigned int * bufLen) { 
    245247  arrayBuffer::destroyArrayBuffer(*aBuffer, *bufLen); 
    246248  *bufLen = 0; 
     
    248250  return NSCAPI::isSuccess; 
    249251} 
    250 NSCAPI::errorReturn NSAPIRegisterCommand(const TCHAR* cmd,const TCHAR* desc) { 
     252NSCAPI::errorReturn NSAPIRegisterCommand(const wchar_t* cmd,const wchar_t* desc) { 
    251253  mainClient.registerCommand(cmd, desc); 
    252254  return NSCAPI::isSuccess; 
    253255} 
    254 NSCAPI::errorReturn NSAPISettingsRegKey(const TCHAR* path, const TCHAR* key, int type, const TCHAR* title, const TCHAR* description, const TCHAR* defVal, int advanced) { 
     256NSCAPI::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) { 
    255257  try { 
    256258    if (type == NSCAPI::key_string) 
     
    272274 
    273275 
    274 NSCAPI::errorReturn NSAPISettingsRegPath(const TCHAR* path, const TCHAR* title, const TCHAR* description, int advanced) { 
     276NSCAPI::errorReturn NSAPISettingsRegPath(const wchar_t* path, const wchar_t* title, const wchar_t* description, int advanced) { 
    275277  try { 
    276278    settings_manager::get_core()->register_path(path, title, description, advanced); 
     
    285287} 
    286288 
    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[]) 
     290wchar_t* copyString(const std::wstring &str) { 
    289291  int sz = str.size(); 
    290   TCHAR *tc = new TCHAR[sz+2]; 
     292  wchar_t *tc = new wchar_t[sz+2]; 
    291293  wcsncpy_s(tc, sz+1, str.c_str(), sz); 
    292294  return tc; 
     
    333335 
    334336 
    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; 
     337LPVOID 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); 
    390392 
    391393  LOG_ERROR_STD(_T("Function not found: ") + buffer); 
  • service/core_api.h

    rd5356c1 r818b54e  
    3030// 
    3131 
    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); 
     32LPVOID NSAPILoader(wchar_t*buffer); 
     33NSCAPI::errorReturn NSAPIGetApplicationName(wchar_t*buffer, unsigned int bufLen); 
     34NSCAPI::errorReturn NSAPIGetBasePath(wchar_t*buffer, unsigned int bufLen); 
     35NSCAPI::errorReturn NSAPIGetApplicationVersionStr(wchar_t*buffer, unsigned int bufLen); 
     36NSCAPI::errorReturn NSAPIGetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* defaultValue, wchar_t* buffer, unsigned int bufLen); 
     37int NSAPIGetSettingsInt(const wchar_t* section, const wchar_t* key, int defaultValue); 
     38void NSAPIMessage(int msgType, const wchar_t* file, const int line, const wchar_t* message); 
    3939void 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); 
     40NSCAPI::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); 
     41NSCAPI::errorReturn NSAPIGetSettingsSection(const wchar_t*, wchar_t***, unsigned int *); 
     42NSCAPI::errorReturn NSAPIReleaseSettingsSectionBuffer(wchar_t*** aBuffer, unsigned int * bufLen); 
    4343NSCAPI::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); 
     44NSCAPI::errorReturn NSAPIEncrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen); 
     45NSCAPI::errorReturn NSAPIDecrypt(unsigned int algorithm, const wchar_t* inBuffer, unsigned int inBufLen, wchar_t* outBuf, unsigned int *outBufLen); 
     46NSCAPI::errorReturn NSAPISetSettingsString(const wchar_t* section, const wchar_t* key, const wchar_t* value); 
     47NSCAPI::errorReturn NSAPISetSettingsInt(const wchar_t* section, const wchar_t* key, int value); 
    4848NSCAPI::errorReturn NSAPIWriteSettings(int type); 
    4949NSCAPI::errorReturn NSAPIReadSettings(int type); 
    5050NSCAPI::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); 
     51NSCAPI::errorReturn NSAPIDescribeCommand(const wchar_t*,wchar_t*,unsigned int); 
     52NSCAPI::errorReturn NSAPIGetAllCommandNames(wchar_t***, unsigned int *); 
     53NSCAPI::errorReturn NSAPIReleaseAllCommandNamessBuffer(wchar_t***, unsigned int *); 
     54NSCAPI::errorReturn NSAPIRegisterCommand(const wchar_t*,const wchar_t*); 
     55NSCAPI::errorReturn NSAPISettingsRegKey(const wchar_t*, const wchar_t*, int, const wchar_t*, const wchar_t*, const wchar_t*, int); 
     56NSCAPI::errorReturn NSAPISettingsRegPath(const wchar_t*, const wchar_t*, const wchar_t*, int); 
    5757NSCAPI::errorReturn NSAPIGetPluginList(int*, NSCAPI::plugin_info*[]); 
    5858NSCAPI::errorReturn NSAPIReleasePluginList(int,NSCAPI::plugin_info*[]); 
  • service/settings_manager_impl.cpp

    rd5356c1 r818b54e  
    1 #include "stdafx.h" 
     1#include "StdAfx.h" 
    22 
    33#include "settings_manager_impl.h" 
     
    55#define LOG_CRITICAL_STD(msg) LOG_CRITICAL(((std::wstring)msg).c_str()) 
    66#define LOG_CRITICAL(msg) \ 
    7   NSAPIMessage(NSCAPI::critical, _T(__FILE__), __LINE__, msg) 
     7  NSAPIMessage(NSCAPI::critical, __FILEW__, __LINE__, msg) 
    88 
    99namespace settings_manager { 
  • service/settings_manager_impl.h

    rb21f30b r818b54e  
    33#include "settings_logger_impl.hpp" 
    44#include <settings/Settings.h> 
     5#ifdef WIN32 
    56#include <settings/settings_ini.hpp> 
    6 #ifdef WIN32 
    77#include <settings/settings_old.hpp> 
    88#include <settings/settings_registry.hpp> 
     
    2626    /// @author mickem 
    2727    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]; 
    2930      GetPrivateProfileString(section.c_str(), key.c_str(), def.c_str(), buffer, 1023, boot_.c_str()); 
    3031      std::wstring ret = buffer; 
    3132      delete [] buffer; 
    3233      return ret; 
     34#else 
     35      return _T("ini"); 
     36#endif 
    3337    } 
    3438    ////////////////////////////////////////////////////////////////////////// 
     
    6872      if (type == SettingsCore::registry) 
    6973        return new Settings::REGSettings(this, context); 
    70 #endif 
    7174      if (type == SettingsCore::ini_file) 
    7275        return new Settings::INISettings(this, context); 
     76#endif 
    7377      throw SettingsException(_T("Undefined settings type: ") + SettingsCore::type_to_string(type)); 
    7478    } 
Note: See TracChangeset for help on using the changeset viewer.