403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um/msft_storageprovider.mof
//============================================================================
// Copyright (C) Microsoft Corporation, All rights reserved.
//============================================================================
//


[ClassVersion ( "1.0" ), Description(
    "This class is a representation of a particular Storage Management Provider (SMP) software "
    "package which is used to manage a storage subsystem."
    )]
class MSFT_StorageProvider : MSFT_StorageObject {

    [Read, Required, Description(
        "Denotes whether the provider is a stand-alone SMP provider or an SMIS provider that "
        "uses the SMIS proxy SMP."
        ),
        ValueMap { "1" },
        Values { "SMP" }]
    UInt16 Type = 1;

    [Read, Required, Description(
        "A user-friendly name of the storage provider."
        )]
    String Name;

    [Read, Required, Description(
        "A string indicating the manufacturer of the SMP software."
        )]
    String Manufacturer;

    [Read, Required, Description(
        "A version string used by the SMP manufacturer to differentiate between software versions."
        )]
    String Version;

    [Read,
        ValueMap { "0", "2", "3" },
        Values { "Unknown", "Disabled", "Manual-Discovery" }]
    UInt16 RemoteSubsystemCacheMode;

    [Read, Description(
        "Denotes whether this provider supports remote registration and management."
        )]
    Boolean SupportsSubsystemRegistration;

    [Read, Description(
        "Denotes the caching modes this provider supports. The modes "
        "are 'Disabled' and 'Manual-Discovery'."
        ),
        ValueMap { "0", "2", "3" },
        Values { "Unknown", "Disabled", "Manual-Discovery" }]
    UInt16 SupportedRemoteSubsystemCacheModes[];


    [Required, Description(
        "This method is used when a user wants to explicitly discover or re-enumerate objects "
        "owned by the storage provider. A call to this method could result in a full or partial "
        "cache invalidation and over-the-wire calls to the storage subsystem(s) in order to "
        "discover new or updated objects. As this is a time consuming task, it should be used "
        "sparingly by the user.\n"
        "The scope of the discovery operation is controlled by the DiscoveryLevel and RootObject "
        "parameters. DiscoveryLevel controls the depth of the object discovery. RootObject "
        "defines the starting point from which discovery will happen."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5", "4096",
            "40001", "40002",
            "46000", "46001", "46002", "46003"
            },
        Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter",
            "Method Parameters Checked - Job Started",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem.",
            "The storage provider does not support a required profile.",
            "The storage provider does not support a required association." }]
    UInt32 Discover(

        [In, Required, Description(
            "This field denotes the level (or depth) of discovery that should be performed. "
            "This parameter can only be specified if the root object is a storage provider, "
            "storage subsystem, or NULL. When specified, the storage provider will discover "
            "objects starting from Level 0 and continuing until the specified level is reached. "
            "Associations between objects (within the discovered levels) will also be discovered. "
            "The discovery levels are defined as follows: \n"
            "0 - 'Level 0': The storage provider and storage subsystem objects will be "
            "discovered. \n"
            "1 - 'Level 1': Storage pools, resiliency settings, target ports, target portals, "
            "and initiator ids will be discovered.\n"
            "2 - 'Level 2': Virtual disks and masking sets will be discovered.\n"
            "3 - 'Level 3': Physical disks will be discovered."
            ),
            ValueMap { "0", "1", "2", "3" },
            Values {
                "Level 0", "Level 1", "Level 2", "Level 3"
                }]
        UInt16 DiscoveryLevel,

        [In, Description(
            "If this parameter is set, discovery will begin from this object. When "
            "DiscoveryLevel is NULL, well-defined actions will be taken depending on the type "
            "of object specified by RootObject: \n"
            "Storage subsystem: All associated objects will be discovered. \n"
            "Storage pool: The pool, along with any associated resiliency settings, virtual "
            "disks, and physical disks will be discovered. \n"
            "Masking set: The masking set, along with any associated target ports, initiator "
            "ids, and virtual disks will be discovered. \n"
            "For all other objects: Only that object will be discovered / refreshed."
            )]
        MSFT_StorageObject REF RootObject,

        [Out, Description(
            "This parameter returns a reference to the storage job used to track the long "
            "running operation."
            )]
        MSFT_StorageJob REF CreatedStorageJob,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
    );


    //
    // Method: GetSecurityDescriptor
    //

    [Description(
        "This method returns the security descriptor that controls access to this specific "
        "object instance."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5",
            "40001", "40002",
            "46000", "46001"
            },
        Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem." }]
    UInt32 GetSecurityDescriptor(

        [Out, Required, Description(
            "A Security Descriptor Definition Language (SDDL) formed string describing the access "
            "control list of the object."
            )]
        String SecurityDescriptor,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
        );


    //
    // Method: SetSecurityDescriptor
    //

    [Description(
        "This method allows a user with sufficient privileges to set the security descriptor "
        "that control access to this specific object instance. If the call is not made in the "
        "context of a user specified in the security descriptor's access control list, this "
        "method will fail with 40001 - 'Access Denied'. If an empty security descriptor is "
        "passed to this function, the behavior is left to the specific implementation so long "
        "as there is some user context (typically domain administrators) that can access and "
        "administer the object."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5",
            "40001", "40002",
            "46000", "46001"
            },
         Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem." }]
    UInt32 SetSecurityDescriptor(

        [In, Required, Description(
            "A Security Descriptor Definition Language (SDDL) formed string describing the "
            "desired access control list for this object."
            )]
        String SecurityDescriptor,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
        );


    //
    // Method: RegisterSubsystem
    //

    [Description(
        "This method registers a subsystem to be managed by this provider. Note that "
        "the subsystem must be compatible with the provider software."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5", "6",
            "40001", "40002",
            "46000", "46001", "46004", "46006"
            },
        Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter", "In Use",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem.",
            "Cannot register/unregister the storage subsystem on local host.",
            "This subsystem is already registered." }]
    UInt32 RegisterSubsystem(

        [In, Required]
        String ComputerName,

        [In]
        String Credential,

        [Out, EmbeddedInstance("MSFT_StorageSubSystem")]
        String RegisteredSubsystem,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
        );


    //
    // Method: UnregisterSubsystem
    //

    [Description(
        "This method unregisters a subsystem. The provider will no longer manage this "
        "subsystem."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5",
            "40001", "40002",
            "46000", "46001", "46004", "46005", "46007"
            },
        Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem.",
            "Cannot register/unregister the storage subsystem on local host.",
            "The storage subsystem is not registered.",
            "This subsystem is already registered with another user's credentials. Use the -Force flag to remove the existing registration and add a new one anyway." }]
    UInt32 UnregisterSubsystem(

        [In, EmbeddedInstance("MSFT_StorageSubSystem")]
        String Subsystem,

        [In]
        String StorageSubSystemUniqueId,

        [In]
        Boolean Force,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
        );


    //
    // Method: SetAttributes
    //

    [Description(
        "This method sets the attributes of the provider."
        ),
        ValueMap {
            "0", "1", "2", "3", "4", "5",
            "40001", "40002",
            "46000", "46001"
            },
        Values {
            // 0 - 39999
            "Success", "Not Supported", "Unspecified Error",
            "Timeout", "Failed", "Invalid Parameter",
            // 40000 - 40999
            "Access denied",
            "There are not enough resources to complete the operation.",
            // 46000 - 46999
            "Cannot connect to the storage provider.",
            "The storage provider cannot connect to the storage subsystem." }]
    UInt32 SetAttributes(

        [In, Description(
            "If set to 3, caching for all the registered remote subsystem is enabled. "
            "If set to 2, caching for all the registered remote subsystem is disabled. "
            "This API only effects the remote subsystem registered and local Subsystem requests "
            "are not cached and reported live always."
            ),
            ValueMap { "2", "3" },
            Values { "Disabled", "Manual-Discovery" }]
        UInt16 RemoteSubsystemCacheMode,

        [Out, Description(
            "ExtendedStatus allows the storage provider to return extended (implementation "
            "specific) error information."
            ),
            EmbeddedInstance("MSFT_StorageExtendedStatus")]
        String ExtendedStatus
        );
};

Youez - 2016 - github.com/yon3zu
LinuXploit