/************************************************************************
*
* Nagios Main Header File
* Written By: Ethan Galstad (nagios@nagios.org)
* Last Modified: 01-08-2007
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
************************************************************************/
#ifndef _NAGIOS_H
#define _NAGIOS_H
#include "config.h"
#include "common.h"
#include "locations.h"
#include "objects.h"
#ifdef __cplusplus
extern "C" {
#endif
#define MAX_COMMAND_ARGUMENTS 32 /* maximum number of $ARGx$ macros */
#define MAX_USER_MACROS 256 /* maximum number of $USERx$ macros */
#define MAX_STATE_LENGTH 32 /* length definitions used in macros */
#define MAX_STATETYPE_LENGTH 24
#define MAX_CHECKTYPE_LENGTH 8
#define MAX_NOTIFICATIONTYPE_LENGTH 32
#define MAX_NOTIFICATIONNUMBER_LENGTH 8
#define MAX_ATTEMPT_LENGTH 8
#define MAX_TOTALS_LENGTH 8
#define MAX_EXECUTIONTIME_LENGTH 10
#define MAX_LATENCY_LENGTH 10
#define MAX_DURATION_LENGTH 17
#define MAX_DOWNTIME_LENGTH 3
#define MAX_STATEID_LENGTH 2
#define MAX_PERCENTCHANGE_LENGTH 8
#define MACRO_ENV_VAR_PREFIX "NAGIOS_"
#define MACRO_X_COUNT 99 /* size of macro_x[] array */
#define MACRO_HOSTNAME 0
#define MACRO_HOSTALIAS 1
#define MACRO_HOSTADDRESS 2
#define MACRO_SERVICEDESC 3
#define MACRO_SERVICESTATE 4
#define MACRO_SERVICESTATEID 5
#define MACRO_SERVICEATTEMPT 6
#define MACRO_LONGDATETIME 7
#define MACRO_SHORTDATETIME 8
#define MACRO_DATE 9
#define MACRO_TIME 10
#define MACRO_TIMET 11
#define MACRO_LASTHOSTCHECK 12
#define MACRO_LASTSERVICECHECK 13
#define MACRO_LASTHOSTSTATECHANGE 14
#define MACRO_LASTSERVICESTATECHANGE 15
#define MACRO_HOSTOUTPUT 16
#define MACRO_SERVICEOUTPUT 17
#define MACRO_HOSTPERFDATA 18
#define MACRO_SERVICEPERFDATA 19
#define MACRO_CONTACTNAME 20
#define MACRO_CONTACTALIAS 21
#define MACRO_CONTACTEMAIL 22
#define MACRO_CONTACTPAGER 23
#define MACRO_ADMINEMAIL 24
#define MACRO_ADMINPAGER 25
#define MACRO_HOSTSTATE 26
#define MACRO_HOSTSTATEID 27
#define MACRO_HOSTATTEMPT 28
#define MACRO_NOTIFICATIONTYPE 29
#define MACRO_NOTIFICATIONNUMBER 30
#define MACRO_HOSTEXECUTIONTIME 31
#define MACRO_SERVICEEXECUTIONTIME 32
#define MACRO_HOSTLATENCY 33
#define MACRO_SERVICELATENCY 34
#define MACRO_HOSTDURATION 35
#define MACRO_SERVICEDURATION 36
#define MACRO_HOSTDURATIONSEC 37
#define MACRO_SERVICEDURATIONSEC 38
#define MACRO_HOSTDOWNTIME 39
#define MACRO_SERVICEDOWNTIME 40
#define MACRO_HOSTSTATETYPE 41
#define MACRO_SERVICESTATETYPE 42
#define MACRO_HOSTPERCENTCHANGE 43
#define MACRO_SERVICEPERCENTCHANGE 44
#define MACRO_HOSTGROUPNAME 45
#define MACRO_HOSTGROUPALIAS 46
=1= |