blob: 07aaa12dc7a34080d91ae1a0d0752b9289a9e3ac [file] [log] [blame]
Kai Tietz9d937a72007-08-10 10:41:48 +00001/**
2 * This file has no copyright assigned and is placed in the Public Domain.
Rafaël Carré8a67ab42012-06-28 15:40:59 +00003 * This file is part of the mingw-w64 runtime package.
Kai Tietzf29f1a32010-01-15 21:15:53 +00004 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
Kai Tietz9d937a72007-08-10 10:41:48 +00005 */
6#ifndef __rkeysvcc_h__
7#define __rkeysvcc_h__
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13 typedef void *KEYSVCC_HANDLE;
14
15 typedef enum _KEYSVC_TYPE {
16 KeySvcMachine,KeySvcService
17 } KEYSVC_TYPE;
18
19 typedef struct _KEYSVC_UNICODE_STRING {
20 USHORT Length;
21 USHORT MaximumLength;
22 USHORT *Buffer;
23 } KEYSVC_UNICODE_STRING,*PKEYSVC_UNICODE_STRING;
24
25 typedef struct _KEYSVC_BLOB {
26 ULONG cb;
27 BYTE *pb;
28 } KEYSVC_BLOB,*PKEYSVC_BLOB;
29
30#define RKEYSVC_CONNECT_SECURE_ONLY 0x00000001
31
32 ULONG RKeyOpenKeyService(LPSTR pszMachineName,KEYSVC_TYPE OwnerType,LPWSTR pwszOwnerName,void *pAuthentication,void *pReserved,KEYSVCC_HANDLE *phKeySvcCli);
33 ULONG RKeyCloseKeyService(KEYSVCC_HANDLE hKeySvcCli,void *pReserved);
34 ULONG RKeyPFXInstall(KEYSVCC_HANDLE hKeySvcCli,PKEYSVC_BLOB pPFX,PKEYSVC_UNICODE_STRING pPassword,ULONG ulFlags);
35
36#ifdef __cplusplus
37}
38#endif
39#endif