common.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #define PROGRAM_VERSION "3.0rc1"
00025 #define PROGRAM_MODIFICATION_DATE "12-17-2007"
00026
00027
00028
00029
00030
00031
00032
00033 #ifdef NSCORE
00034 #ifndef _REENTRANT
00035 #define _REENTRANT
00036 #endif
00037 #ifndef _THREAD_SAFE
00038 #define _THREAD_SAFE
00039 #endif
00040 #endif
00041
00042
00043 #undef USE_MEMORY_PERFORMANCE_TWEAKS
00044
00045
00046 #define my_free(ptr) { if(ptr) { free(ptr); ptr = NULL; } }
00047
00048
00049
00050
00051
00052 #define CMD_NONE 0
00053
00054 #define CMD_ADD_HOST_COMMENT 1
00055 #define CMD_DEL_HOST_COMMENT 2
00056
00057 #define CMD_ADD_SVC_COMMENT 3
00058 #define CMD_DEL_SVC_COMMENT 4
00059
00060 #define CMD_ENABLE_SVC_CHECK 5
00061 #define CMD_DISABLE_SVC_CHECK 6
00062
00063 #define CMD_SCHEDULE_SVC_CHECK 7
00064
00065 #define CMD_DELAY_SVC_NOTIFICATION 9
00066
00067 #define CMD_DELAY_HOST_NOTIFICATION 10
00068
00069 #define CMD_DISABLE_NOTIFICATIONS 11
00070 #define CMD_ENABLE_NOTIFICATIONS 12
00071
00072 #define CMD_RESTART_PROCESS 13
00073 #define CMD_SHUTDOWN_PROCESS 14
00074
00075 #define CMD_ENABLE_HOST_SVC_CHECKS 15
00076 #define CMD_DISABLE_HOST_SVC_CHECKS 16
00077
00078 #define CMD_SCHEDULE_HOST_SVC_CHECKS 17
00079
00080 #define CMD_DELAY_HOST_SVC_NOTIFICATIONS 19
00081
00082 #define CMD_DEL_ALL_HOST_COMMENTS 20
00083 #define CMD_DEL_ALL_SVC_COMMENTS 21
00084
00085 #define CMD_ENABLE_SVC_NOTIFICATIONS 22
00086 #define CMD_DISABLE_SVC_NOTIFICATIONS 23
00087 #define CMD_ENABLE_HOST_NOTIFICATIONS 24
00088 #define CMD_DISABLE_HOST_NOTIFICATIONS 25
00089 #define CMD_ENABLE_ALL_NOTIFICATIONS_BEYOND_HOST 26
00090 #define CMD_DISABLE_ALL_NOTIFICATIONS_BEYOND_HOST 27
00091 #define CMD_ENABLE_HOST_SVC_NOTIFICATIONS 28
00092 #define CMD_DISABLE_HOST_SVC_NOTIFICATIONS 29
00093
00094 #define CMD_PROCESS_SERVICE_CHECK_RESULT 30
00095
00096 #define CMD_SAVE_STATE_INFORMATION 31
00097 #define CMD_READ_STATE_INFORMATION 32
00098
00099 #define CMD_ACKNOWLEDGE_HOST_PROBLEM 33
00100 #define CMD_ACKNOWLEDGE_SVC_PROBLEM 34
00101
00102 #define CMD_START_EXECUTING_SVC_CHECKS 35
00103 #define CMD_STOP_EXECUTING_SVC_CHECKS 36
00104
00105 #define CMD_START_ACCEPTING_PASSIVE_SVC_CHECKS 37
00106 #define CMD_STOP_ACCEPTING_PASSIVE_SVC_CHECKS 38
00107
00108 #define CMD_ENABLE_PASSIVE_SVC_CHECKS 39
00109 #define CMD_DISABLE_PASSIVE_SVC_CHECKS 40
00110
00111 #define CMD_ENABLE_EVENT_HANDLERS 41
00112 #define CMD_DISABLE_EVENT_HANDLERS 42
00113
00114 #define CMD_ENABLE_HOST_EVENT_HANDLER 43
00115 #define CMD_DISABLE_HOST_EVENT_HANDLER 44
00116
00117 #define CMD_ENABLE_SVC_EVENT_HANDLER 45
00118 #define CMD_DISABLE_SVC_EVENT_HANDLER 46
00119
00120 #define CMD_ENABLE_HOST_CHECK 47
00121 #define CMD_DISABLE_HOST_CHECK 48
00122
00123 #define CMD_START_OBSESSING_OVER_SVC_CHECKS 49
00124 #define CMD_STOP_OBSESSING_OVER_SVC_CHECKS 50
00125
00126 #define CMD_REMOVE_HOST_ACKNOWLEDGEMENT 51
00127 #define CMD_REMOVE_SVC_ACKNOWLEDGEMENT 52
00128
00129 #define CMD_SCHEDULE_FORCED_HOST_SVC_CHECKS 53
00130 #define CMD_SCHEDULE_FORCED_SVC_CHECK 54
00131
00132 #define CMD_SCHEDULE_HOST_DOWNTIME 55
00133 #define CMD_SCHEDULE_SVC_DOWNTIME 56
00134
00135 #define CMD_ENABLE_HOST_FLAP_DETECTION 57
00136 #define CMD_DISABLE_HOST_FLAP_DETECTION 58
00137
00138 #define CMD_ENABLE_SVC_FLAP_DETECTION 59
00139 #define CMD_DISABLE_SVC_FLAP_DETECTION 60
00140
00141 #define CMD_ENABLE_FLAP_DETECTION 61
00142 #define CMD_DISABLE_FLAP_DETECTION 62
00143
00144 #define CMD_ENABLE_HOSTGROUP_SVC_NOTIFICATIONS 63
00145 #define CMD_DISABLE_HOSTGROUP_SVC_NOTIFICATIONS 64
00146
00147 #define CMD_ENABLE_HOSTGROUP_HOST_NOTIFICATIONS 65
00148 #define CMD_DISABLE_HOSTGROUP_HOST_NOTIFICATIONS 66
00149
00150 #define CMD_ENABLE_HOSTGROUP_SVC_CHECKS 67
00151 #define CMD_DISABLE_HOSTGROUP_SVC_CHECKS 68
00152
00153 #define CMD_CANCEL_HOST_DOWNTIME 69
00154 #define CMD_CANCEL_SVC_DOWNTIME 70
00155
00156 #define CMD_CANCEL_ACTIVE_HOST_DOWNTIME 71
00157 #define CMD_CANCEL_PENDING_HOST_DOWNTIME 72
00158
00159 #define CMD_CANCEL_ACTIVE_SVC_DOWNTIME 73
00160 #define CMD_CANCEL_PENDING_SVC_DOWNTIME 74
00161
00162 #define CMD_CANCEL_ACTIVE_HOST_SVC_DOWNTIME 75
00163 #define CMD_CANCEL_PENDING_HOST_SVC_DOWNTIME 76
00164
00165 #define CMD_FLUSH_PENDING_COMMANDS 77
00166
00167 #define CMD_DEL_HOST_DOWNTIME 78
00168 #define CMD_DEL_SVC_DOWNTIME 79
00169
00170 #define CMD_ENABLE_FAILURE_PREDICTION 80
00171 #define CMD_DISABLE_FAILURE_PREDICTION 81
00172
00173 #define CMD_ENABLE_PERFORMANCE_DATA 82
00174 #define CMD_DISABLE_PERFORMANCE_DATA 83
00175
00176 #define CMD_SCHEDULE_HOSTGROUP_HOST_DOWNTIME 84
00177 #define CMD_SCHEDULE_HOSTGROUP_SVC_DOWNTIME 85
00178 #define CMD_SCHEDULE_HOST_SVC_DOWNTIME 86
00179
00180
00181 #define CMD_PROCESS_HOST_CHECK_RESULT 87
00182
00183 #define CMD_START_EXECUTING_HOST_CHECKS 88
00184 #define CMD_STOP_EXECUTING_HOST_CHECKS 89
00185
00186 #define CMD_START_ACCEPTING_PASSIVE_HOST_CHECKS 90
00187 #define CMD_STOP_ACCEPTING_PASSIVE_HOST_CHECKS 91
00188
00189 #define CMD_ENABLE_PASSIVE_HOST_CHECKS 92
00190 #define CMD_DISABLE_PASSIVE_HOST_CHECKS 93
00191
00192 #define CMD_START_OBSESSING_OVER_HOST_CHECKS 94
00193 #define CMD_STOP_OBSESSING_OVER_HOST_CHECKS 95
00194
00195 #define CMD_SCHEDULE_HOST_CHECK 96
00196 #define CMD_SCHEDULE_FORCED_HOST_CHECK 98
00197
00198 #define CMD_START_OBSESSING_OVER_SVC 99
00199 #define CMD_STOP_OBSESSING_OVER_SVC 100
00200
00201 #define CMD_START_OBSESSING_OVER_HOST 101
00202 #define CMD_STOP_OBSESSING_OVER_HOST 102
00203
00204 #define CMD_ENABLE_HOSTGROUP_HOST_CHECKS 103
00205 #define CMD_DISABLE_HOSTGROUP_HOST_CHECKS 104
00206
00207 #define CMD_ENABLE_HOSTGROUP_PASSIVE_SVC_CHECKS 105
00208 #define CMD_DISABLE_HOSTGROUP_PASSIVE_SVC_CHECKS 106
00209
00210 #define CMD_ENABLE_HOSTGROUP_PASSIVE_HOST_CHECKS 107
00211 #define CMD_DISABLE_HOSTGROUP_PASSIVE_HOST_CHECKS 108
00212
00213 #define CMD_ENABLE_SERVICEGROUP_SVC_NOTIFICATIONS 109
00214 #define CMD_DISABLE_SERVICEGROUP_SVC_NOTIFICATIONS 110
00215
00216 #define CMD_ENABLE_SERVICEGROUP_HOST_NOTIFICATIONS 111
00217 #define CMD_DISABLE_SERVICEGROUP_HOST_NOTIFICATIONS 112
00218
00219 #define CMD_ENABLE_SERVICEGROUP_SVC_CHECKS 113
00220 #define CMD_DISABLE_SERVICEGROUP_SVC_CHECKS 114
00221
00222 #define CMD_ENABLE_SERVICEGROUP_HOST_CHECKS 115
00223 #define CMD_DISABLE_SERVICEGROUP_HOST_CHECKS 116
00224
00225 #define CMD_ENABLE_SERVICEGROUP_PASSIVE_SVC_CHECKS 117
00226 #define CMD_DISABLE_SERVICEGROUP_PASSIVE_SVC_CHECKS 118
00227
00228 #define CMD_ENABLE_SERVICEGROUP_PASSIVE_HOST_CHECKS 119
00229 #define CMD_DISABLE_SERVICEGROUP_PASSIVE_HOST_CHECKS 120
00230
00231 #define CMD_SCHEDULE_SERVICEGROUP_HOST_DOWNTIME 121
00232 #define CMD_SCHEDULE_SERVICEGROUP_SVC_DOWNTIME 122
00233
00234 #define CMD_CHANGE_GLOBAL_HOST_EVENT_HANDLER 123
00235 #define CMD_CHANGE_GLOBAL_SVC_EVENT_HANDLER 124
00236
00237 #define CMD_CHANGE_HOST_EVENT_HANDLER 125
00238 #define CMD_CHANGE_SVC_EVENT_HANDLER 126
00239
00240 #define CMD_CHANGE_HOST_CHECK_COMMAND 127
00241 #define CMD_CHANGE_SVC_CHECK_COMMAND 128
00242
00243 #define CMD_CHANGE_NORMAL_HOST_CHECK_INTERVAL 129
00244 #define CMD_CHANGE_NORMAL_SVC_CHECK_INTERVAL 130
00245 #define CMD_CHANGE_RETRY_SVC_CHECK_INTERVAL 131
00246
00247 #define CMD_CHANGE_MAX_HOST_CHECK_ATTEMPTS 132
00248 #define CMD_CHANGE_MAX_SVC_CHECK_ATTEMPTS 133
00249
00250 #define CMD_SCHEDULE_AND_PROPAGATE_TRIGGERED_HOST_DOWNTIME 134
00251
00252 #define CMD_ENABLE_HOST_AND_CHILD_NOTIFICATIONS 135
00253 #define CMD_DISABLE_HOST_AND_CHILD_NOTIFICATIONS 136
00254
00255 #define CMD_SCHEDULE_AND_PROPAGATE_HOST_DOWNTIME 137
00256
00257 #define CMD_ENABLE_SERVICE_FRESHNESS_CHECKS 138
00258 #define CMD_DISABLE_SERVICE_FRESHNESS_CHECKS 139
00259
00260 #define CMD_ENABLE_HOST_FRESHNESS_CHECKS 140
00261 #define CMD_DISABLE_HOST_FRESHNESS_CHECKS 141
00262
00263 #define CMD_SET_HOST_NOTIFICATION_NUMBER 142
00264 #define CMD_SET_SVC_NOTIFICATION_NUMBER 143
00265
00266
00267 #define CMD_CHANGE_HOST_CHECK_TIMEPERIOD 144
00268 #define CMD_CHANGE_SVC_CHECK_TIMEPERIOD 145
00269
00270 #define CMD_PROCESS_FILE 146
00271
00272 #define CMD_CHANGE_CUSTOM_HOST_VAR 147
00273 #define CMD_CHANGE_CUSTOM_SVC_VAR 148
00274 #define CMD_CHANGE_CUSTOM_CONTACT_VAR 149
00275
00276 #define CMD_ENABLE_CONTACT_HOST_NOTIFICATIONS 150
00277 #define CMD_DISABLE_CONTACT_HOST_NOTIFICATIONS 151
00278 #define CMD_ENABLE_CONTACT_SVC_NOTIFICATIONS 152
00279 #define CMD_DISABLE_CONTACT_SVC_NOTIFICATIONS 153
00280
00281 #define CMD_ENABLE_CONTACTGROUP_HOST_NOTIFICATIONS 154
00282 #define CMD_DISABLE_CONTACTGROUP_HOST_NOTIFICATIONS 155
00283 #define CMD_ENABLE_CONTACTGROUP_SVC_NOTIFICATIONS 156
00284 #define CMD_DISABLE_CONTACTGROUP_SVC_NOTIFICATIONS 157
00285
00286 #define CMD_CHANGE_RETRY_HOST_CHECK_INTERVAL 158
00287
00288 #define CMD_SEND_CUSTOM_HOST_NOTIFICATION 159
00289 #define CMD_SEND_CUSTOM_SVC_NOTIFICATION 160
00290
00291 #define CMD_CHANGE_HOST_NOTIFICATION_TIMEPERIOD 161
00292 #define CMD_CHANGE_SVC_NOTIFICATION_TIMEPERIOD 162
00293 #define CMD_CHANGE_CONTACT_HOST_NOTIFICATION_TIMEPERIOD 163
00294 #define CMD_CHANGE_CONTACT_SVC_NOTIFICATION_TIMEPERIOD 164
00295
00296 #define CMD_CHANGE_HOST_MODATTR 165
00297 #define CMD_CHANGE_SVC_MODATTR 166
00298 #define CMD_CHANGE_CONTACT_MODATTR 167
00299 #define CMD_CHANGE_CONTACT_MODHATTR 168
00300 #define CMD_CHANGE_CONTACT_MODSATTR 169
00301
00302
00303 #define CMD_CUSTOM_COMMAND 999
00304
00305
00306
00307
00308
00309 #define SERVICE_CHECK_ACTIVE 0
00310 #define SERVICE_CHECK_PASSIVE 1
00311
00312
00313
00314
00315 #define HOST_CHECK_ACTIVE 0
00316 #define HOST_CHECK_PASSIVE 1
00317
00318
00319
00320
00321 #define SOFT_STATE 0
00322 #define HARD_STATE 1
00323
00324
00325
00326
00327 #define SERVICE_DOWNTIME 1
00328 #define HOST_DOWNTIME 2
00329 #define ANY_DOWNTIME 3
00330
00331
00332
00333
00334 #define NOTIFICATION_OPTION_NONE 0
00335 #define NOTIFICATION_OPTION_BROADCAST 1
00336 #define NOTIFICATION_OPTION_FORCED 2
00337 #define NOTIFICATION_OPTION_INCREMENT 4
00338
00339
00340
00341
00342 #define HOST_ACKNOWLEDGEMENT 0
00343 #define SERVICE_ACKNOWLEDGEMENT 1
00344
00345 #define ACKNOWLEDGEMENT_NONE 0
00346 #define ACKNOWLEDGEMENT_NORMAL 1
00347 #define ACKNOWLEDGEMENT_STICKY 2
00348
00349
00350
00351
00352 #define NOTIFICATION_DEPENDENCY 1
00353 #define EXECUTION_DEPENDENCY 2
00354
00355
00356
00357
00358
00359 #define CHECK_OPTION_NONE 0
00360 #define CHECK_OPTION_FORCE_EXECUTION 1
00361 #define CHECK_OPTION_FRESHNESS_CHECK 2
00362 #define CHECK_OPTION_ORPHAN_CHECK 4
00363
00364
00365
00366
00367 #define STANDBY_MODE 0
00368 #define ACTIVE_MODE 1
00369
00370
00371
00372
00373 #define LOG_ROTATION_NONE 0
00374 #define LOG_ROTATION_HOURLY 1
00375 #define LOG_ROTATION_DAILY 2
00376 #define LOG_ROTATION_WEEKLY 3
00377 #define LOG_ROTATION_MONTHLY 4
00378
00379
00380
00381
00382 #define LOG_VERSION_1 "1.0"
00383 #define LOG_VERSION_2 "2.0"
00384
00385
00386
00387
00388
00389 #define ACTIVE_SCHEDULED_SERVICE_CHECK_STATS 0
00390 #define ACTIVE_ONDEMAND_SERVICE_CHECK_STATS 1
00391 #define PASSIVE_SERVICE_CHECK_STATS 2
00392 #define ACTIVE_SCHEDULED_HOST_CHECK_STATS 3
00393 #define ACTIVE_ONDEMAND_HOST_CHECK_STATS 4
00394 #define PASSIVE_HOST_CHECK_STATS 5
00395 #define ACTIVE_CACHED_HOST_CHECK_STATS 6
00396 #define ACTIVE_CACHED_SERVICE_CHECK_STATS 7
00397 #define EXTERNAL_COMMAND_STATS 8
00398 #define PARALLEL_HOST_CHECK_STATS 9
00399 #define SERIAL_HOST_CHECK_STATS 10
00400 #define MAX_CHECK_STATS_TYPES 11
00401
00402
00403
00404
00405 #define OK 0
00406 #define ERROR -2
00407
00408
00409 #ifndef TRUE
00410 #define TRUE 1
00411 #elif (TRUE!=1)
00412 #define TRUE 1
00413 #endif
00414 #ifndef FALSE
00415 #define FALSE 0
00416 #elif (FALSE!=0)
00417 #define FALSE 0
00418 #endif
00419
00420
00421
00422
00423 #define READ_HOSTS 1
00424 #define READ_HOSTGROUPS 2
00425 #define READ_CONTACTS 4
00426 #define READ_CONTACTGROUPS 8
00427 #define READ_SERVICES 16
00428 #define READ_COMMANDS 32
00429 #define READ_TIMEPERIODS 64
00430 #define READ_SERVICEESCALATIONS 128
00431 #define READ_HOSTGROUPESCALATIONS 256
00432 #define READ_SERVICEDEPENDENCIES 512
00433 #define READ_HOSTDEPENDENCIES 1024
00434 #define READ_HOSTESCALATIONS 2048
00435 #define READ_HOSTEXTINFO 4096
00436 #define READ_SERVICEEXTINFO 8192
00437 #define READ_SERVICEGROUPS 16384
00438
00439 #define READ_ALL_OBJECT_DATA READ_HOSTS | READ_HOSTGROUPS | READ_CONTACTS | READ_CONTACTGROUPS | READ_SERVICES | READ_COMMANDS | READ_TIMEPERIODS | READ_SERVICEESCALATIONS | READ_SERVICEDEPENDENCIES | READ_HOSTDEPENDENCIES | READ_HOSTESCALATIONS | READ_HOSTEXTINFO | READ_SERVICEEXTINFO | READ_SERVICEGROUPS
00440
00441
00442
00443
00444 #define DATERANGE_CALENDAR_DATE 0
00445 #define DATERANGE_MONTH_DATE 1
00446 #define DATERANGE_MONTH_DAY 2
00447 #define DATERANGE_MONTH_WEEK_DAY 3
00448 #define DATERANGE_WEEK_DAY 4
00449 #define DATERANGE_TYPES 5
00450
00451
00452
00453
00454 #define LONG_DATE_TIME 0
00455 #define SHORT_DATE_TIME 1
00456 #define SHORT_DATE 2
00457 #define SHORT_TIME 3
00458 #define HTTP_DATE_TIME 4
00459
00460
00461
00462
00463 #define DATE_FORMAT_US 0
00464 #define DATE_FORMAT_EURO 1
00465 #define DATE_FORMAT_ISO8601 2
00466 #define DATE_FORMAT_STRICT_ISO8601 3
00467
00468
00469
00470
00471 #define MAX_FILENAME_LENGTH 256
00472 #define MAX_INPUT_BUFFER 1024
00473 #define MAX_COMMAND_BUFFER 8192
00474 #define MAX_EXTERNAL_COMMAND_LENGTH 8192
00475
00476 #define MAX_DATETIME_LENGTH 48
00477
00478
00479
00480
00481 #define MODATTR_NONE 0
00482 #define MODATTR_NOTIFICATIONS_ENABLED 1
00483 #define MODATTR_ACTIVE_CHECKS_ENABLED 2
00484 #define MODATTR_PASSIVE_CHECKS_ENABLED 4
00485 #define MODATTR_EVENT_HANDLER_ENABLED 8
00486 #define MODATTR_FLAP_DETECTION_ENABLED 16
00487 #define MODATTR_FAILURE_PREDICTION_ENABLED 32
00488 #define MODATTR_PERFORMANCE_DATA_ENABLED 64
00489 #define MODATTR_OBSESSIVE_HANDLER_ENABLED 128
00490 #define MODATTR_EVENT_HANDLER_COMMAND 256
00491 #define MODATTR_CHECK_COMMAND 512
00492 #define MODATTR_NORMAL_CHECK_INTERVAL 1024
00493 #define MODATTR_RETRY_CHECK_INTERVAL 2048
00494 #define MODATTR_MAX_CHECK_ATTEMPTS 4096
00495 #define MODATTR_FRESHNESS_CHECKS_ENABLED 8192
00496 #define MODATTR_CHECK_TIMEPERIOD 16384
00497 #define MODATTR_CUSTOM_VARIABLE 32768
00498 #define MODATTR_NOTIFICATION_TIMEPERIOD 65536
00499
00500