2 IDL definitions from original packet-dcerpc-efs.c
3 by Jean-Baptiste Marchand
6 /* import "security.idl";*/
9 uuid("c681d488-d850-11d0-8c52-00c04fd90f7e"),
11 pointer_default(unique)
15 WERROR EfsRpcOpenFileRaw
(
16 [out,ref] policy_handle
*pvContext
,
17 [in] [charset
(UTF16
),string] uint16 FileName
[],
21 WERROR EfsRpcReadFileRaw
(
22 [in,ref] policy_handle
*pvContext
27 WERROR EfsRpcWriteFileRaw
(
28 [in,ref] policy_handle
*pvContext
33 [in,out,ref] policy_handle
*pvContext
36 WERROR EfsRpcEncryptFileSrv
(
37 [in] [charset
(UTF16
),string] uint16 Filename
[]
40 WERROR EfsRpcDecryptFileSrv
(
41 [in] [charset
(UTF16
),string] uint16 FileName
[],
47 [size_is(cbData
), unique] uint8
*pbData
;
52 [unique] dom_sid
*pUserSid
;
53 [unique] EFS_HASH_BLOB
*pHash
;
54 [unique] [charset
(UTF16
),string] uint16
*lpDisplayInformation
;
55 } ENCRYPTION_CERTIFICATE_HASH
;
59 /* this is a pointer to an array of pointers */
60 [size_is(nCert_Hash
)] ENCRYPTION_CERTIFICATE_HASH
*pUsers
[*];
61 } ENCRYPTION_CERTIFICATE_HASH_LIST
;
63 WERROR EfsRpcQueryUsersOnFile
(
64 [in] [charset
(UTF16
),string] uint16 FileName
[],
65 [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST
**pUsers
68 WERROR EfsRpcQueryRecoveryAgents
(
69 [in] [charset
(UTF16
),string] uint16 FileName
[],
70 [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST
**pRecoveryAgents
73 WERROR EfsRpcRemoveUsersFromFile
(
74 [in] [charset
(UTF16
),string] uint16 FileName
[]
75 /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/
78 WERROR EfsRpcAddUsersToFile
(
79 [in] [charset
(UTF16
),string] uint16 FileName
[]
80 /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/
84 uint32 dwCertEncodingType
;
86 [size_is(cbData
)] [unique] uint8
*pbData
;
87 } EFS_CERTIFICATE_BLOB
;
91 [unique] dom_sid
*pUserSid
;
92 [unique] EFS_CERTIFICATE_BLOB
*pCertBlob
;
93 } ENCRYPTION_CERTIFICATE
;
95 WERROR EfsRpcSetFileEncryptionKey
(
96 [in] [unique] ENCRYPTION_CERTIFICATE
*pEncryptionCertificate
99 WERROR EfsRpcNotSupported
(
102 WERROR EfsRpcFileKeyInfo
(
105 WERROR EfsRpcDuplicateEncryptionInfoFile
(