//+---------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992 - 2001 // // File: cmdtable.cxx // // Contents: Defines tables which contain the command line arguments. // // History: 26-Mar-2001 EricB Created // //----------------------------------------------------------------------------- #include "pch.h" #pragma hdrstop #include #include "cmdtable.h" //+---------------------------------------------------------------------------- // Parser tables //----------------------------------------------------------------------------- ARG_RECORD rgNetDomPriArgs[] = { // // Primary operation commands // // // help, h // {MSG_TAG_HELP, NULL, MSG_TAG_HELPSHORT, NULL, ARG_TYPE_HELP, 0, (CMD_TYPE)FALSE, 0, NULL}, // // ? // {MSG_TAG_QHELP, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_HELP, 0, (CMD_TYPE)FALSE, 0, NULL}, // // Add primary command // {MSG_TAG_ADD, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // ComputerName primary command // {MSG_TAG_COMPNAME, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Join primary command // {MSG_TAG_JOIN, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Move primary command // {MSG_TAG_MOVE, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Query primary command // {MSG_TAG_QUERY, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Remove primary command // {MSG_TAG_REMOVE, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Rename primary command // {MSG_TAG_RENAME, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Rename Computer primary command // {MSG_TAG_RENAMECOMPUTER, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Reset primary command // {MSG_TAG_RESET, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Reset Password primary command // {MSG_TAG_RESETPWD, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Trust primary command // {MSG_TAG_TRUST, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Verify primary command // {MSG_TAG_VERIFY, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, // // Time primary command // {MSG_TAG_TIME, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_ATLEASTONE | ARG_FLAG_VERB, 0, 0, NULL}, {ARG_TERMINATOR} }; ARG_RECORD rgNetDomArgs[] = { // // Object name // {0, L"Object", ID_ARG2_NULL, NULL, ARG_TYPE_STR, ARG_FLAG_OBJECT, NULL, 0, NULL}, // // Query operations // // // PDC // {MSG_TAG_QUERY_PDC, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // SERVER // {MSG_TAG_QUERY_SERVER, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // WORKSTATION // {MSG_TAG_QUERY_WKSTA, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // DC // {MSG_TAG_QUERY_DC, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // OU // {MSG_TAG_QUERY_OU, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // FSMO // {MSG_TAG_QUERY_FSMO, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // TRUST // {MSG_TAG_QUERY_TRUST, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_VERB, ARG_FLAG_VERB, NULL, 0, NULL}, // // Common switches // // // help, h // {MSG_TAG_HELP, NULL, MSG_TAG_HELPSHORT, NULL, ARG_TYPE_HELP, 0, (CMD_TYPE)FALSE, 0, NULL}, // // ? // {MSG_TAG_QHELP, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_HELP, 0, (CMD_TYPE)FALSE, 0, NULL}, // // UserO, uo // {MSG_TAG_USERO, NULL, MSG_TAG_USERO_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // PasswordO, po // {MSG_TAG_PO, NULL, MSG_TAG_PO_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, //ValidateAdminPassword, // // UserD, ud // {MSG_TAG_USERD, NULL, MSG_TAG_USERD_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // PasswordD, pd // {MSG_TAG_PD, NULL, MSG_TAG_PD_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, //ValidateAdminPassword, // // Domain, d // {MSG_TAG_DOMAIN, NULL, MSG_TAG_DOMAIN_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // OU // {MSG_TAG_OU, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // Verify sub command, v // {MSG_TAG_TVERIFY, NULL, MSG_TAG_TVERIFY_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Verbose // {MSG_TAG_VERBOSE, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Server, s // {MSG_TAG_SERVER, NULL, MSG_TAG_SERVER_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // Reset sub command, rese // {MSG_TAG_TRESET, NULL, MSG_TAG_TRESET_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Reboot, reb // {MSG_TAG_RESTART, NULL, MSG_TAG_RESTART_SHORT, NULL, ARG_TYPE_INT, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)30, 0, NULL}, // // Force // {MSG_TAG_FORCE, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Help switch // // // Syntax // {MSG_TAG_SYNTAX, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Add switch // // // DC // {MSG_TAG_ADD_DC, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_STR, ARG_FLAG_OPTIONAL, (CMD_TYPE)L"", 0, NULL}, // // Move switches // // // UserF, uf // {MSG_TAG_USERF, NULL, MSG_TAG_USERF_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // PasswordF, pf // {MSG_TAG_PF, NULL, MSG_TAG_PF_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, //ValidateAdminPassword, // // Query switch // // // Direct // {MSG_TAG_DIRECT, NULL, MSG_TAG_DIRECT_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Rename Computer switch // // // NewName // {MSG_TAG_NEW_NAME, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // Trust switches // // // Realm, rea // {MSG_TAG_REALM, NULL, MSG_TAG_REALM_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // PasswordT, pt // {MSG_TAG_PT, NULL, MSG_TAG_PT_SHORT, NULL, ARG_TYPE_STR, 0, (CMD_TYPE)L"", 0, NULL}, // // Add, a, also used by CompName // {MSG_TAG_TADD, NULL, MSG_TAG_TADD_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_OPTIONAL, (CMD_TYPE)L"", 0, NULL}, // // Remove, rem, also used by CompName // {MSG_TAG_TREMOVE, NULL, MSG_TAG_TREMOVE_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_OPTIONAL, (CMD_TYPE)L"", 0, NULL}, // // TwoWay, t // {MSG_TAG_TWOWAY, NULL, MSG_TAG_TWOWAY_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Kerberos, k // {MSG_TAG_KERBEROS, NULL, MSG_TAG_KERBEROS_SHORT, NULL, ARG_TYPE_BOOL, 0, NULL, 0, NULL}, // // Transitive, trans // {MSG_TAG_TRANSITIVE, NULL, MSG_TAG_TRANSITIVE_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, // // OneSide, os // {MSG_TAG_ONESIDE, NULL, MSG_TAG_ONESIDE_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // NameSuffixes, ns // {MSG_TAG_NAMESUFFIXES, NULL, MSG_TAG_NAMESUFFIX_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // ToggleSuffix, ts // {MSG_TAG_TOGGLESUFFIX, NULL, MSG_TAG_TOGGLESUFFIX_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // FilterSIDs // {MSG_TAG_FILTER_SIDS, NULL, ID_ARG2_NULL, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, // // ComputerName switches. // // // MakePrimary, MP // {MSG_TAG_MAKEPRIMARY, NULL, MSG_TAG_MAKEPRIMARY_SHORT, NULL, ARG_TYPE_STR, 0, NULL, 0, NULL}, // // Enumerate, Enum // {MSG_TAG_ENUM, NULL, MSG_TAG_ENUM_SHORT, NULL, ARG_TYPE_STR, ARG_FLAG_DEFAULTABLE, (CMD_TYPE)L"", 0, NULL}, {ARG_TERMINATOR} };