|
|
/****************************************************************************
Copyright information : Copyright (c) 1998-1999 Microsoft Corporation File Name : GlobalSwitches.cpp Project Name : WMI Command Line Author Name : Ch. Sriramachandramurthy Date of Creation (dd/mm/yy) : 27th-September-2000 Version Number : 1.0 Brief Description : This class encapsulates the functionality needed for accessing and storing the global switches information, which will be used by Parsing, Execution and Format Engines depending upon the applicablity. Revision History : Last Modified by : Ch. Sriramachandramurthy Last Modified on : 11th-April-2001 ****************************************************************************/ // GlobalSwitches.cpp : implementation file
//
#include "precomp.h"
#include "GlobalSwitches.h"
/*------------------------------------------------------------------------
Name :CGlobalSwitches Synopsis :This function initializes the member variables when an object of the class type is instantiated Type :Constructor Input parameters :None Output parameters :None Return Type :None Global Variables :None Calling Syntax :None Notes :None ------------------------------------------------------------------------*/ CGlobalSwitches::CGlobalSwitches() { m_pszNameSpace = NULL; m_pszRole = NULL; m_pszNode = NULL; m_pszLocale = NULL; m_pszUser = NULL; m_pszPassword = NULL; m_pszAuthorityPrinciple = NULL; // Authority string
m_pszRecordPath = NULL; m_bPrivileges = TRUE; m_uConnInfoFlag = 0; m_bRoleFlag = TRUE; m_bNSFlag = TRUE; m_bLocaleFlag = TRUE; m_bRPChange = FALSE; m_bAggregateFlag = TRUE;
// default impersonation level is IMPERSONATE
m_ImpLevel = IMPERSONATE;
// default authentication level is DEFAULT
m_AuthLevel = AUTHPKTPRIVACY;
// Trace mode if OFF by default
m_bTrace = FALSE;
// Interactive mode is OFF by default
m_bInteractive = FALSE;
// Help flag is OFF by default
m_bHelp = FALSE;
// Default help option is BRIEF
m_HelpOption = HELPBRIEF;
m_bAskForPassFlag = FALSE; m_bFailFast = FALSE; m_opsOutputOpt = STDOUT; m_opsAppendOpt = STDOUT; m_eftFileType = ANSI_FILE; m_pszOutputFileName = NULL; m_fpOutFile = NULL; m_pszAppendFileName = NULL; m_fpAppendFile = NULL; m_nSeqNum = 0; m_pszLoggedOnUser = NULL; m_pszNodeName = NULL; m_pszStartTime = NULL; } /*------------------------------------------------------------------------
Name :~CGlobalSwitches Synopsis :This function Uninitializes the member variables when an object of the class type is instantiated Type :Destructor Input parameters :None Output parameters :None Return Type :None Global Variables :None Calling Syntax :None Notes :None ------------------------------------------------------------------------*/ CGlobalSwitches::~CGlobalSwitches() { Uninitialize(); }
/*------------------------------------------------------------------------
Name :Initialize Synopsis :This function initializes the necessary member variables. Type :Member Function Input parameters :None Output parameters :None Return Type :None Global Variables :None Calling Syntax :Initialize() Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::Initialize() throw(WMICLIINT) { static BOOL bFirst = TRUE; try { if (bFirst) { // NAMESPACE
// Set the default namespace to 'root\cimv2'
m_pszNameSpace = new _TCHAR [BUFFER32];
// Check for memory allocation failure.
if (m_pszNameSpace == NULL) throw OUT_OF_MEMORY; lstrcpy(m_pszNameSpace, CLI_NAMESPACE_DEFAULT); // Set the default role as 'root\cli'
m_pszRole = new _TCHAR [BUFFER32];
// Check for memory allocation failure
if (m_pszRole == NULL) throw OUT_OF_MEMORY;
lstrcpy(m_pszRole, CLI_ROLE_DEFAULT);
// Set the system default locale in the format ms_xxx
m_pszLocale = new _TCHAR [BUFFER32]; // Check for memory allocation failure
if (m_pszLocale == NULL) throw OUT_OF_MEMORY; _stprintf(m_pszLocale, _T("ms_%x"), GetSystemDefaultUILanguage());
m_pszNodeName = new _TCHAR [MAX_COMPUTERNAME_LENGTH + 1]; if (m_pszNodeName == NULL) throw OUT_OF_MEMORY;
DWORD dwCompNameBufferSize = MAX_COMPUTERNAME_LENGTH + 1; if (GetComputerName(m_pszNodeName, &dwCompNameBufferSize)) { m_pszNodeName[MAX_COMPUTERNAME_LENGTH] = _T('\0'); } else lstrcpy(m_pszNodeName, L"N/A");
// current node is the default.
m_pszNode = new _TCHAR [lstrlen(m_pszNodeName)+1];
// Check for memory allocation failure
if (m_pszNode == NULL) throw OUT_OF_MEMORY;
lstrcpy(m_pszNode, m_pszNodeName); ULONG nSize = 0;
if(!GetUserNameEx(NameSamCompatible, NULL, &nSize)) { m_pszLoggedOnUser = new _TCHAR [nSize + 1]; if (m_pszLoggedOnUser == NULL) throw OUT_OF_MEMORY;
if (!GetUserNameEx(NameSamCompatible, m_pszLoggedOnUser, &nSize)) lstrcpy(m_pszLoggedOnUser, L"N/A");
} if (!AddToNodesList(m_pszNode)) throw OUT_OF_MEMORY;
// Populate the IMPLEVEL mappings
m_cimImpLevel.insert(CHARINTMAP::value_type(_bstr_t(L"ANONYMOUS"), 1)); m_cimImpLevel.insert(CHARINTMAP::value_type(_bstr_t(L"IDENTIFY"), 2)); m_cimImpLevel.insert(CHARINTMAP::value_type(_bstr_t(L"IMPERSONATE"),3)); m_cimImpLevel.insert(CHARINTMAP::value_type(_bstr_t(L"DELEGATE"), 4));
// Populate the AUTHLEVEL mappings
m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"DEFAULT"), 0)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"NONE"), 1)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"CONNECT"), 2)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"CALL"), 3)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"PKT"), 4)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"PKTINTEGRITY"),5)); m_cimAuthLevel.insert(CHARINTMAP::value_type(_bstr_t(L"PKTPRIVACY"), 6));
bFirst = FALSE; } } catch(_com_error& e) { _com_issue_error(e.Error()); } m_HelpOption = HELPBRIEF; }
/*------------------------------------------------------------------------
Name :Uninitialize Synopsis :This function uninitializes the member variables when the execution of a command string issued on the command line is completed. Type :Member Function Input parameters :None Output parameters :None Return Type :None Global Variables :None Calling Syntax :Uninitialize() Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::Uninitialize() { SAFEDELETE(m_pszNameSpace); SAFEDELETE(m_pszRole); SAFEDELETE(m_pszLocale); SAFEDELETE(m_pszNode); CleanUpCharVector(m_cvNodesList); SAFEDELETE(m_pszUser); SAFEDELETE(m_pszPassword); SAFEDELETE(m_pszAuthorityPrinciple); SAFEDELETE(m_pszRecordPath); SAFEDELETE(m_pszOutputFileName); SAFEDELETE(m_pszAppendFileName); if ( m_fpOutFile != NULL ) { fclose(m_fpOutFile); m_fpOutFile = NULL; } if ( m_fpAppendFile != NULL ) { fclose(m_fpAppendFile); m_fpAppendFile = NULL; } m_bHelp = FALSE; m_bTrace = FALSE; m_bInteractive = FALSE; m_HelpOption = HELPBRIEF; m_AuthLevel = AUTHPKT; m_ImpLevel = IMPERSONATE; m_uConnInfoFlag = 0; m_cimAuthLevel.clear(); m_cimImpLevel.clear(); m_nSeqNum = 0; SAFEDELETE(m_pszLoggedOnUser); SAFEDELETE(m_pszNodeName); SAFEDELETE(m_pszStartTime); }
/*------------------------------------------------------------------------
Name :SetNameSpace Synopsis :This function Sets the namespace passed in parameter to m_pszNameSpace. Type :Member Function Input parameters : pszNameSpace -String type,contains Namespace specified in the command AliasFlag -Boolean type,specifies whether alias flag is set or not Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetNameSpace(pszNameSpace) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetNameSpace(_TCHAR* pszNamespace) { BOOL bResult = TRUE; if(pszNamespace) { // If the value specified is not _T("")
if( !CompareTokens(pszNamespace, CLI_TOKEN_NULL) ) { // Check if the same value is specified for the /NAMESPACE.
if (!CompareTokens(pszNamespace, m_pszNameSpace)) { SAFEDELETE(m_pszNameSpace); m_pszNameSpace = new _TCHAR [lstrlen(pszNamespace)+1]; if (m_pszNameSpace) { lstrcpy(m_pszNameSpace, pszNamespace); m_bNSFlag = TRUE; } else bResult = FALSE; } } // set back to default
else { // If the current namespace is not the default namespace
if (!CompareTokens(m_pszRole, CLI_NAMESPACE_DEFAULT)) { SAFEDELETE(m_pszNameSpace) m_pszNameSpace = new _TCHAR [BUFFER255]; if (m_pszNameSpace) { lstrcpy(m_pszNameSpace, CLI_NAMESPACE_DEFAULT); m_bNSFlag = TRUE; } else bResult = FALSE; } } } return bResult; }
/*------------------------------------------------------------------------
Name :SetRole Synopsis :This function Sets the role passed in parameter to m_pszRole. Type :Member Function Input parameters : pszRole -String type,contains Role specified in the command Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetRole(pszRole) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetRole(_TCHAR* pszRole) { BOOL bResult = TRUE; if(pszRole) { // If the value specified is not _T("")
if( !CompareTokens(pszRole, CLI_TOKEN_NULL) ) { // Check if the same value is specified for the /ROLE.
if (!CompareTokens(pszRole, m_pszRole)) { SAFEDELETE(m_pszRole); m_pszRole = new _TCHAR [lstrlen(pszRole)+1]; if (m_pszRole) { lstrcpy(m_pszRole, pszRole); m_bRoleFlag = TRUE; m_bLocaleFlag = TRUE; } else bResult = FALSE; } } // set back to default
else { // If the current role is not the default role
if (!CompareTokens(m_pszRole, CLI_ROLE_DEFAULT)) { SAFEDELETE(m_pszRole) m_pszRole = new _TCHAR [BUFFER255]; if (m_pszRole) { lstrcpy(m_pszRole, CLI_ROLE_DEFAULT); m_bRoleFlag = TRUE; m_bLocaleFlag = TRUE; } else bResult = FALSE; } } } return bResult; } /*------------------------------------------------------------------------
Name :SetLocale Synopsis :This function Assigns the locale passed in parameter to m_pszLocale. Type :Member Function Input parameters : pszLocale -String type,It contains Locale option specified in the command Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetLocale(pszLocale) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetLocale(_TCHAR* pszLocale) { BOOL bResult = TRUE; if(pszLocale) { // If the value specified is not _T("")
if (!CompareTokens(pszLocale, CLI_TOKEN_NULL)) { // Check if the same value is specified for the /LOCALE.
if (!CompareTokens(m_pszLocale, pszLocale)) { SAFEDELETE(m_pszLocale); m_pszLocale = new _TCHAR [lstrlen(pszLocale)+1]; if (m_pszLocale) { lstrcpy(m_pszLocale, pszLocale); m_uConnInfoFlag |= LOCALE; m_bLocaleFlag = TRUE; m_bRoleFlag = TRUE; m_bNSFlag = TRUE; } else bResult = FALSE; } } // If the value specified is _T("") - set to default system locale.
else { _TCHAR szLocale[BUFFER32] = NULL_STRING; _stprintf(szLocale, _T("ms_%x"), GetSystemDefaultUILanguage());
// If the current role is not the default role
if (!CompareTokens(m_pszLocale, szLocale)) { SAFEDELETE(m_pszLocale); m_pszLocale = new _TCHAR [BUFFER32]; if (m_pszLocale) { m_uConnInfoFlag &= ~LOCALE; lstrcpy(m_pszLocale, szLocale); m_bLocaleFlag = TRUE; m_bRoleFlag = TRUE; m_bNSFlag = TRUE; } else bResult = FALSE; } } } return bResult; } /*------------------------------------------------------------------------
Name :AddToNodesList Synopsis :This function adds the node passed in parameter to m_cvNodesList Type :Member Function Input parameters : pszNode - String type,contains Node option specified in the command Output parameters :None Return Type :void Global Variables :BOOL Calling Syntax :AddToNodesList(pszNode) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::AddToNodesList(_TCHAR* pszNode) { _TCHAR* pszTempNode = NULL; BOOL bRet = TRUE;
if (!CompareTokens(pszNode, CLI_TOKEN_NULL) && !CompareTokens(pszNode, CLI_TOKEN_DOT) && !CompareTokens(pszNode, CLI_TOKEN_LOCALHOST) && !CompareTokens(pszNode, m_pszNodeName)) { pszTempNode = new _TCHAR [ lstrlen ( pszNode ) + 1 ]; if (pszTempNode) lstrcpy(pszTempNode, pszNode); else bRet = FALSE; } else { // "." specifies current node
SAFEDELETE(m_pszNode); m_pszNode = new _TCHAR [ lstrlen (m_pszNodeName) + 1 ]; if (m_pszNodeName) { lstrcpy(m_pszNode, m_pszNodeName); pszTempNode = new _TCHAR [ lstrlen (m_pszNodeName) + 1 ]; if (pszTempNode) lstrcpy(pszTempNode, m_pszNodeName); else bRet = FALSE; } else bRet = FALSE; } if (bRet) { CHARVECTOR::iterator tempIterator; if ( !Find(m_cvNodesList, pszTempNode, tempIterator) ) m_cvNodesList.push_back(pszTempNode); else if ( CompareTokens(pszTempNode, m_pszNodeName) == TRUE ) { BOOL bFound = FALSE; tempIterator = m_cvNodesList.begin(); while ( tempIterator != m_cvNodesList.end() ) { if ( tempIterator != m_cvNodesList.begin() ) { if(CompareTokens(*tempIterator, m_pszNodeName) == TRUE) { bFound = TRUE; break; } } tempIterator++; } if(bFound == FALSE) m_cvNodesList.push_back(pszTempNode); else SAFEDELETE(pszTempNode); } else SAFEDELETE(pszTempNode); } return bRet; } /*------------------------------------------------------------------------
Name :SetUser Synopsis :This function Assigns the user passed in parameter to m_pszUser Type :Member Function Input parameters : pszUser -String type,contains User option specified in the command. Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetUser(pszUser) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetUser(_TCHAR* pszUser) { BOOL bResult = TRUE; SAFEDELETE(m_pszUser); if(pszUser) { if (!CompareTokens(pszUser, CLI_TOKEN_NULL)) { m_pszUser = new _TCHAR [lstrlen(pszUser)+1]; if (m_pszUser) { lstrcpy(m_pszUser, pszUser); m_uConnInfoFlag |= USER; } else bResult = FALSE; } else m_uConnInfoFlag &= ~USER; } return bResult; } /*------------------------------------------------------------------------
Name :SetPassword Synopsis :This function Assigns the password passed in parameter to m_pszPassword Type :Member Function Input parameters : pszPassword -Assigns the password passed in parameter to m_pszPassword Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetPassword(pszPassword) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetPassword(_TCHAR* pszPassword) { BOOL bResult = TRUE; SAFEDELETE(m_pszPassword) if (!CompareTokens(pszPassword, CLI_TOKEN_NULL)) { m_pszPassword = new _TCHAR [lstrlen(pszPassword)+1]; if (m_pszPassword) { lstrcpy(m_pszPassword, pszPassword); m_uConnInfoFlag |= PASSWORD; } else bResult = FALSE; } else m_uConnInfoFlag &= ~PASSWORD; return bResult; }
/*------------------------------------------------------------------------
Name :SetAuthorityPrinciple Synopsis :This function Assigns the <authority principle> passed in parameter to m_pszAuthorityPrinciple Type :Member Function Input parameters : pszPassword -Assigns the authority string passed in parameter to m_pszAuthorityPrinciple Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetAuthorityPrinciple(pszAuthorityPrinciple) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetAuthorityPrinciple(_TCHAR* pszAuthorityPrinciple) { BOOL bResult = TRUE; SAFEDELETE(m_pszAuthorityPrinciple) if (!CompareTokens(pszAuthorityPrinciple, CLI_TOKEN_NULL)) { m_pszAuthorityPrinciple = new _TCHAR [lstrlen(pszAuthorityPrinciple)+1]; if (m_pszAuthorityPrinciple) { lstrcpy(m_pszAuthorityPrinciple, pszAuthorityPrinciple); m_uConnInfoFlag |= AUTHORITY; } else bResult = FALSE; } else m_uConnInfoFlag &= ~AUTHORITY; return bResult; }
/*------------------------------------------------------------------------
Name :SetRecordPath(pszRecordPath) Synopsis :This function Assigns the record file passed in parameter to m_pszRecordPath Type :Member Function Input parameters : pszRecordPath -String type,contains Record path specified in the command. Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetRecordPath(pszRecordPath) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetRecordPath(_TCHAR* pszRecordPath) { BOOL bResult = TRUE; if (pszRecordPath) { // Check if the value specified is not _T("")
if (!CompareTokens(pszRecordPath, CLI_TOKEN_NULL)) { SAFEDELETE(m_pszRecordPath); m_pszRecordPath = new _TCHAR [lstrlen(pszRecordPath)+1]; if (m_pszRecordPath) { lstrcpy(m_pszRecordPath, pszRecordPath); m_bRPChange = TRUE; } else bResult = FALSE; } // if the value specified is _T("") set the recordpath to NULL
else { SAFEDELETE(m_pszRecordPath); m_bRPChange = TRUE; } } else { SAFEDELETE(m_pszRecordPath); m_bRPChange = TRUE; } return bResult; }
/*------------------------------------------------------------------------
Name :SetPrivileges(bEnable) Synopsis :This function sets bEnable flag to TRUE if Privileges :option is specified in the command Type :Member Function Input parameters : pszPrivileges -Boolean tye,Specifies whether the flag should be enabled or disabled Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetPrivileges(pszPrivileges) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetPrivileges(BOOL bEnable) { m_bPrivileges = bEnable; } /*------------------------------------------------------------------------
Name :SetImpersonationLevel(_TCHAR* const pszImpLevel) Synopsis :This function checks whether the specified pszImpLevel is valid and assigns the mapped value to m_ImpLevel. Type :Member Function Input parameters : pszImpLevel - IMPLEVEL input string Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetImpersonationLevel(pszImpLevel) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetImpersonationLevel(_TCHAR* const pszImpLevel) { BOOL bResult = TRUE; // Check whether the string exists in the list of available values.
CHARINTMAP::iterator theIterator = NULL; theIterator = m_cimImpLevel.find(CharUpper(pszImpLevel)); if (theIterator != m_cimImpLevel.end()) { m_ImpLevel = (IMPLEVEL) (*theIterator).second; } else bResult = FALSE; return bResult; }
/*------------------------------------------------------------------------
Name :SetAuthenticationLevel(_TCHAR* const pszAuthLevel) Synopsis :This function checks whether the specified pszAuthLevel is valid and assigns the mapped value to m_AuthLevel. Type :Member Function Input parameters : pszAuthLevel - AUTHLEVEL input string Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetAuthenticationLevel(pszAuthLevel) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetAuthenticationLevel(_TCHAR* const pszAuthLevel) { BOOL bResult = TRUE; // Check whether the string exists in the list of available values.
CHARINTMAP::iterator theIterator = NULL; theIterator = m_cimAuthLevel.find(CharUpper(pszAuthLevel)); if (theIterator != m_cimAuthLevel.end()) { m_AuthLevel = (AUTHLEVEL) (*theIterator).second; } else bResult = FALSE; return bResult; } /*------------------------------------------------------------------------
Name :SetTraceMode(BOOL bTrace) Synopsis :This function sets the m_bTrace to TRUE,If Trace mode is specified in the command Type :Member Function Input parameter : Trace -Boolean type,Specifies whether the trace mode has been set or not Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetTraceMode(bTrace) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetTraceMode(BOOL bTrace) { m_bTrace = bTrace; } /*------------------------------------------------------------------------
Name :SetInteractiveMode Synopsis :This function sets the m_bInteractive to TRUE,If interactive mode is specified in the command Type :Member Function Input parameter : bInteractive -Boolean type,Specifies whether the interactive mode has been set or not Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetInteractiveMode(bInteractive) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetInteractiveMode(BOOL bInteractive) { m_bInteractive = bInteractive; } /*------------------------------------------------------------------------
Name :SetHelpFlag Synopsis :sets the m_bHelp to TRUE, If /? is specified in the command Type :Member Function Input parameters : bHelp -BOOL type Specifies whether the helpflag has been set or not Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetHelpFlag(bHelp) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetHelpFlag(BOOL bHelp) { m_bHelp = bHelp; } /*------------------------------------------------------------------------
Name :SetHelpOption Synopsis :This function specifies whether the help should be brief or full Type :Member Function Input parameters : helpOption -Specifies whether the help should be brief or full Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetHelpOption(helpOption) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetHelpOption(HELPOPTION helpOption) { m_HelpOption = helpOption; }
/*------------------------------------------------------------------------
Name :SetConnInfoFlag Synopsis :This function sets the Connection Info flag Type :Member Function Input parameter : uFlag - Unsigned int type Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetConnInfoFlag(uFlag) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetConnInfoFlag(UINT uFlag) { m_uConnInfoFlag = uFlag; } /*------------------------------------------------------------------------
Name :GetConnInfoFlag Synopsis :This function returns the Connection Info flag Type :Member Function Input parameter :None Output parameters :None Return Type :UINT Global Variables :None Calling Syntax :GetConnInfoFlag() Notes :None ------------------------------------------------------------------------*/ UINT CGlobalSwitches::GetConnInfoFlag() { return m_uConnInfoFlag; }
/*------------------------------------------------------------------------
Name :GetNameSpace Synopsis :This function Returns the string held in m_pszNameSpace Type :Member Function Input parameters :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetNameSpace() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetNameSpace() { return m_pszNameSpace; }
/*------------------------------------------------------------------------
Name :GetRole Synopsis :This function Returns the string held in m_pszRole Type :Member Function Input parameters :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetRole() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetRole() { return m_pszRole; } /*------------------------------------------------------------------------
Name :GetLocale Synopsis :This function Returns the string held in m_pszLocale . Type :Member Function Input parameters :None Output parameters :None Return Type :_TCHR* Global Variables :None Calling Syntax :GetLocale() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetLocale() { return m_pszLocale; } /*------------------------------------------------------------------------
Name :GetNodesList Synopsis :This function Returns the vector held in m_cvNodesList Type :Member Function Input parameter :None Output parameters :None Return Type :CHARVECTOR& Global Variables :None Calling Syntax :GetNodesList() Notes :None ------------------------------------------------------------------------*/ CHARVECTOR& CGlobalSwitches::GetNodesList() { return m_cvNodesList; } /*------------------------------------------------------------------------
Name :GetUser Synopsis :This function Returns the string held in m_pszUser. Type :Member Function Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetUser() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetUser() { return m_pszUser; } /*------------------------------------------------------------------------
Name :GetPassword Synopsis :This function Returns the string held in m_pszPassword Type :Member Function Input parameters :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetPassword() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetPassword() { return m_pszPassword; }
/*------------------------------------------------------------------------
Name :GetAuthorityPrinciple Synopsis :This function Returns the string held in m_pszAuthorityPrinciple Type :Member Function Input parameters :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetAuthorityPrinciple() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetAuthorityPrinciple() { return m_pszAuthorityPrinciple; }
/*------------------------------------------------------------------------
Name :GetRecordPath Synopsis :This function Returns the string held in m_pszRecordPath Type :Member Function Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetRecordPath() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetRecordPath() { return m_pszRecordPath; } /*------------------------------------------------------------------------
Name :GetPrivileges Synopsis :This function Returns BOOL value held in m_bPrivileges Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetPrivileges() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetPrivileges() { return m_bPrivileges; } /*------------------------------------------------------------------------
Name :GetImpersonationLevel Synopsis :This function Returns impersonation level held in m_ImpLevel Type :Member Function Input parameter :None Output parameters :None Return Type :LONG Global Variables :None Calling Syntax :GetImpersonationLevel() Notes :None ------------------------------------------------------------------------*/ LONG CGlobalSwitches::GetImpersonationLevel() { return m_ImpLevel; } /*------------------------------------------------------------------------
Name :GetAuthenticationLevel Synopsis :This function Returns authentication level held in m_AuthLevel Type :Member Function Input parameter :None Output parameters :None Return Type :LONG Global Variables :None Calling Syntax :GetAuthenticationLevel() Notes :None ------------------------------------------------------------------------*/ LONG CGlobalSwitches::GetAuthenticationLevel() { return m_AuthLevel; } /*------------------------------------------------------------------------
Name :GetTraceStatus Synopsis :This function Returns trace status held in m_bTrace Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetTraceStatus() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetTraceStatus() { return m_bTrace; } /*------------------------------------------------------------------------
Name :GetInteractiveStatus Synopsis :This function Returns interactive status held in m_bInteractive Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetInteractiveStatus() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetInteractiveStatus() { return m_bInteractive; } /*------------------------------------------------------------------------
Name :GetHelpFlag Synopsis :This function Returns help flag held in m_bHelp Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetHelpFlag() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetHelpFlag() { return m_bHelp; } /*------------------------------------------------------------------------
Name :GetHelpOption Synopsis :This function Returns help option held in m_bHelpOption Type :Member Function Input parameter :None Output parameters :None Return Type :HELPOPTION Global Variables :None Calling Syntax :GetHelpOption() Notes :None ------------------------------------------------------------------------*/ HELPOPTION CGlobalSwitches::GetHelpOption() { return m_HelpOption; }
/*------------------------------------------------------------------------
Name :GetRoleFlag Synopsis :This function returns the role flag value Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL True - /role changed recently. False - no change in role till last command Global Variables :None Calling Syntax :GetRoleFlag() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetRoleFlag() { return m_bRoleFlag; } /*-------------------------------------------------------------------------
Name :SetNameSpaceFlag Synopsis :This function sets the NameSpace flag value Type :Member Function Input parameter :BOOL bNSFlag Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetNameSpaceFlag(bNSFlag) Notes :None
-------------------------------------------------------------------------*/ void CGlobalSwitches::SetNameSpaceFlag(BOOL bNSFlag) { m_bNSFlag = bNSFlag; }
/*-------------------------------------------------------------------------
Name :SetRoleFlag Synopsis :This function sets the Role flag value Type :Member Function Input parameter :BOOL bRoleFlag Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetRoleFlag(bRoleFlag) Notes :None
-------------------------------------------------------------------------*/ void CGlobalSwitches::SetRoleFlag(BOOL bRoleFlag) { m_bRoleFlag = bRoleFlag; }
/*-------------------------------------------------------------------------
Name :SetLocaleFlag Synopsis :This function sets the Locale flag value Type :Member Function Input parameter :BOOL bLocaleFlag Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetLocaleFlag(bLocaleFlag) Notes :None
-------------------------------------------------------------------------*/ void CGlobalSwitches::SetLocaleFlag(BOOL bLocaleFlag) { m_bLocaleFlag = bLocaleFlag; }
/*------------------------------------------------------------------------
Name :GetNamespaceFlag Synopsis :This function returns the namespace flag value Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL True - /namespace changed recently. False - no change in namespace till last command Global Variables :None Calling Syntax :GetRoleFlag() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetNameSpaceFlag() { return m_bNSFlag; }
/*------------------------------------------------------------------------
Name :GetRPChangeStatus Synopsis :This function returns the recordpath flag value Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL True - recordpath changed recently. False - no change in recordpath till last command Global Variables :None Calling Syntax :GetRPChangeStatus() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetRPChangeStatus() { return m_bRPChange; }
/*-------------------------------------------------------------------------
Name :SetRPChangeStatus Synopsis :This function sets the recordpath flag value Type :Member Function Input parameter :BOOL bStatus Output parameters :None Return Type :None Global Variables :None Calling Syntax :SetRPChangeStatus(bStatus) Notes :None
-------------------------------------------------------------------------*/ void CGlobalSwitches::SetRPChangeStatus(BOOL bStatus) { m_bRPChange = bStatus; }
/*------------------------------------------------------------------------
Name :GetLocaleFlag Synopsis :This function returns the Locale flag value Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL True - /Locale changed recently. False - no change in Locale till last command Global Variables :None Calling Syntax :GetLocaleFlag() Notes :None ------------------------------------------------------------------------*/
BOOL CGlobalSwitches::GetLocaleFlag() { return m_bLocaleFlag; }
/*------------------------------------------------------------------------
Name :SetNode Synopsis :This function Assigns the node passed in parameter to m_pszNode Type :Member Function Input parameters : pszNode -String type,contains Node option specified in the command Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetNode(pszNode) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetNode(_TCHAR* pszNode) { BOOL bResult = TRUE; SAFEDELETE(m_pszNode); if(pszNode) { if (!CompareTokens(pszNode, CLI_TOKEN_NULL)) { m_pszNode = new _TCHAR [lstrlen(pszNode)+1]; if (m_pszNode) { lstrcpy(m_pszNode, pszNode); m_uConnInfoFlag |= NODE; } else bResult = FALSE; } else // "." specifies current node
{ m_pszNode = new _TCHAR [lstrlen(m_pszNodeName)+1]; if (m_pszNode) { lstrcpy(m_pszNode, m_pszNodeName); m_uConnInfoFlag &= ~NODE; } else bResult = FALSE; } } return bResult; }
/*------------------------------------------------------------------------
Name :GetNode Synopsis :This function Returns the string held in m_pszNode Type :Member Function Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetNode() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetNode() { return m_pszNode; }
/*------------------------------------------------------------------------
Name :ClearNodesList Synopsis :Clears the nodes list Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :ClearNodesList() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::ClearNodesList() { BOOL bRet = TRUE; CleanUpCharVector(m_cvNodesList); if (!AddToNodesList(CLI_TOKEN_NULL)) bRet = FALSE; return bRet; }
/*------------------------------------------------------------------------
Name :SetAskForPassFlag Synopsis :This function sets the askforpassword flag Type :Member Function Input parameter :bFlag Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetAskForPassFlag(bFlag) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetAskForPassFlag(BOOL bFlag) { m_bAskForPassFlag = bFlag; }
/*------------------------------------------------------------------------
Name :GetAskForPassFlag Synopsis :This function checks and returns TRUE if the user has to be prompted for the password Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetAskForPassFlag() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetAskForPassFlag() { return m_bAskForPassFlag; } /*------------------------------------------------------------------------
Name :GetGetPrivilegesTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_bPrivilges flag Type :Member Function Input parameter :None Output parameters : bstrPriv - privileges status string Return Type :None Global Variables :None Calling Syntax :GetPrivilegesTextDesc() Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetPrivilegesTextDesc(_bstr_t& bstrPriv) { try { if (m_bPrivileges) bstrPriv = _bstr_t(CLI_TOKEN_ENABLE); else bstrPriv = _bstr_t(CLI_TOKEN_DISABLE); } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :GetTraceTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_bTrace flag Type :Member Function Input parameter :None Output parameters : bstrTrace - trace status string Return Type :None Global Variables :None Calling Syntax :GetTraceTextDesc(bstrTrace) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetTraceTextDesc(_bstr_t& bstrTrace) { try { if (m_bTrace) bstrTrace = CLI_TOKEN_ON; else bstrTrace = CLI_TOKEN_OFF; } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :GetInteractiveTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_bInteractive flag Type :Member Function Input parameter :None Output parameters : bstrInteractive - interactive status string Return Type :void Global Variables :None Calling Syntax :GetInteractiveTextDesc(bstrInteractive) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetInteractiveTextDesc(_bstr_t& bstrInteractive) { try { if (m_bInteractive) bstrInteractive = CLI_TOKEN_ON; else bstrInteractive = CLI_TOKEN_OFF; } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :GetFailFastTextDesc Synopsis :Return the string equivalent of the boolean value contained in m_bFailFast flag. Type :Member Function Input parameter :None Output parameters : bstrFailFast - FailFast status string Return Type :void Global Variables :None Calling Syntax :GetFailFastTextDesc(bstrFailFast) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetFailFastTextDesc(_bstr_t& bstrFailFast) { try { if (m_bFailFast) bstrFailFast = CLI_TOKEN_ON; else bstrFailFast = CLI_TOKEN_OFF; } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :GetImpLevelTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_ImpLevel flag Type :Member Function Input parameter :None Output parameters : bstrImpLevel - impersonation level description Return Type :None Global Variables :None Calling Syntax :GetImpLevelTextDesc(bstrImpLevel) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetImpLevelTextDesc(_bstr_t& bstrImpLevel) { try { switch(m_ImpLevel) { case 1: bstrImpLevel = L"ANONYMOUS"; break; case 2: bstrImpLevel = L"IDENTIFY"; break; case 3: bstrImpLevel = L"IMPERSONATE"; break; case 4: bstrImpLevel = L"DELEGATE"; break; default: bstrImpLevel = TOKEN_NA; break; } } catch(_com_error& e) { _com_issue_error(e.Error()); } } /*------------------------------------------------------------------------
Name :GetAuthLevelTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_AuthLevel flag Type :Member Function Input parameter :None Output parameters : bstrAuthLevel - authentication level description Return Type :None Global Variables :None Calling Syntax :GetAuthLevelTextDesc(bstrAuthLevel) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetAuthLevelTextDesc(_bstr_t& bstrAuthLevel) { try { switch(m_AuthLevel) { case 0: bstrAuthLevel = L"DEFAULT"; break; case 1: bstrAuthLevel = L"NONE"; break; case 2: bstrAuthLevel = L"CONNECT"; break; case 3: bstrAuthLevel = L"CALL"; break; case 4: bstrAuthLevel = L"PKT"; break; case 5: bstrAuthLevel = L"PKTINTEGRITY"; break; case 6: bstrAuthLevel = L"PKTPRIVACY"; break; default: bstrAuthLevel = TOKEN_NA; break; } } catch(_com_error& e) { _com_issue_error(e.Error()); } } /*------------------------------------------------------------------------
Name :GetNodeString Synopsis :This function Returns the ',' separated node string of the available nodes Type :Member Function Input parameter :None Output parameters : bstrNString - node string (comma separated) Return Type :void Global Variables :None Calling Syntax :GetNodeString(bstrNSString) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetNodeString(_bstr_t& bstrNString) { try { CHARVECTOR::iterator theIterator; if (m_cvNodesList.size() > 1) { theIterator = m_cvNodesList.begin(); // Move to next node
theIterator++; while (theIterator != m_cvNodesList.end()) { bstrNString += *theIterator; theIterator++; if (theIterator != m_cvNodesList.end()) bstrNString += L", "; } } else { bstrNString = m_pszNode; } } catch(_com_error& e) { _com_issue_error(e.Error()); } } /*------------------------------------------------------------------------
Name :GetRecordPathDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_pszRecordPath flag Type :Member Function Input parameter :None Output parameters : bstrRPDesc - record path description Return Type :void Global Variables :None Calling Syntax :GetRecordPathDesc(bstrRPDesc) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetRecordPathDesc(_bstr_t& bstrRPDesc) { try { if (m_pszRecordPath) { bstrRPDesc = m_pszRecordPath; } else bstrRPDesc = TOKEN_NA; } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :SetFailFast Synopsis :This function sets the m_bFailFast flag. Type :Member Function Input parameter : bFlag - Boolean variable to set flag. Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetFailFast(bFlag) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetFailFast(BOOL bFlag) { m_bFailFast = bFlag; }
/*------------------------------------------------------------------------
Name :GetFailFast Synopsis :This function returns the m_bFailFast flag. Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetFailFast() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetFailFast() { return m_bFailFast; }
/*------------------------------------------------------------------------
Name :SetFileType Synopsis :This function sets the type of file it appends to Type :Member Function Input parameter :aftOpt - type Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetAppendFileType(aftOpt) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetFileType ( FILETYPE eftOpt ) { m_eftFileType = eftOpt ; }
/*------------------------------------------------------------------------
Name :GetFileType Synopsis :This function returns the append option. Type :Member Function Input parameter :None Output parameters :None Return Type :FILETYPE Global Variables :None Calling Syntax :GetAppendFileType() Notes :None ------------------------------------------------------------------------*/ FILETYPE CGlobalSwitches::GetFileType ( ) { return m_eftFileType ; }
/*------------------------------------------------------------------------
Name :SetOutputOption Synopsis :This function sets the ouput option. Type :Member Function Input parameter :opoOutputOpt - Specifies the ouput option. Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetOutputOption(opoOutputOpt) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetOutputOrAppendOption(OUTPUTSPEC opsOpt, BOOL bIsOutput) { if ( bIsOutput == TRUE ) m_opsOutputOpt = opsOpt; else m_opsAppendOpt = opsOpt; }
/*------------------------------------------------------------------------
Name :GetOutputOption Synopsis :This function returns the ouput option. Type :Member Function Input parameter :None Output parameters :None Return Type :OUTPUTOPT Global Variables :None Calling Syntax :GetOutputOption() Notes :None ------------------------------------------------------------------------*/ OUTPUTSPEC CGlobalSwitches::GetOutputOrAppendOption(BOOL bIsOutput) { OUTPUTSPEC opsOpt; if ( bIsOutput == TRUE ) opsOpt = m_opsOutputOpt; else opsOpt = m_opsAppendOpt;
return opsOpt; }
/*------------------------------------------------------------------------
Name :SetOutputOrAppendFileName Synopsis :This function Set Output or Append File Name, bOutput = TRUE for Output FALSE for Append. Type :Member Function Input parameter :pszFileName - output or append file name bOutput - output option Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetOutputOrAppendFileName(pszFileName,bOutput) Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetOutputOrAppendFileName(const _TCHAR* pszFileName, BOOL bOutput) { BOOL bResult = TRUE; if ( bOutput == TRUE ) { SAFEDELETE(m_pszOutputFileName) } else { SAFEDELETE(m_pszAppendFileName) }
if ( pszFileName != NULL ) { _TCHAR* pszTempFileName; pszTempFileName = new _TCHAR [lstrlen(pszFileName)+1]; if ( pszTempFileName == NULL ) bResult = FALSE; else { if ( bOutput == TRUE ) { m_pszOutputFileName = pszTempFileName; lstrcpy(m_pszOutputFileName, pszFileName); } else { m_pszAppendFileName = pszTempFileName; lstrcpy(m_pszAppendFileName, pszFileName); } } }
return bResult; }
/*------------------------------------------------------------------------
Name :GetOutputOrAppendFileName Synopsis :This function returns the output or append file name depending upon the output option - bOutput. Input parameter :bOutput - output option Output parameters :None Return Type :_TCHAR Global Variables :None Calling Syntax :GetOutputOrAppendFileName(BOOL bOutput) Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetOutputOrAppendFileName(BOOL bOutput) { _TCHAR* pszTempFile;
if ( bOutput == TRUE ) pszTempFile = m_pszOutputFileName; else pszTempFile = m_pszAppendFileName;
return pszTempFile; }
/*------------------------------------------------------------------------
Name :GetOutputOptTextDesc Synopsis :This function returns the string equivalent of the OUTPUTOPT value contained in m_opoOutputOpt member. Input parameter :None Output parameters :bstrOutputOpt - string equivalent of the OUTPUTOPT value Return Type :void Global Variables :None Calling Syntax :GetOutputOptTextDesc(bstrOutputOpt) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetOutputOrAppendTextDesc(_bstr_t& bstrOutputOpt, BOOL bIsOutput) { try { if ( bIsOutput == TRUE ) { if ( m_opsOutputOpt == STDOUT ) bstrOutputOpt = CLI_TOKEN_STDOUT; else if ( m_opsOutputOpt == CLIPBOARD ) bstrOutputOpt = CLI_TOKEN_CLIPBOARD; else bstrOutputOpt = _bstr_t(m_pszOutputFileName); } else { if ( m_opsAppendOpt == STDOUT ) bstrOutputOpt = CLI_TOKEN_STDOUT; else if ( m_opsAppendOpt == CLIPBOARD ) bstrOutputOpt = CLI_TOKEN_CLIPBOARD; else bstrOutputOpt = _bstr_t(m_pszAppendFileName); } } catch(_com_error& e) { _com_issue_error(e.Error()); } }
/*------------------------------------------------------------------------
Name :SetOutputOrAppendFilePointer Synopsis :This function Sets output or append file pointer, bOutput == TRUE for Output bOutput == FALSE or Append. Input parameter :fpFile - pointer to output or append bOutput - ouput option Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetOutputOrAppendFilePointer(fpFile, bOutput) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetOutputOrAppendFilePointer(FILE* fpFile, BOOL bOutput) { if ( bOutput == TRUE ) m_fpOutFile = fpFile; else m_fpAppendFile = fpFile; } /*------------------------------------------------------------------------
Name :GetOutputOrAppendFilePointer Synopsis :This function returns the ouput or append file pointer. bOutput == TRUE for Output bOutput == FALSE or Append. Input parameter :bOutput - ouput option Output parameters :None Return Type :FILE* Global Variables :None Calling Syntax :GetOutputOrAppendFilePointer(bOutput) Notes :None ------------------------------------------------------------------------*/ FILE* CGlobalSwitches::GetOutputOrAppendFilePointer(BOOL bOutput) { FILE* fpTemp; if ( bOutput == TRUE ) fpTemp = m_fpOutFile; else fpTemp = m_fpAppendFile; return fpTemp; }
/*------------------------------------------------------------------------
Name :GetSequenceNumber Synopsis :This function returns the sequence number of the command logged . Input parameter :None Output parameters :None Return Type :WMICLIINT Global Variables :None Calling Syntax :GetSequenceNumber() Notes :None ------------------------------------------------------------------------*/ WMICLIINT CGlobalSwitches::GetSequenceNumber() { return m_nSeqNum; }
/*------------------------------------------------------------------------
Name :GetLoggedonUser Synopsis :This function returns the current logged on user. Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetLoggedonUser() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetLoggedonUser() { return m_pszLoggedOnUser; }
/*------------------------------------------------------------------------
Name :GetMgmtStationName Synopsis :This function returns the management station that issued the command. Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetMgmtStationName() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetMgmtStationName() { return m_pszNodeName; }
/*------------------------------------------------------------------------
Name :GetStartTime Synopsis :This function returns the time at which the command execution started. Input parameter :None Output parameters :None Return Type :_TCHAR* Global Variables :None Calling Syntax :GetStartTime() Notes :None ------------------------------------------------------------------------*/ _TCHAR* CGlobalSwitches::GetStartTime() { return m_pszStartTime; }
/*------------------------------------------------------------------------
Name :SetStartTime Synopsis :This function sets the time at which the command execution started. Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :SetStartTime() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::SetStartTime() { BOOL bResult = TRUE; if (m_pszStartTime == NULL) { m_pszStartTime = new _TCHAR[BUFFER64]; } if (m_pszStartTime) { SYSTEMTIME stSysTime; GetLocalTime(&stSysTime);
_stprintf(m_pszStartTime, L"%.2d-%.2d-%.4dT%.2d:%.2d:%.2d", stSysTime.wMonth, stSysTime.wDay, stSysTime.wYear, stSysTime.wHour, stSysTime.wMinute, stSysTime.wSecond);
// Increment the command counter.
m_nSeqNum++; } else bResult = FALSE; return bResult; } /*------------------------------------------------------------------------
Name :SetAggregateFlag Synopsis :This function sets the Aggregation flag Type :Member Function Input parameter :None Output parameters :None Return Type :void Global Variables :None Calling Syntax :SetAggregateFlag(BOOL) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::SetAggregateFlag(BOOL bAggregateFlag) { m_bAggregateFlag = bAggregateFlag; } /*------------------------------------------------------------------------
Name :GetAggreagateFlag Synopsis :This function gets the Aggregation flag Type :Member Function Input parameter :None Output parameters :None Return Type :BOOL Global Variables :None Calling Syntax :GetAggregateFlag() Notes :None ------------------------------------------------------------------------*/ BOOL CGlobalSwitches::GetAggregateFlag() { return m_bAggregateFlag; }
/*------------------------------------------------------------------------
Name :GetAggregateTextDesc Synopsis :This function checks and Returns the string equivalent of the boolean value contained in m_bAggregateFlag flag Type :Member Function Input parameter :None Output parameters : bstrAggregate - aggreaget status string Return Type :None Global Variables :None Calling Syntax :GetAggregateTextDesc(bstrAggregate) Notes :None ------------------------------------------------------------------------*/ void CGlobalSwitches::GetAggregateTextDesc(_bstr_t& bstrAggregate) { try { if (m_bAggregateFlag) bstrAggregate = CLI_TOKEN_ON; else bstrAggregate = CLI_TOKEN_OFF; } catch(_com_error& e) { _com_issue_error(e.Error()); } }
|