Changeset 1eef1ee in nscp for modules/NSClientCompat


Ignore:
Timestamp:
03/20/05 20:54:25 (8 years ago)
Author:
Michael Medin <michael@…>
Branches:
master, 0.4.0, 0.4.1, 0.4.2, stable
Children:
c6e008c
Parents:
2a94f3f
Message:

*OBS* This might no longer work! (expect updated code in the next few days if things are broken)

  • Fundamental API changes (due to NRPE compatibility)
    • HandleCommand? has changed
    • Inject has changed
    • Most API calls have new "return codes" (typedef:ed INT to allow for return code compiler checks)
    • A lot of the old return codes have changed
  • Preliminary NRPE support (can parse and execute incoming requests, cant return data yet, and no encryption)
  • New SimpleSocket? in include/ will be used as base class for Listeners
  • A lot of rewrite to the NSC API
Location:
modules/NSClientCompat
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • modules/NSClientCompat/NSClientCompat.cpp

    r8223547 r1eef1ee  
    107107 * @return  
    108108 */ 
    109 std::string NSClientCompat::handleCommand(const std::string command, const unsigned int argLen, char **args) { 
     109NSCAPI::nagiosReturn NSClientCompat::handleCommand(const std::string command, const unsigned int argLen, char **char_args, std::string &msg, std::string &perf) { 
    110110  std::list<std::string> stl_args; 
    111111  int id = atoi(command.c_str()); 
    112112  if (id == 0) 
    113     return ""; 
     113    return NSCAPI::returnIgnored; 
    114114  switch (id) { 
    115115    case REQ_CLIENTVERSION: 
    116116      { 
    117         std::string version = NSCModuleHelper::getSettingsString("nsclient compat", "version", "modern"); 
    118         if (version == "modern") 
    119           return NSCModuleHelper::getApplicationName() + " " + NSCModuleHelper::getApplicationVersionString(); 
    120         return version; 
     117        std::string msg = NSCModuleHelper::getSettingsString("nsclient compat", "version", "modern"); 
     118        if (msg == "modern") 
     119          msg = NSCModuleHelper::getApplicationName() + " " + NSCModuleHelper::getApplicationVersionString(); 
     120        return NSCAPI::returnOK; 
    121121      } 
    122122    case REQ_UPTIME: 
    123       return strEx::itos(pdhCollector->getUptime()); 
     123      msg= strEx::itos(pdhCollector->getUptime()); 
     124      return NSCAPI::returnOK; 
    124125 
    125126    case REQ_CPULOAD: 
    126127      { 
    127         stl_args = NSCHelper::arrayBuffer2list(argLen, args); 
    128         if (stl_args.empty()) 
    129           return "ERROR: Missing argument exception."; 
    130         std::string ret; 
     128        stl_args = NSCHelper::arrayBuffer2list(argLen, char_args); 
     129        if (stl_args.empty()) { 
     130          msg = "ERROR: Missing argument exception."; 
     131          return NSCAPI::returnCRIT; 
     132        } 
    131133        while (!stl_args.empty()) { 
    132134          std::string s = stl_args.front(); stl_args.pop_front(); 
    133135          int v = pdhCollector->getCPUAvrage(strEx::stoi(s)*(60/CHECK_INTERVAL)); 
    134           if (v == -1) 
    135             return ret; 
    136           if (!ret.empty()) 
    137             ret += "&"; 
    138           ret += strEx::itos(v); 
     136          if (v == -1) { 
     137            return NSCAPI::returnOK; 
     138          } 
     139          if (!msg.empty()) 
     140            msg += "&"; 
     141          msg += strEx::itos(v); 
    139142        } 
    140         return ret; 
     143        return NSCAPI::returnOK; 
    141144      } 
     145      /* 
    142146    case REQ_SERVICESTATE: 
    143147      return NSCommands::serviceState(NSCHelper::arrayBuffer2list(argLen, args)); 
     
    152156    case REQ_USEDDISKSPACE: 
    153157      return NSCommands::usedDiskSpace(NSCHelper::arrayBuffer2list(argLen, args)); 
     158      */ 
    154159  } 
    155   return ""; 
     160  return NSCAPI::returnIgnored; 
    156161} 
    157162 
  • modules/NSClientCompat/NSClientCompat.h

    ra0528c4 r1eef1ee  
    1818  bool hasCommandHandler(); 
    1919  bool hasMessageHandler(); 
    20   std::string handleCommand(const std::string command, const unsigned int argLen, char **args); 
     20  NSCAPI::nagiosReturn handleCommand(const std::string command, const unsigned int argLen, char **char_args, std::string &msg, std::string &perf); 
    2121}; 
Note: See TracChangeset for help on using the changeset viewer.