windows-nt/Source/XPSP1/NT/net/snmp/newagent/inc/service.h
2020-09-26 16:20:57 +08:00

163 lines
6.3 KiB
C
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*++
Copyright (c) 1992-1997 Microsoft Corporation
Module Name:
service.h
Abstract:
Contains service definitions for SNMP master agent.
Environment:
User Mode - Win32
Revision History:
10-Feb-1997 DonRyan
Rewrote to implement SNMPv2 support.
--*/
#ifndef _SERVICE_H_
#define _SERVICE_H_
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP service name //
// //
///////////////////////////////////////////////////////////////////////////////
#define SNMP_SERVICE TEXT("SNMP")
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP log level limits (must be consistent with SNMP_LOG_ contants) //
// //
///////////////////////////////////////////////////////////////////////////////
#define SNMP_LOGLEVEL_MINIMUM 0
#define SNMP_LOGLEVEL_MAXIMUM 20
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP log type limits (must be consistent with SNMP_OUTPUT_ contants) //
// //
///////////////////////////////////////////////////////////////////////////////
#define SNMP_LOGTYPE_MINIMUM 0
#define SNMP_LOGTYPE_MAXIMUM 10
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP service parameter offsets (used in control handler) //
// //
///////////////////////////////////////////////////////////////////////////////
#define SNMP_SERVICE_CONTROL_BASE 128
#define SNMP_SERVICE_LOGLEVEL_BASE SNMP_SERVICE_CONTROL_BASE
#define SNMP_SERVICE_LOGTYPE_BASE \
(SNMP_SERVICE_LOGLEVEL_BASE + SNMP_LOGLEVEL_MAXIMUM + 1)
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP service parameter macro definitions //
// //
///////////////////////////////////////////////////////////////////////////////
#define IS_LOGLEVEL(x) \
(((x) >= (SNMP_SERVICE_LOGLEVEL_BASE + SNMP_LOGLEVEL_MINIMUM)) && \
((x) <= (SNMP_SERVICE_LOGLEVEL_BASE + SNMP_LOGLEVEL_MAXIMUM)))
#define IS_LOGTYPE(x) \
(((x) >= (SNMP_SERVICE_LOGTYPE_BASE + SNMP_LOGTYPE_MINIMUM)) && \
((x) <= (SNMP_SERVICE_LOGTYPE_BASE + SNMP_LOGTYPE_MAXIMUM)))
#define IS_LOGLEVEL_VALID(x) \
(((x) >= SNMP_LOGLEVEL_MINIMUM) && ((x) <= SNMP_LOGLEVEL_MAXIMUM))
#define IS_LOGTYPE_VALID(x) \
(((x) >= SNMP_LOGTYPE_MINIMUM) && ((x) <= SNMP_LOGTYPE_MAXIMUM))
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP service status definitions //
// //
///////////////////////////////////////////////////////////////////////////////
#define NO_WAIT_HINT 0
#define SNMP_WAIT_HINT 30000
///////////////////////////////////////////////////////////////////////////////
// //
// SNMP service debug string macro definitions //
// //
///////////////////////////////////////////////////////////////////////////////
#define SNMP_LOGLEVEL_STRING(x) \
(((x) == SNMP_LOG_SILENT) \
? "SILENT" \
: ((x) == SNMP_LOG_FATAL) \
? "FATAL" \
: ((x) == SNMP_LOG_ERROR) \
? "ERROR" \
: ((x) == SNMP_LOG_WARNING) \
? "WARNING" \
: ((x) == SNMP_LOG_TRACE) \
? "TRACE" \
: ((x) == SNMP_LOG_VERBOSE) \
? "VERBOSE" \
: "UNKNOWN" \
)
#define SNMP_LOGTYPE_STRING(x) \
(((x) == SNMP_OUTPUT_TO_CONSOLE) \
? "CONSOLE" \
: ((x) == SNMP_OUTPUT_TO_LOGFILE) \
? "LOGFILE" \
: ((x) == SNMP_OUTPUT_TO_EVENTLOG) \
? "EVENTLOG" \
: ((x) == SNMP_OUTPUT_TO_DEBUGGER) \
? "DEBUGGER" \
: "UNKNOWN" \
)
#define SERVICE_STATUS_STRING(x) \
(((x) == SERVICE_STOPPED) \
? "STOPPED" \
: ((x) == SERVICE_START_PENDING) \
? "START PENDING" \
: ((x) == SERVICE_STOP_PENDING) \
? "STOP PENDING" \
: ((x) == SERVICE_RUNNING) \
? "RUNNING" \
: ((x) == SERVICE_CONTINUE_PENDING) \
? "CONTINUE PENDING" \
: ((x) == SERVICE_PAUSE_PENDING) \
? "PAUSE PENDING" \
: ((x) == SERVICE_PAUSED) \
? "PAUSED" \
: "UNKNOWN" \
)
#define SERVICE_CONTROL_STRING(x) \
(((x) == SERVICE_CONTROL_STOP) \
? "STOP" \
: ((x) == SERVICE_CONTROL_PAUSE) \
? "PAUSE" \
: ((x) == SERVICE_CONTROL_CONTINUE) \
? "CONTINUE" \
: ((x) == SERVICE_CONTROL_INTERROGATE) \
? "INTERROGATE" \
: ((x) == SERVICE_CONTROL_SHUTDOWN) \
? "SHUTDOWN" \
: "CONFIGURE" \
)
#endif // _SERVICE_H_