515 lines
15 KiB
C
515 lines
15 KiB
C
#ifndef __BOOTINI_H
|
|
#define __BOOTINI_H
|
|
#endif // __BOOTINI_H
|
|
|
|
|
|
|
|
|
|
//
|
|
// constants / defines / enumerations
|
|
//
|
|
|
|
#define ADD_OFFSET(_p,_o) (PVOID)((PUCHAR)(_p) + (_p)->_o)
|
|
|
|
// Error constants
|
|
#define ERROR_CONNECT_SERVERNOTFOUND 0xFFFF0001
|
|
#define ERROR_CONNECT_LOGINFAIL 0xFFFF0002
|
|
#define ERROR_CONNECT_UNKNOWNERROR 0xFFFF0003
|
|
#define ERROR_FMT_INVALID_OPTIONVALUE _T( "ERROR: Invalid value specified for the option '%s'.\n" )
|
|
#define ERROR_FMT_INVALIDOSENTRY _T( "ERROR: Invalid OS entry line number specified.\nThere are only '%s' OS keys.\n" )
|
|
|
|
// Exit values
|
|
#define EXIT_SUCCESS 0
|
|
#define EXIT_FAILURE 1
|
|
#define MALLOC_FAILURE -1
|
|
|
|
// Null
|
|
#define NULL_STRING _T( "\0" )
|
|
#define NULL_CHAR _T( '\0' )
|
|
|
|
#define STRING20 20
|
|
#define STRING3 3
|
|
|
|
#define ON_OFF _T("ON|OFF")
|
|
|
|
#define MAX_CMD_LENGTH 4096
|
|
|
|
// Options
|
|
#define CMDOPTION_QUERY _T( "query" )
|
|
#define CMDOPTION_COPY _T( "copy" )
|
|
#define CMDOPTION_DELETE _T( "delete" )
|
|
#define CMDOPTION_USAGE _T( "?|h" )
|
|
#define CMDOPTION_DEFAULT _T( "" )
|
|
#define CMDOPTION_RAW _T("raw")
|
|
#define CMDOPTION_DEFAULTOS _T("default")
|
|
#define CMDOPTION_TIMEOUT _T("timeout")
|
|
#define CMDOPTION_DEBUG _T("debug")
|
|
#define CMDOPTION_EMS _T("ems")
|
|
#define CMDOPTION_DBG1394 _T("dbg1394")
|
|
#define CMDOPTION_ADDSW _T("addsw")
|
|
#define CMDOPTION_RMSW _T("rmsw")
|
|
#define CMDOPTION_APPEND _T("a")
|
|
#define CMDOPTION_MIRROR _T("mirror")
|
|
#define CMDOPTION_CHANNEL _T("ch")
|
|
#define CMDOPTION_LIST _T("list")
|
|
#define CMDOPTION_ADD _T("add")
|
|
#define CMDOPTION_UPDATE _T("update")
|
|
|
|
|
|
|
|
#define CMDOTHEROPTIONS _T( "s|server|u|user|p|password|description|descrip|defaultos|basevideo|baudrate|debugport|maxmem|nodebug|crashdebug|noserialmice|sos|redirect" )
|
|
|
|
#define BAUD_RATE_VALUES_EMS _T("9600|19200|57600|115200")
|
|
#define BAUD_RATE_VALUES_DEBUG _T("9600|19200|38400|57600|115200")
|
|
|
|
#define COM_PORT_RANGE _T("COM1|COM2|COM3|COM4")
|
|
|
|
|
|
#define EMS_PORT_VALUES _T("COM1|COM2|COM3|COM4|BIOSSET")
|
|
|
|
#define CMDOPTION_DEBUG_VALUES _T("ON|OFF|EDIT")
|
|
#define CMDOPTION_EMS_VALUES _T("ON|OFF|EDIT")
|
|
|
|
#define CMDOPTION_EMS_VALUES_IA64 _T("ON|OFF")
|
|
|
|
#define TOKEN_ASTERIX _T("*")
|
|
|
|
#define CMDRAWSTRING _T("raw")
|
|
|
|
#define DEBUGPORT_1394 _T("/debugport=1394")
|
|
|
|
#define DEBUGPORT _T("/debugport=")
|
|
|
|
#define TOKEN_CHANNEL _T("/channel")
|
|
|
|
#define TOKEN_BACKSLASH4 _T("\\\\")
|
|
#define TOKEN_BACKSLASH6 _T("\\\\\\")
|
|
|
|
|
|
// Other switches or sub-options
|
|
#define SWITCH_SERVER _T( "s" )
|
|
#define SWITCH_USER _T( "u" )
|
|
#define SWITCH_PASSWORD _T( "p" )
|
|
#define SWITCH_TIMEOUT _T( "to" )
|
|
#define SWITCH_DEFAULTOS _T( "do" )
|
|
#define SWITCH_BASEVIDEO _T( "bv" )
|
|
#define SWITCH_DEBUG _T( "dbg" )
|
|
#define SWITCH_BAUDRATE _T( "br" )
|
|
#define SWITCH_DEBUGPORT _T( "dp" )
|
|
#define SWITCH_MAXMEM _T( "mm" )
|
|
#define SWITCH_NODEBUG _T( "nd" )
|
|
#define SWITCH_CRASHDEBUG _T( "cd" )
|
|
#define SWITCH_NOSERIALMICE _T( "ns" )
|
|
#define SWITCH_SOS _T( "so" )
|
|
#define SWITCH_REDIRECT _T( "re" )
|
|
#define SWITCH_DESCRIPTION _T( "d" )
|
|
#define SWITCH_RAWSTRING _T("raw")
|
|
#define TIMEOUT_SWITCH _T("timeout")
|
|
#define SWITCH_PORT _T("port")
|
|
#define SWITCH_BAUD _T("baud")
|
|
#define SWITCH_NOGUIBOOT _T("ng")
|
|
|
|
|
|
#define SWITCH_ID _T("id")
|
|
#define SWITCH_EDIT _T("edit")
|
|
|
|
// Strings
|
|
#define OFF_STRING _T( "OFF" )
|
|
#define ON_STRING _T( "ON" )
|
|
#define COM_STRING _T( "COM" )
|
|
#define INIPATH _T( "c:\\boottest.ini" )
|
|
#define OPERATINGSYSTEMSECTION _T( "operating systems" )
|
|
#define BOOTLOADERSECTION _T( "boot loader" )
|
|
|
|
#define COL_FRIENDLYNAME GetResString(IDS_COL_FRIENDLYNAME)
|
|
#define COL_BOOTID GetResString(IDS_COL_BOOTID)
|
|
#define COL_BOOTOPTION GetResString(IDS_COL_COL_BOOTOPTION)
|
|
#define COL_ARCPATH GetResString(IDS_COL_ARCPATH)
|
|
#define OS_HEADER GetResString(IDS_OS_HEADER)
|
|
#define DASHES_OS GetResString(IDS_DASHES_OS)
|
|
#define BOOT_HEADER GetResString(IDS_BOOT_HEADER)
|
|
#define DASHES_BOOTOS GetResString(IDS_DASHES_BOOTOS)
|
|
#define TIMEOUT_VAL GetResString(IDS_TIMEOUT)
|
|
#define DEFAULT_OS GetResString(IDS_DEFAULT_OS)
|
|
#define DEFAULT_ARC GetResString(IDS_DEFAULT_ARC)
|
|
|
|
#define COL_FRIENDLYNAME_WIDTH AsLong(GetResString(IDS_COL_FRIENDLYNAME_SIZE),10)
|
|
#define COL_BOOTID_WIDTH AsLong(GetResString(IDS_COL_BOOTID_SIZE),10)
|
|
#define COL_BOOTOPTION_WIDTH AsLong(GetResString(IDS_COL_BOOTOPTION_SIZE),10)
|
|
#define COL_ARC_WIDTH AsLong(GetResString(IDS_COL_ARCPATH_SIZE),10)
|
|
|
|
#define TIMEOUT_WIDTH AsLong(GetResString(IDS_TIMEOUT_SIZE),10)
|
|
#define DEFAULT_ARC_WIDTH AsLong(GetResString(IDS_DEFAULT_ARC_SIZE),10)
|
|
|
|
|
|
#define PATH_BOOTINI _T("c:\\boot.ini")
|
|
#define KEY_DEFAULT _T("default")
|
|
#define ONOFFVALUES _T(" on off ")
|
|
#define KEY_REDIRECT _T("redirect")
|
|
|
|
|
|
|
|
|
|
// Typedefs of standard string sizes
|
|
typedef TCHAR STRING100 [ 100 ];
|
|
typedef TCHAR STRING256 [ 256 ];
|
|
|
|
#define ID_DEL_HELP_BEGIN IDS_DELETE_HELP_BEGIN
|
|
#define ID_DEL_HELP_END IDS_DELETE_HELP_END
|
|
|
|
#define ID_CHANGE_HELP_BEGIN IDS_CHANGE_HELP_BEGIN
|
|
#define ID_CHANGE_HELP_END IDS_CHANGE_HELP_END
|
|
|
|
#define ID_QUERY_HELP_BEGIN IDS_QUERY_HELP_BEGIN
|
|
#define ID_QUERY_HELP_END IDS_QUERY_HELP_END
|
|
|
|
#define ID_COPY_HELP_BEGIN IDS_COPY_HELP_BEGIN
|
|
#define ID_COPY_HELP_END IDS_COPY_HELP_END
|
|
|
|
#define ID_MAIN_HELP_BEGIN IDS_MAIN_HELP_BEGIN
|
|
#define ID_MAIN_HELP_END IDS_MAIN_HELP_END
|
|
|
|
|
|
#define RAW_HELP_BEGIN IDS_RAW_HELP_BEGIN
|
|
#define RAW_HELP_END IDS_RAW_HELP_END
|
|
|
|
#define TIMEOUT_HELP_BEGIN IDS_TIMOUTHELP_BEGIN
|
|
#define TIMEOUT_HELP_END IDS_TIMOUTHELP_END
|
|
|
|
#define DEFAULT_BEGIN IDS_DEFAULT_BEGIN
|
|
#define DEFAULT_END IDS_DEFAULT_END
|
|
|
|
#define ID_MAIN_HELP_BEGIN1 IDS_MAIN_HELP_BEGIN1
|
|
#define ID_MAIN_HELP_END1 IDS_MAIN_HELP_END1
|
|
|
|
#define ID_MAIN_HELP_IA64_BEGIN IDS_MAIN_HELP_IA64_BEGIN
|
|
#define ID_MAIN_HELP_IA64_END IDS_MAIN_HELP_IA64_END
|
|
#define RAW_HELP_IA64_BEGIN IDS_RAW_HELP_IA64_BEGIN
|
|
#define RAW_HELP_IA64_END IDS_RAW_HELP_IA64_END
|
|
#define ID_QUERY_HELP64_BEGIN IDS_QUERY_HELP64_BEGIN
|
|
#define ID_QUERY_HELP64_END IDS_QUERY_HELP64_END
|
|
#define ID_DEL_HELP_IA64_BEGIN IDS_DELETE_HELP_IA64_BEGIN
|
|
#define ID_DEL_HELP_IA64_END IDS_DELETE_HELP_IA64_END
|
|
#define ID_COPY_HELP_IA64_BEGIN IDS_COPY_HELP_IA64_BEGIN
|
|
#define ID_COPY_HELP_IA64_END IDS_COPY_HELP_IA64_END
|
|
#define TIMEOUT_HELP_IA64_BEGIN IDS_TIMOUTHELP_IA64_BEGIN
|
|
#define TIMEOUT_HELP_IA64_END IDS_TIMOUTHELP_IA64_END
|
|
#define DEFAULT_IA64_BEGIN IDS_DEFAULT_IA64_BEGIN
|
|
#define DEFAULT_IA64_END IDS_DEFAULT_IA64_END
|
|
|
|
|
|
|
|
#define SAFEFREE(pVal) \
|
|
if(pVal != NULL) \
|
|
{ \
|
|
free(pVal); \
|
|
pVal = NULL ;\
|
|
}
|
|
|
|
#define SAFECLOSE(stream) \
|
|
{ \
|
|
if(stream != NULL) \
|
|
fclose(stream);\
|
|
stream = NULL ; \
|
|
}
|
|
|
|
|
|
|
|
// function prototypes
|
|
|
|
// Main functions
|
|
DWORD ChangeBootIniSettings(DWORD argc, LPCTSTR argv[]);
|
|
DWORD CopyBootIniSettings(DWORD argc, LPCTSTR argv[]);
|
|
DWORD DeleteBootIniSettings(DWORD argc, LPCTSTR argv[]);
|
|
DWORD QueryBootIniSettings(DWORD argc, LPCTSTR argv[]);
|
|
|
|
DWORD ChangeTimeOut(DWORD argc,LPCTSTR argv[]);
|
|
DWORD ChangeDefaultOs(DWORD argc,LPCTSTR argv[]);
|
|
|
|
|
|
// Function used to get all the keys of a specified section in
|
|
// the specified INI file
|
|
TARRAY getKeysOfINISection( LPTSTR szinifile, LPTSTR sziniSection );
|
|
|
|
// Function used to get all the key-value pairs of a specified section in
|
|
// the specified INI file
|
|
TARRAY getKeyValueOfINISection( LPTSTR szinifile, LPTSTR sziniSection );
|
|
|
|
// Function used to delete a key from a specifed section of the
|
|
// specified ini file
|
|
BOOL deleteKeyFromINISection( LPTSTR szkey, LPTSTR szinifile, LPTSTR sziniSection );
|
|
|
|
// Function used to build the INI string containing all the key-value pairs.
|
|
LPTSTR stringFromDynamicArray( TARRAY arrKeyValuePairs );
|
|
|
|
// Function used to remove a sub-string from a given string
|
|
VOID removeSubString( LPTSTR szString, LPCTSTR szSubString );
|
|
|
|
// Function used to connect to the specified server with the given credentials
|
|
// and return the file pointer of the boot.ini file
|
|
BOOL openConnection(LPTSTR server, LPTSTR user,
|
|
LPTSTR password, LPTSTR filepath,BOOL bNeedPwd,FILE *stream,PBOOL pbConnFlag);
|
|
|
|
VOID FormHeader1(BOOL bHeader,TCOLUMNS *ResultHeader);
|
|
|
|
// Exit function
|
|
VOID properExit( DWORD dwExitCode, LPTSTR szFilePath );
|
|
|
|
// Usage functions
|
|
VOID displayChangeUsage();
|
|
VOID displayDeleteUsage();
|
|
VOID displayQueryUsage();
|
|
VOID displayRawUsage_X86();
|
|
VOID displayRawUsage_IA64();
|
|
DWORD displayMainUsage_X86();
|
|
VOID displayMainUsage_IA64();
|
|
VOID displayChangeOSUsage_X86();
|
|
VOID displayDefaultEntryUsage_IA64();
|
|
VOID displayRmSwUsage_X86();
|
|
VOID displayAddSwUsage_X86();
|
|
|
|
VOID displayQueryUsage_IA64();
|
|
VOID displayQueryUsage_X86();
|
|
VOID displayCopyUsage_IA64();
|
|
VOID displayCopyUsage_X86();
|
|
VOID displayChangeUsage_IA64();
|
|
VOID displayChangeUsage_X86();
|
|
VOID displayDeleteUsage_IA64();
|
|
VOID displayDeleteUsage_X86();
|
|
VOID displayTimeOutUsage_IA64();
|
|
|
|
VOID displayTimeOutUsage_X86();
|
|
VOID displayEmsUsage_X86();
|
|
VOID displayDebugUsage_X86();
|
|
VOID displayDebugUsage_IA64();
|
|
VOID displayEmsUsage_IA64();
|
|
VOID displayRmSwUsage_IA64();
|
|
VOID displayAddSwUsage_IA64();
|
|
|
|
VOID displayDbg1394Usage_X86();
|
|
VOID displayDbg1394Usage_IA64();
|
|
VOID displayMirrorUsage_IA64() ;
|
|
|
|
// Function used to process the main options
|
|
|
|
DWORD preProcessOptions( DWORD argc, LPCTSTR argv[],
|
|
PBOOL pbUsage,
|
|
PBOOL pbCopy,
|
|
PBOOL pbQuery,
|
|
PBOOL pbDelete,
|
|
PBOOL pbRawString,
|
|
PBOOL pbDefault,
|
|
PBOOL pbTimeOut,
|
|
PBOOL pbDebug,
|
|
PBOOL pbEms,
|
|
PBOOL pbAddSw,
|
|
PBOOL pbRmSw,
|
|
PBOOL pbDbg1394,
|
|
PBOOL pbMirror
|
|
);
|
|
|
|
|
|
BOOL resetFileAttrib( LPTSTR szFilePath );
|
|
|
|
BOOL stringFromDynamicArray1( TARRAY arrKeyValuePairs ,LPTSTR szFinalStr );
|
|
|
|
BOOL EnumerateOsEntries(PBOOT_ENTRY_LIST *ntBootEntries,PULONG ulLength );
|
|
|
|
VOID FormHeader(BOOL bHeader,TCOLUMNS *ResultHeader,BOOL bVerbose);
|
|
|
|
DWORD AppendRawString( DWORD argc, LPCTSTR argv[] );
|
|
|
|
DWORD ProcessDebugSwitch( DWORD argc, LPCTSTR argv[] );
|
|
|
|
DWORD ProcessEmsSwitch( DWORD argc, LPCTSTR argv[] );
|
|
|
|
VOID GetComPortType(LPTSTR szString,LPTSTR szTemp );
|
|
|
|
VOID GetBaudRateVal(LPTSTR szString, LPTSTR szTemp);
|
|
|
|
DWORD getKeysOfSpecifiedINISection( LPTSTR sziniFile, LPTSTR sziniSection,LPCWSTR szKeyName ,LPTSTR szValue );
|
|
|
|
DWORD ValidateSwitches(PBOOT_ENTRY bootEntry, LPTSTR szNewFriendlyName ,LPTSTR szRawString);
|
|
|
|
DWORD ProcessAddSwSwitch( DWORD argc, LPCTSTR argv[] );
|
|
DWORD ProcessRmSwSwitch( DWORD argc, LPCTSTR argv[] );
|
|
|
|
DWORD GetSubString(LPTSTR szString,LPTSTR szPartString,LPTSTR szFullString);
|
|
|
|
DWORD ProcessDbg1394Switch( DWORD argc, LPCTSTR argv[] );
|
|
|
|
BOOL IsWin64(void) ;
|
|
|
|
DWORD GetCPUInfo(LPTSTR szComputerName);
|
|
DWORD CheckSystemType(LPTSTR szServer);
|
|
VOID SafeCloseConnection(LPTSTR szServer,BOOL bFlag) ;
|
|
|
|
|
|
#define ERROR_TAG GetResString(IDS_ERROR_TAG)
|
|
#define ERROR_LOAD_DLL GetResString(IDS_ERROR_LOAD)
|
|
#define ERROR_NO_NVRAM GetResString(IDS_ERROR_NO_NVRAM)
|
|
#define ERROR_UNEXPECTED GetResString(IDS_UNEXPECTED_ERROR)
|
|
#define ERROR_NO_PRIVILAGE GetResString(IDS_NO_PRIVILAGE)
|
|
#define DELETE_SUCCESS GetResString(IDS_DELETE_SUCCESS)
|
|
#define DELETE_FAILURE GetResString(IDS_DELETE_FAILURE)
|
|
|
|
|
|
#define IDENTIFIER_VALUE _T("Identifier")
|
|
#define SUBKEY _T("HARDWARE\\DESCRIPTION\\SYSTEM\\CENTRALPROCESSOR\\0")
|
|
|
|
#define IDENTIFIER_VALUE2 _T("SystemPartition")
|
|
#define IDENTIFIER_VALUE3 _T("OsLoaderPath")
|
|
|
|
|
|
#define X86_MACHINE _T("x86")
|
|
|
|
#define SYSTEM_64_BIT 2
|
|
#define SYSTEM_32_BIT 3
|
|
#define ERROR_RETREIVE_REGISTRY 4
|
|
|
|
|
|
|
|
#define NODEBUG_SWITCH _T("/nodebug")
|
|
#define BASEVIDEO_SWITCH _T("/basevideo")
|
|
#define DEBUG_SWITCH _T("/debug")
|
|
#define DEBUG_SWITCH1 _T("/DEBUG")
|
|
|
|
#define COM_SWITCH _T("COM")
|
|
#define CRASHDEBUG_SWITCH _T("/crashdebug")
|
|
#define SOS_SWITCH _T("/sos")
|
|
#define REDIRECT_SWITCH _T("/redirect")
|
|
#define OS_FIELD _T( "operating systems" )
|
|
|
|
#define SOS_VALUE _T("/sos")
|
|
#define NOGUI_VALUE _T("/noguiboot")
|
|
#define BASEVIDEO_VALUE _T("/basevideo")
|
|
|
|
#define MAXMEM_VALUE _T("/MAXMEM")
|
|
#define MAXMEM_VALUE1 _T("/maxmem")
|
|
|
|
#define NTDLL_FIELD _T("\\ntdll.dll")
|
|
|
|
#define TOKEN_EQUAL _T("=")
|
|
#define TOKEN_BACKSLASH _T("\"")
|
|
#define TOKEN_BRACKET _T('[')
|
|
#define TOKEN_DELIM _T('\0')
|
|
#define TOKEN_EMPTYSPACE _T(" ")
|
|
|
|
#define TOKEN_SINGLEQUOTE _T("\"")
|
|
|
|
#define TOKEN_BACKSLASH4 _T("\\\\")
|
|
#define TOKEN_BACKSLASH2 _T("\\")
|
|
#define TOKEN_FWDSLASH1 _T("/")
|
|
#define TOKEN_C_DOLLAR _T("C$")
|
|
#define TOKEN_STAR _T("*")
|
|
|
|
#define TOKEN_BOOTINI_PATH _T("boot.ini")
|
|
#define TOKEN_DOLLAR _T('$')
|
|
#define TOKEN_PATH _T("c:\\boot.ini")
|
|
#define TOKEN_COLON _T(':')
|
|
#define TOKEN_COLONSYMBOL _T(":")
|
|
|
|
#define TOKEN_50SPACES _T(" ")
|
|
#define TOKEN_1394 _T("1394")
|
|
|
|
#define TOKEN_NA _T("N/A")
|
|
#define TOKEN_NEXTLINE _T("\n")
|
|
#define MAX_COLUMNS 4
|
|
|
|
#define TIMEOUT_MAX 999
|
|
#define TIMEOUT_MIN 0
|
|
|
|
#define READ_MODE _T("r")
|
|
#define READWRITE_MODE _T("r+")
|
|
|
|
#define BOOT_COLUMNS 2
|
|
|
|
#define COL0 0
|
|
#define COL1 1
|
|
#define COL2 2
|
|
#define COL3 3
|
|
|
|
#define TABLE_FORMAT GetResString(IDS_FORMAT_TABLE)
|
|
#define LIST_FORMAT GetResString(IDS_FORMAT_LIST)
|
|
#define CSV_FORMAT GetResString(IDS_FORMAT_CSV)
|
|
|
|
#define MAX_INI_LENGTH 2500
|
|
#define MAX_STRING_LENGTH1 5000
|
|
|
|
|
|
#define ON_OFF_EDIT _T("ON|OFF|EDIT")
|
|
|
|
#define TOKEN_DEBUGPORT _T("/debugport")
|
|
|
|
|
|
#define PORT_COM1 _T("/debugport=com1")
|
|
#define PORT_COM2 _T("/debugport=com2")
|
|
#define PORT_COM3 _T("/debugport=com3")
|
|
#define PORT_COM4 _T("/debugport=com4")
|
|
#define PORT_1394 _T("/debugport=1394")
|
|
|
|
|
|
#define BAUD_VAL6 _T("/baudrate=19200")
|
|
#define BAUD_VAL7 _T("/baudrate=38400")
|
|
#define BAUD_VAL8 _T("/baudrate=57600")
|
|
#define BAUD_VAL9 _T("/baudrate=115200")
|
|
#define BAUD_VAL10 _T("/baudrate=9600")
|
|
|
|
#define BAUD_RATE _T("/baudrate")
|
|
#define REDIRECT _T("/redirect")
|
|
|
|
#define VALUE_OFF _T("off")
|
|
#define VALUE_ON _T("on")
|
|
|
|
#define EDIT_STRING _T("EDIT")
|
|
|
|
#define KEY_BAUDRATE _T("redirectbaudrate")
|
|
|
|
#define USEBIOSSET _T("biosset")
|
|
|
|
#define USEBIOSSETTINGS _T("USEBIOSSETTINGS")
|
|
|
|
#define ERROR_PROFILE_STRING _T("ERROR:")
|
|
|
|
#define ERROR_PROFILE_STRING1 _T("")
|
|
|
|
#define REDIRECT_STRING _T("redirect")
|
|
|
|
#define BAUDRATE_STRING _T("redirectbaudrate")
|
|
|
|
#define MAX_BOOTID_VAL 20
|
|
|
|
#define STRING255 255
|
|
|
|
#define STRING10 10
|
|
|
|
|
|
#define DRIVE_C 'C'
|
|
#define DRIVE_D 'D'
|
|
#define DRIVE_E 'E'
|
|
#define DRIVE_F 'F'
|
|
#define DRIVE_G 'G'
|
|
#define DRIVE_H 'H'
|
|
#define DRIVE_I 'I'
|
|
#define DRIVE_J 'J'
|
|
#define DRIVE_K 'K'
|
|
#define DRIVE_L 'L'
|
|
#define DRIVE_M 'M'
|
|
#define DRIVE_N 'N'
|
|
#define DRIVE_O 'O'
|
|
#define DRIVE_P 'P'
|
|
#define DRIVE_Q 'Q'
|
|
#define DRIVE_R 'R'
|
|
#define DRIVE_S 'S'
|
|
#define DRIVE_T 'T'
|
|
#define DRIVE_U 'U'
|
|
#define DRIVE_V 'V'
|
|
#define DRIVE_W 'W'
|
|
#define DRIVE_X 'X'
|
|
#define DRIVE_Y 'Y'
|
|
#define DRIVE_Z 'Z'
|
|
|
|
|
|
#define OI_SERVER 1
|
|
#define OI_USER 2
|
|
#define OI_PASSWORD 3 |