Class AMT_ThirdPartyDataStorageService
Used in features: Storage
Compatible with the following Intel AMT Releases: 3.0, 3.2, 4.0, 5.0,
5.1, 6.0, 6.1, 6.2, 7.0, 8.0, 8.1, 9.0, 9.5, 10.0, 11.0
CIM_ManagedElement
CIM_ManagedSystemElement
CIM_LogicalElement
CIM_EnabledLogicalElement
CIM_Service
AMT_ThirdPartyDataStorageService
class AMT_ThirdPartyDataStorageService
- extends CIM_Service
General Information:
The ISV storage (ISVS) feature provides
limited non-volatile storage services to third-party software applications
running either on the local computer system host processor or on a remote
system.
Qualifiers:
-------------
Version=4.0.0
Supported Fields
Summary |
string
|
Name The Name property uniquely identifies the
Service and provides an indication of the functionality that is managed .
. .
|
string
|
CreationClassName CreationClassName indicates the name
of the class or the subclass that is used in the creation of an instance .
. .
|
string
|
SystemName The Name of the scoping System.
|
string
|
SystemCreationClassName The CreationClassName of the scoping
System.
|
string
|
ElementName A
user-friendly name for the object . . .
|
uint16[]
|
OperationalStatus
Indicates the current statuses of the element . . .
|
uint16
|
EnabledState
EnabledState is an integer enumeration that indicates the
enabled and disabled states of an element . . .
|
uint16
|
RequestedState
RequestedState is an integer enumeration that indicates the
last requested or desired state for the element, irrespective of the
mechanism through which it was requested . . .
|
uint16
|
EnabledDefault
An enumerated value indicating an administrator's default or
startup configuration for the Enabled State of an element . .
.
|
Methods Summary |
uint32 |
GetMTU(Mtu) Returns the
MTU (Maximum Transmission Unit) of the storage.
|
uint32 |
RegisterApplication(CallerUUID,
VendorName, ApplicationName, EnterpriseName, SessionHandle)
Registers the application with Intel(R) AMT and returns a Session
handle to the application . . .
|
uint32 |
UnregisterApplication(SessionHandle)
Closes the session of a registered application, but leaves the
application registered, and leaves its data intact . . .
|
uint32 |
GetRegisteredApplications(SessionHandle,
AppHandles) Returns a list of handles for ISV applications that
at some point have registered with Intel(R) AMT and were not removed . .
.
|
uint32 |
GetCurrentApplicationHandle(SessionHandle,
ApplicationHandle) Sent by a registered ISV application to
retrieve its application handle.
|
uint32 |
GetApplicationAttributes(SessionHandle,
ApplicationBeingRequested, VendorName, ApplicationName) Sent by
a registered ISV application to get a listing of attributes for
applications with the same vendor name . . .
|
uint32 |
RemoveApplication(SessionHandle)
Un-registers an application and releases all allocated Intel(R) AMT
storage resources associated with this ISV application . . .
|
uint32 |
GetBytesAvailable(SessionHandle,
BytesAvailable) Sent by a registered ISV application to
determine the number of bytes currently available for it to
allocate.
|
uint32 |
AllocateBlock(SessionHandle,
BytesRequested, BlockHidden, BlockName, BlockHandle) Sent by a
registered ISV application to allocate a portion of the Intel(R) AMT
non-volatile storage area, sets the block visibility and defines the block
name . . .
|
uint32 |
DeallocateBlock(SessionHandle,
BlockHandle) Enables an application that owns an allocated
block to return it back to the system.
|
uint32 |
RemovePermissionsGroup(SessionHandle,
BlockHandle, GroupHandle) Sent by a registered ISV application
to remove a permissions group from a storage block . . .
|
uint32 |
GetPermissionsGroupMembers(SessionHandle,
BlockHandle, GroupHandle, MemberHandles) Sent by any registered
ISV application to get the list of handles of ISV applications which are
members of a storage block permissions group . . .
|
uint32 |
GetAllocatedBlocks(SessionHandle,
BlockOwnerApplication, BlockHandles) Enables an application to
get a listing of block handles for those blocks allocated by a given
application . . .
|
uint32 |
RemovePermissionsGroupMembers(SessionHandle,
BlockHandle, GroupHandle, MemberHandles) Sent by a registered
ISV application to remove member applications or generic application
filters from a permissions group associated with a single block of ISV
storage . . .
|
uint32 |
GetBlockAttributes(SessionHandle,
BlockHandle, BlockSize, BlockHidden, BlockName) Enables an
application to get a listing of attributes for a single allocated block .
. .
|
uint32 |
AddPermissionsGroupMembers(SessionHandle,
BlockHandle, GroupHandle, MemberHandles) Sent by a registered
ISV application to add member applications or generic application filters
to a permissions group associated with a single block of ISV storage . .
.
|
uint32 |
UnlockBlock(SessionHandle,
BlockHandle) Enables an application to remove a lock from a
block of non-volatile memory so that other applications may access the
allocated block for read or write operations . . .
|
uint32 |
SetPermissionsGroupName(SessionHandle,
BlockHandle, GroupHandle, GroupName) Sent by a registered ISV
application to set the name of a storage block permissions group . .
.
|
uint32 |
GetTimeoutValues(RegistrationTimeout,
LockTimeout) Sent by an ISV application to get the timeout
values used by the Intel(R) AMT device for idle registered applications
and idle locked blocks.
|
uint32 |
ReadBlock(SessionHandle,
BlockHandle, ByteOffset, ByteCount, Data) Sent by a registered
ISV application to retrieve data previously stored in a block of local
nonvolatile memory . . .
|
uint32 |
WriteBlock(SessionHandle,
BlockHandle, ByteOffset, Data, BytesWritten) Enables an
application with proper permissions to write data to an allocated block .
. .
|
uint32 |
SetPermissionsGroupPermissions(SessionHandle,
BlockHandle, GroupHandle, Permissions) Sent by a registered ISV
application to set the permission flags for a storage block permissions
group . . .
|
uint32 |
SetBlockVisibility(SessionHandle,
BlockHandle, BlockHidden) Enables an application that owns an
allocated memory block to set the block visibility attribute . . .
|
uint32 |
GetPermissionsGroupAttributes(SessionHandle,
BlockHandle, GroupHandle, Name, Permissions) Sent by a
registered ISV application to get the attributes for a single permissions
group . . .
|
uint32 |
GetPermissionsGroups(SessionHandle,
BlockHandle, GroupHandles) Sent by a registered ISV application
to get a list of handles of the permissions groups currently defined for a
block of ISV storage . . .
|
uint32 |
SetBlockName(SessionHandle,
BlockHandle, BlockName) Enables an application that owns an
allocated block to modify the block's name.
|
uint32 |
AddPermissionsGroup(SessionHandle,
BlockHandle, GroupPermissions, GroupName, GroupHandle) Sent by
a registered ISV application to associate a permissions group with a block
of ISV storage, set its initial permissions value, and define its name . .
.
|
uint32 |
LockBlock(SessionHandle,
BlockHandle) Sent by a registered ISV application to lock a
block of non-volatile memory, thereby preventing other applications from
reading or writing the block's data . . .
|
uint32 |
GetWriteEraseLimit(WriteEraseLimit)
Returns the number of currently available write operations.
|
|
Get(Instance) Gets the
representation of the instance
|
|
Pull(EnumerationContext,
MaxElements) Pulls instances of this class, following an
Enumerate operation
|
|
Enumerate()
Enumerates the instances of this class
|
|
Release(EnumerationContext)
Releases an enumeration context
|
Name
public string Name
- General Information:
The Name property uniquely identifies the
Service and provides an indication of the functionality that is managed. This
functionality is described in more detail in the Description property of the
object.
Product Specific Usage:
In Intel AMT Release 6.0 and
later releases value is 'Intel(r) AMT Third Party Data Storage
Service'
Qualifiers:
-------------
Key
Override=Name
MaxLen=50
CreationClassName
public string CreationClassName
- General Information:
CreationClassName indicates the name of the
class or the subclass that is used in the creation of an instance. When used
with the other key properties of this class, this property allows all
instances of this class and its subclasses to be uniquely
identified.
Product Specific Usage:
In Intel AMT Release 6.0
and later releases value is
'AMT_ThirdPartyDataStorageService'
Qualifiers:
-------------
Key
MaxLen=35
SystemName
public string SystemName
- General Information:
The Name of the scoping
System.
Product Specific Usage:
In Intel AMT Release 6.0 and
later releases value is 'Intel(r)
AMT'
Qualifiers:
-------------
Key
MaxLen=256
Propagated=CIM_System.Name
SystemCreationClassName
public string SystemCreationClassName
- General Information:
The CreationClassName of the scoping
System.
Product Specific Usage:
In Intel AMT Release 6.0 and
later releases value is
'CIM_ComputerSystem'
Qualifiers:
-------------
Key
MaxLen=20
Propagated=CIM_System.CreationClassName
ElementName
public string ElementName
- General Information:
A user-friendly name for the object. This
property allows each instance to define a user-friendly name in addition to
its key properties, identity data, and description information.
Note that
the Name property of ManagedSystemElement is also defined as a user-friendly
name. But, it is often subclassed to be a Key. It is not reasonable that the
same property can convey both identity and a user-friendly name, without
inconsistencies. Where Name exists and is not a Key (such as for instances of
LogicalDevice), the same information can be present in both the Name and
ElementName properties. Note that if there is an associated instance of
CIM_EnabledLogicalElementCapabilities, restrictions on this properties may
exist as defined in ElementNameMask and MaxElementNameLen properties defined
in that class.
Product Specific Usage:
In Intel AMT Release
6.0 and later releases value is 'Intel(r) AMT Third Party Data Storage
Service'
Qualifiers:
-------------
MaxLen=50
OperationalStatus
public uint16[] OperationalStatus
- General Information:
Indicates the current statuses of the
element. Various operational statuses are defined. Many of the enumeration's
values are self-explanatory. However, a few are not and are described here in
more detail.
"Stressed" indicates that the element is functioning, but
needs attention. Examples of "Stressed" states are overload, overheated, and
so on.
"Predictive Failure" indicates that an element is functioning
nominally but predicting a failure in the near future.
"In Service"
describes an element being configured, maintained, cleaned, or otherwise
administered.
"No Contact" indicates that the monitoring system has
knowledge of this element, but has never been able to establish communications
with it.
"Lost Communication" indicates that the ManagedSystem Element is
known to exist and has been contacted successfully in the past, but is
currently unreachable.
"Stopped" and "Aborted" are similar, although the
former implies a clean and orderly stop, while the latter implies an abrupt
stop where the state and configuration of the element might need to be
updated.
"Dormant" indicates that the element is inactive or quiesced.
"Supporting Entity in Error" indicates that this element might be "OK" but
that another element, on which it is dependent, is in error. An example is a
network service or endpoint that cannot function due to lower-layer networking
problems.
"Completed" indicates that the element has completed its
operation. This value should be combined with either OK, Error, or Degraded so
that a client can tell if the complete operation Completed with OK (passed),
Completed with Error (failed), or Completed with Degraded (the operation
finished, but it did not complete OK or did not report an error).
"Power
Mode" indicates that the element has additional power model information
contained in the Associated PowerManagementService association.
"Relocating" indicates the element is being
relocated.
OperationalStatus replaces the Status property on
ManagedSystemElement to provide a consistent approach to enumerations, to
address implementation needs for an array property, and to provide a migration
path from today's environment to the future. This change was not made earlier
because it required the deprecated qualifier. Due to the widespread use of the
existing Status property in management applications, it is strongly
recommended that providers or instrumentation provide both the Status and
OperationalStatus properties. Further, the first value of OperationalStatus
should contain the primary status for the element. When instrumented, Status
(because it is single-valued) should also provide the primary status of the
element.
Qualifiers:
-------------
ValueMap={0, 1, 2, 3,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ..,
0x8000..}
Values={Unknown, Other, OK, Degraded, Stressed, Predictive
Failure, Error, Non-Recoverable Error, Starting, Stopping, Stopped, In
Service, No Contact, Lost Communication, Aborted, Dormant, Supporting Entity
in Error, Completed, Power Mode, Relocating, DMTF Reserved, Vendor
Reserved}
ArrayType=Indexed
ModelCorrespondence={CIM_ManagedSystemElement.StatusDescriptions}
EnabledState
public uint16 EnabledState
- General Information:
EnabledState is an integer enumeration that
indicates the enabled and disabled states of an element. It can also indicate
the transitions between these requested states. For example, shutting down
(value=4) and starting (value=10) are transient states between enabled and
disabled. The following text briefly summarizes the various enabled and
disabled states:
Enabled (2) indicates that the element is or could be
executing commands, will process any queued commands, and queues new requests.
Disabled (3) indicates that the element will not execute commands and will
drop any new requests.
Shutting Down (4) indicates that the element is in
the process of going to a Disabled state.
Not Applicable (5) indicates the
element does not support being enabled or disabled.
Enabled but Offline
(6) indicates that the element might be completing commands, and will drop any
new requests.
Test (7) indicates that the element is in a test state.
Deferred (8) indicates that the element might be completing commands, but
will queue any new requests.
Quiesce (9) indicates that the element is
enabled but in a restricted mode.
Starting (10) indicates that the element
is in the process of going to an Enabled state. New requests are
queued.
Qualifiers:
-------------
ValueMap={0, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11..32767, 32768..65535}
Values={Unknown, Other,
Enabled, Disabled, Shutting Down, Not Applicable, Enabled but Offline, In
Test, Deferred, Quiesce, Starting, DMTF Reserved, Vendor
Reserved}
ModelCorrespondence={CIM_EnabledLogicalElement.OtherEnabledState}
RequestedState
public uint16 RequestedState
- General Information:
RequestedState is an integer enumeration
that indicates the last requested or desired state for the element,
irrespective of the mechanism through which it was requested. The actual state
of the element is represented by EnabledState. This property is provided to
compare the last requested and current enabled or disabled states. Note that
when EnabledState is set to 5 ("Not Applicable"), then this property has no
meaning. Refer to the EnabledState property description for explanations of
the values in the RequestedState enumeration.
"Unknown" (0) indicates the
last requested state for the element is unknown.
Note that the value "No
Change" (5) has been deprecated in lieu of indicating the last requested state
is "Unknown" (0). If the last requested or desired state is unknown,
RequestedState should have the value "Unknown" (0), but may have the value "No
Change" (5).Offline (6) indicates that the element has been requested to
transition to the Enabled but Offline EnabledState.
It should be noted
that there are two new values in RequestedState that build on the statuses of
EnabledState. These are "Reboot" (10) and "Reset" (11). Reboot refers to doing
a "Shut Down" and then moving to an "Enabled" state. Reset indicates that the
element is first "Disabled" and then "Enabled". The distinction between
requesting "Shut Down" and "Disabled" should also be noted. Shut Down requests
an orderly transition to the Disabled state, and might involve removing power,
to completely erase any existing state. The Disabled state requests an
immediate disabling of the element, such that it will not execute or accept
any commands or processing requests.
This property is set as the
result of a method invocation (such as Start or StopService on CIM_Service),
or can be overridden and defined as WRITEable in a subclass. The method
approach is considered superior to a WRITEable property, because it allows an
explicit invocation of the operation and the return of a result code.
If knowledge of the last RequestedState is not supported for the
EnabledLogicalElement, the property shall be NULL or have the value 12 "Not
Applicable".
Qualifiers:
-------------
ValueMap={0, 2, 3,
4, 5, 6, 7, 8, 9, 10, 11, 12, .., 32768..65535}
Values={Unknown, Enabled,
Disabled, Shut Down, No Change, Offline, Test, Deferred, Quiesce, Reboot,
Reset, Not Applicable, DMTF Reserved, Vendor
Reserved}
ModelCorrespondence={CIM_EnabledLogicalElement.EnabledState}
EnabledDefault
public uint16 EnabledDefault
- General Information:
An enumerated value indicating an
administrator's default or startup configuration for the Enabled State of an
element. By default, the element is "Enabled"
(value=2).
Qualifiers:
-------------
Write
ValueMap={2,
3, 5, 6, 7, 9, .., 32768..65535}
Values={Enabled, Disabled, Not Applicable,
Enabled but Offline, No Default, Quiesce, DMTF Reserved, Vendor
Reserved}
GetMTU
public uint32 GetMTU([OUT]uint32 Mtu)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Returns the
MTU (Maximum Transmission Unit) of the
storage.
Qualifiers:
-------------
ValueMap={0}
Values={PT_STATUS_SUCCESS}
Parameters:
--------------
- Mtu
- General Information:
The storage MTU (Maximum Transmission
Unit).
Qualifiers:
-------------
OUT
RegisterApplication
public uint32 RegisterApplication([IN]string CallerUUID[], [IN]string VendorName, [IN]string ApplicationName, [IN]string EnterpriseName, [OUT]string SessionHandle[])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Registers
the application with Intel(R) AMT and returns a Session handle to the
application. The application specifies this handle in subsequent ISV storage
calls until it sends a new registration request (with identical information).
Once an application has initially registered with unique registration
information (Vendor Name, Application Name, Enterprise Name and UUID) from
either the local or the remote interface, registration attempts with identical
registration data from a different interface will be
rejected.
Qualifiers:
-------------
ValueMap={0, 1, 9, 23,
38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_INVALID_REGISTRATION_DATA, PT_STATUS_MAX_LIMIT_REACHED,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- CallerUUID
- General Information:
GUID
String.
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- VendorName
- General Information:
The name of the
vendor.
Qualifiers:
-------------
Required
IN
MaxLen=64
- ApplicationName
- General Information:
The name of the ISV
application.
Qualifiers:
-------------
Required
IN
MaxLen=64
- EnterpriseName
- General Information:
A pre-registered enterprise
name.
Qualifiers:
-------------
Required
IN
MaxLen=64
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
OUT
OctetString
MaxLen=16
UnregisterApplication
public uint32 UnregisterApplication([IN]string SessionHandle[])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Closes the
session of a registered application, but leaves the application registered,
and leaves its data intact. Any block locks that the application acquired will
be released. The SessionHandle is invalidated and should not be used in
subsequent ISVS operations.
Product Specific Usage:
If
'SessionHandle' parameter doesn't represent a valid session, a
'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
GetRegisteredApplications
public uint32 GetRegisteredApplications([IN]string SessionHandle[], [OUT]uint32 AppHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Returns a
list of handles for ISV applications that at some point have registered with
Intel(R) AMT and were not removed. Will return only those handles of
applications that have the same VendorName as the current
application.
Product Specific Usage:
If 'SessionHandle'
parameter doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE'
(2053) value is
returned.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- AppHandles
- General Information:
An array of application
handles.
Qualifiers:
-------------
OUT
GetCurrentApplicationHandle
public uint32 GetCurrentApplicationHandle([IN]string SessionHandle[], [OUT]uint32 ApplicationHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to retrieve its application
handle.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- ApplicationHandle
- General Information:
The current application
handle.
Qualifiers:
-------------
OUT
GetApplicationAttributes
public uint32 GetApplicationAttributes([IN]string SessionHandle[], [IN]uint32 ApplicationBeingRequested, [OUT]string VendorName, [OUT]string ApplicationName)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to get a listing of attributes for applications
with the same vendor name. If no applications share the same vendor name, the
function will return error code 10
Product Specific Usage:
If
'SessionHandle' parameter doesn't represent a valid session, a
'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1,
10}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_APPLICATION_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- ApplicationBeingRequested
- General Information:
The application handle whose attributes
are being
requested.
Qualifiers:
-------------
Required
IN
- VendorName
- General Information:
The name of the
vendor.
Qualifiers:
-------------
OUT
MaxLen=64
- ApplicationName
- General Information:
The name of the ISV
application.
Qualifiers:
-------------
OUT
MaxLen=64
RemoveApplication
public uint32 RemoveApplication([IN]string SessionHandle[])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General
Information:
Un-registers an application and releases all allocated
Intel(R) AMT storage resources associated with this ISV application. If the
application owns any storage blocks, they are released, along with any
associated permissions group resources. If the application is in the Partner
Allocation Control List (PACL), the PACL entry is not removed. The application
is removed from all permissions groups associated with storage blocks that are
owned by other applications. The SessionHandle input is invalidated and should
not be used in subsequent ISVS operations.
Product Specific
Usage:
If 'SessionHandle' parameter doesn't represent a valid session,
a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1,
38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
GetBytesAvailable
public uint32 GetBytesAvailable([IN]string SessionHandle[], [OUT]uint32 BytesAvailable)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to determine the number of bytes currently
available for it to allocate.
Product Specific Usage:
If
'SessionHandle' parameter doesn't represent a valid session, a
'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BytesAvailable
- General Information:
The number of bytes available for the
application, identified by SessionHandle, to
allocate.
Qualifiers:
-------------
OUT
AllocateBlock
public uint32 AllocateBlock([IN]string SessionHandle[], [IN]uint32 BytesRequested, [IN]boolean BlockHidden, [IN]string BlockName, [OUT]uint32 BlockHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to allocate a portion of the Intel(R) AMT
non-volatile storage area, sets the block visibility and defines the block
name. Once the block is allocated the application becomes the owner of the
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
An application will be able to allocate a few blocks
until the maximum allowed.
Partner Application should be able to allocate
Partner allowed size (MaxPartnerStorage in
AMT_ThirdPartyStorageAdministrationService.GetGlobalStorageAttributes), when
this limit is reached the next allocation for a Partner will come from the
NonPartnerStorage Area.
Non-Partner Application should NOT be able to
allocate from NonPartnerStorage area - if MaxNonPartnerStorage is reached,
next allocation will fail.
Qualifiers:
-------------
ValueMap={0, 1, 11, 15,
38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_NOT_ENOUGH_STORAGE, PT_STATUS_INVALID_BYTE_COUNT,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BytesRequested
- General Information:
The number of bytes requested by the
sender must be a multiple of the Storage
MTU.
Qualifiers:
-------------
Required
IN
- BlockHidden
- General Information:
The value should be TRUE if the block
should be hidden from other applications, FALSE
otherwise.
Qualifiers:
-------------
Required
IN
- BlockName
- General Information:
The block
name.
Qualifiers:
-------------
IN
MaxLen=32
- BlockHandle
- General Information:
The block handle that can be used to
reference the block in subsequent
operations.
Qualifiers:
-------------
OUT
DeallocateBlock
public uint32 DeallocateBlock([IN]string SessionHandle[], [IN]uint32 BlockHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application that owns an allocated block to return it back to the
system.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST,
PT_STATUS_NOT_OWNER}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the block to be
de-allocated.
Qualifiers:
-------------
Required
IN
RemovePermissionsGroup
public uint32 RemovePermissionsGroup([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to remove a permissions group from a storage block.
The sending application must be the owner of the block.
Product
Specific Usage:
If 'SessionHandle' parameter doesn't represent a valid
session, a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17, 21, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_GROUP_DOES_NOT_EXIST,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group being
removed.
Qualifiers:
-------------
Required
IN
GetPermissionsGroupMembers
public uint32 GetPermissionsGroupMembers([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [OUT]uint32 MemberHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by any
registered ISV application to get the list of handles of ISV applications
which are members of a storage block permissions group. The members of a
permissions group are registered ISV applications or generic application
filters. Members of groups associated with hidden blocks will not be returned
unless the originator of the call is the block owner.
Product
Specific Usage:
If 'SessionHandle' parameter doesn't represent a valid
session, a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
21}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST,
PT_STATUS_GROUP_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions
group.
Qualifiers:
-------------
Required
IN
- MemberHandles
- General Information:
An array of member
handles.
Qualifiers:
-------------
OUT
GetAllocatedBlocks
public uint32 GetAllocatedBlocks([IN]string SessionHandle[], [IN]uint32 BlockOwnerApplication, [OUT]uint32 BlockHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application to get a listing of block handles for those blocks allocated by a
given application. Blocks allocated with "Hidden" visibility attribute will
not be returned by this command unless the command is issued by the block
owner, even if the requesting application has been granted I/O access on them
by the owner through a permissions group.
Product Specific
Usage:
If 'SessionHandle' parameter doesn't represent a valid session,
a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1,
10}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_APPLICATION_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockOwnerApplication
- General Information:
The handle of the application whose block
list is being
retrieved.
Qualifiers:
-------------
Required
IN
- BlockHandles
- General Information:
An array of block
handles.
Qualifiers:
-------------
OUT
RemovePermissionsGroupMembers
public uint32 RemovePermissionsGroupMembers([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [IN]uint32 MemberHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to remove member applications or generic
application filters from a permissions group associated with a single block of
ISV storage. The sending application must be the owner of the
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 10,
13, 17, 21, 22, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_APPLICATION_DOES_NOT_EXIST, PT_STATUS_BLOCK_DOES_NOT_EXIST,
PT_STATUS_NOT_OWNER, PT_STATUS_GROUP_DOES_NOT_EXIST,
PT_STATUS_INVALID_MEMBER_COUNT,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group being
modified.
Qualifiers:
-------------
Required
IN
- MemberHandles
- General Information:
An array of application handles or
generic application
filters.
Qualifiers:
-------------
Required
IN
GetBlockAttributes
public uint32 GetBlockAttributes([IN]string SessionHandle[], [IN]uint32 BlockHandle, [OUT]uint32 BlockSize, [OUT]boolean BlockHidden, [OUT]string BlockName)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application to get a listing of attributes for a single allocated block.
Blocks allocated with the "Hidden" visibility attribute will not appear in
this command unless the command is issued by the block
owner.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1,
13}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the block whose attributes are
being
requested.
Qualifiers:
-------------
Required
IN
- BlockSize
- General Information:
The size of the block in
bytes.
Qualifiers:
-------------
OUT
- BlockHidden
- General Information:
TRUE if block is hidden from other
applications, FALSE
otherwise.
Qualifiers:
-------------
OUT
- BlockName
- General Information:
An optional name for the block, set by
the
owner.
Qualifiers:
-------------
OUT
MaxLen=32
AddPermissionsGroupMembers
public uint32 AddPermissionsGroupMembers([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [IN]uint32 MemberHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to add member applications or generic application
filters to a permissions group associated with a single block of ISV storage.
The sending application must be the owner of the block.
Product
Specific Usage:
Special values for "MemberHandles' parameter (generic
application filters):
0xFFFFFFF0 - All applications with the same
VendorName, ApplicationName and EnterpriseName as the BlockOwner application.
0xFFFFFFF1 - All applications with the same VendorName and EnterpriseName
as the BlockOwner application.
If 'SessionHandle' parameter doesn't
represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1,
10, 13, 17, 21, 22, 38}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR, PT_STATUS_APPLICATION_DOES_NOT_EXIST,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_GROUP_DOES_NOT_EXIST, PT_STATUS_INVALID_MEMBER_COUNT,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group being
modified.
Qualifiers:
-------------
Required
IN
- MemberHandles
- General Information:
An array of application handles or
generic application
filters.
Qualifiers:
-------------
Required
IN
UnlockBlock
public uint32 UnlockBlock([IN]string SessionHandle[], [IN]uint32 BlockHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application to remove a lock from a block of non-volatile memory so that other
applications may access the allocated block for read or write operations. The
sending application must have at least read permissions for the block. An
application can not unlock a block which was locked by another
application.
Product Specific Usage:
If 'SessionHandle'
parameter doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE'
(2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
16, 18, 19}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_PERMITTED,
PT_STATUS_BLOCK_LOCKED_BY_OTHER,
PT_STATUS_BLOCK_NOT_LOCKED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the allocated block of ISV
storage being
unlocked.
Qualifiers:
-------------
Required
IN
SetPermissionsGroupName
public uint32 SetPermissionsGroupName([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [IN]string GroupName)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to set the name of a storage block permissions
group. The sending application must be the owner of the
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17, 21, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_GROUP_DOES_NOT_EXIST,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group whose
name is being
modified.
Qualifiers:
-------------
Required
IN
- GroupName
- General Information:
The name assigned to the permissions
group.
Qualifiers:
-------------
Required
IN
MaxLen=16
GetTimeoutValues
public uint32 GetTimeoutValues([OUT]uint32 RegistrationTimeout, [OUT]uint32 LockTimeout)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by an
ISV application to get the timeout values used by the Intel(R) AMT device for
idle registered applications and idle locked
blocks.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- RegistrationTimeout
- General Information:
Time, in seconds, after which an idle
registered application is automatically un-registered by the Intel(R) AMT
device. The actions which are performed after the timeout has elapsed are
similar to the actions which are performed by the UnregisterApplication
method.
Qualifiers:
-------------
OUT
- LockTimeout
- General Information:
Time, in seconds, after which an idle
locked block is automatically unlocked by the Intel(R) AMT device to avoid
deadlocks. The following operations reset the expiration timer of the block
they operate on: ReadBlock, WriteBlock,
LockBlock..
Qualifiers:
-------------
OUT
ReadBlock
public uint32 ReadBlock([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 ByteOffset, [IN]uint32 ByteCount, [OUT]uint8 Data[])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to retrieve data previously stored in a block of
local nonvolatile memory. The data is transparent to Intel(R) AMT and is
treated as an unformatted sequence of bytes. The requesting application must
have read permissions for the block.
Product Specific
Usage:
Additional Notes:
1) In Intel AMT Release 6.0 and later
releases,Data parameter is restricted to a maximum of 4096 bytes
2) If
'SessionHandle' parameter doesn't represent a valid session, a
'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
14, 15, 16, 18}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_INVALID_BYTE_OFFSET,
PT_STATUS_INVALID_BYTE_COUNT, PT_STATUS_NOT_PERMITTED,
PT_STATUS_BLOCK_LOCKED_BY_OTHER}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the block from which data will
be
retrieved.
Qualifiers:
-------------
Required
IN
- ByteOffset
- General Information:
The byte offset - relative to the first
byte of the block - from which the first byte of Data is to be
retrieved.
Qualifiers:
-------------
Required
IN
- ByteCount
- General Information:
The number of bytes to
read.
Qualifiers:
-------------
Required
IN
- Data
- General Information:
Binary
Data
Qualifiers:
-------------
OUT
OctetString
WriteBlock
public uint32 WriteBlock([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 ByteOffset, [IN]uint8 Data[], [OUT]uint32 BytesWritten)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application with proper permissions to write data to an allocated block. The
data is transparent to Intel(R) AMT and is stored without
modification.
Product Specific Usage:
Additional Notes:
1) In Intel AMT Release 6.0 and later releases,Data parameter is
restricted to a maximum of 4096 bytes
2) If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
14, 15, 16, 18, 38, 2075}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR, PT_STATUS_BLOCK_DOES_NOT_EXIST,
PT_STATUS_INVALID_BYTE_OFFSET, PT_STATUS_INVALID_BYTE_COUNT,
PT_STATUS_NOT_PERMITTED, PT_STATUS_BLOCK_LOCKED_BY_OTHER,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED,
PT_STATUS_AUDIT_FAIL}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the block in which Data will
be
stored.
Qualifiers:
-------------
Required
IN
- ByteOffset
- General Information:
The byte offset - relative to the first
byte of the block - at which the first byte of Data is to be
stored.
Qualifiers:
-------------
Required
IN
- Data
- General Information:
Binary
Data
Qualifiers:
-------------
Required
IN
OctetString
- BytesWritten
- General Information:
The number of bytes, from Data that were
actually stored by this operation. Note: This value is valid on any return
status, it may indicate that partial data was modified although return value
is not
PT_STATUS_SUCCESS.
Qualifiers:
-------------
OUT
SetPermissionsGroupPermissions
public uint32 SetPermissionsGroupPermissions([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [IN]uint32 Permissions)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to set the permission flags for a storage block
permissions group. The sending application must be the owner of the
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17, 20, 21, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_INVALID_GROUP_PERMISSIONS, PT_STATUS_GROUP_DOES_NOT_EXIST,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group whose
permissions are being
modified.
Qualifiers:
-------------
Required
IN
- Permissions
- General Information:
The permission flag settings to be
applied. A value of 1 indicates read permissions, a value of 2 indicates
read-write
permissions.
Qualifiers:
-------------
Required
IN
SetBlockVisibility
public uint32 SetBlockVisibility([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]boolean BlockHidden)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application that owns an allocated memory block to set the block visibility
attribute. When a memory block is hidden it will not be listed when other
applications call GetAllocatedBlocks with the handle of the block owner. Other
applications which attempt to perform operations on a hidden block will
recieve the error PT_STATUS_BLOCK_DOES_NOT_EXIST. Applications which are
members of a permissions-group associated with a "hidden block" are still
granted the access permission for the block (e.g. read the data in the block).
In addition to setting the block visibility, the owner must not assign I/O
access permissions to other applications if it wishes to completely deny
access to the block's data and attributes.
Product Specific
Usage:
If 'SessionHandle' parameter doesn't represent a valid session,
a 'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the block being
modified.
Qualifiers:
-------------
Required
IN
- BlockHidden
- General Information:
If TRUE, block will be hidden from other
applications; if FALSE, block will be visible to other
applications.
Qualifiers:
-------------
Required
IN
GetPermissionsGroupAttributes
public uint32 GetPermissionsGroupAttributes([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupHandle, [OUT]string Name, [OUT]uint32 Permissions)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to get the attributes for a single permissions
group. Only the block owner may request this operation for a group that is
associated with a hidden block. Any registered application may request this
operation for a group that is associated with a visible
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
21}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST,
PT_STATUS_GROUP_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block that owns
the group specified by
GroupHandle.
Qualifiers:
-------------
Required
IN
- GroupHandle
- General Information:
Identifies the permissions group whose
attributes are being
requested.
Qualifiers:
-------------
Required
IN
- Name
- General Information:
Name of the permissions
group.
Qualifiers:
-------------
OUT
MaxLen=16
- Permissions
- General Information:
The permission flags for this group. A
value of 1 indicates read permissions, a value of 2 indicates read-write
permissions.
Qualifiers:
-------------
OUT
GetPermissionsGroups
public uint32 GetPermissionsGroups([IN]string SessionHandle[], [IN]uint32 BlockHandle, [OUT]uint32 GroupHandles[256])
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to get a list of handles of the permissions groups
currently defined for a block of ISV storage. Only the block owner may request
this operation for a hidden block. Any registered application may request this
operation for a visible block.
Product Specific Usage:
If
'SessionHandle' parameter doesn't represent a valid session, a
'PT_STATUS_INVALID_HANDLE' (2053) value is
returned.
Qualifiers:
-------------
ValueMap={0, 1,
13}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block whose
permissions groups are being
requested.
Qualifiers:
-------------
Required
IN
- GroupHandles
- General Information:
An array of group
handles.
Qualifiers:
-------------
OUT
SetBlockName
public uint32 SetBlockName([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]string BlockName)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Enables an
application that owns an allocated block to modify the block's
name.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
17, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the allocated block of ISV
storage being
named.
Qualifiers:
-------------
Required
IN
- BlockName
- General Information:
The name being assigned to the storage
block.
Qualifiers:
-------------
Required
IN
MaxLen=32
AddPermissionsGroup
public uint32 AddPermissionsGroup([IN]string SessionHandle[], [IN]uint32 BlockHandle, [IN]uint32 GroupPermissions, [IN]string GroupName, [OUT]uint32 GroupHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to associate a permissions group with a block of
ISV storage, set its initial permissions value, and define its name. Each
permissions group has its own set of permissions. Each member of a permission
group is an application with a unique Application Handle. A permissions group
can be used to establish different storage roles for different applications
from the same ISV. Each permissions group is associated with exactly one
block. The sending application must be the owner of the
block.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
GroupPermissions parameter values: read=1 and
r+w=2
Qualifiers:
-------------
ValueMap={0, 1, 13, 17,
20, 23, 38}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_OWNER,
PT_STATUS_INVALID_GROUP_PERMISSIONS, PT_STATUS_MAX_LIMIT_REACHED,
PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the storage block which the
permissions group will be associated
to.
Qualifiers:
-------------
Required
IN
- GroupPermissions
- General Information:
The permission flags for this group,
which only apply to this storage
block.
Qualifiers:
-------------
Required
IN
- GroupName
- General Information:
An optional name that the sender can
assign to this
group.
Qualifiers:
-------------
IN
MaxLen=16
- GroupHandle
- General Information:
A group handle generated by Intel(R) AMT
- used to reference the group in other Intel(R) AMT non-volatile storage
operations.
Qualifiers:
-------------
OUT
LockBlock
public uint32 LockBlock([IN]string SessionHandle[], [IN]uint32 BlockHandle)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Sent by a
registered ISV application to lock a block of non-volatile memory, thereby
preventing other applications from reading or writing the block's data. If the
request succeeds, the requesting application will own the block's lock until
it explicitly releases it with an UnlockBlock request, or until an inactivity
timer expires, whichever occurs first. Also, if the application session
terminates, the lock is also removed. The lock does not prevent the block from
being de-allocated. If the owner of a block de-allocates it while another
application holds the lock, the lock is destroyed with the block. An
application can not lock a block while it is already locked by another
application. The sending application must have at least read permission for
the block. As a lock operation following a lock operation performed on the
same block, executed by the same application would succeed, this operation can
not be used to synchronize operation between multiple application
threads.
Product Specific Usage:
If 'SessionHandle' parameter
doesn't represent a valid session, a 'PT_STATUS_INVALID_HANDLE' (2053) value
is returned.
Qualifiers:
-------------
ValueMap={0, 1, 13,
16, 18}
Values={PT_STATUS_SUCCESS, PT_STATUS_INTERNAL_ERROR,
PT_STATUS_BLOCK_DOES_NOT_EXIST, PT_STATUS_NOT_PERMITTED,
PT_STATUS_BLOCK_LOCKED_BY_OTHER}
Parameters:
--------------
- SessionHandle
- General Information:
Hex String Session
Handle
Qualifiers:
-------------
Required
IN
OctetString
MaxLen=16
- BlockHandle
- General Information:
Identifies the allocated block of ISV
storage being
locked.
Qualifiers:
-------------
Required
IN
GetWriteEraseLimit
public uint32 GetWriteEraseLimit([OUT]uint32 WriteEraseLimit)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Returns the
number of currently available write
operations.
Qualifiers:
-------------
ValueMap={0,
1}
Values={PT_STATUS_SUCCESS,
PT_STATUS_INTERNAL_ERROR}
Parameters:
--------------
- WriteEraseLimit
- General Information:
This value indicates the number of write
operations that are guaranteed to succeed before the Flash wear-out
protection mechanism will disable subsequent write
operations.
Qualifiers:
-------------
OUT
Get
public Get([OUT]AMT_ThirdPartyDataStorageService Instance)
- Permission Information:
Permitted realms:
ADMIN_SECURITY_STORAGE_REALM
General Information:
Gets the
representation of the instance
Pull
public Pull([IN]String EnumerationContext, [IN]String MaxElements)
- Permission Information:
All users permitted to use method, only
instances to whom the user has permissions will be returned
General
Information:
Pulls instances of this class, following an Enumerate
operation
Enumerate
public Enumerate()
- Permission Information:
All users permitted to use
method
General Information:
Enumerates the instances of this
class
Release
public Release([IN]String EnumerationContext)
- Permission Information:
All users permitted to use
method
General Information:
Releases an enumeration
context