-USING: alien.c-types alien.syntax kernel math windows.types
-windows.kernel32 math.bitwise classes.struct ;
+USING: alien.c-types alien.syntax classes.struct kernel
+literals math math.bitwise windows.kernel32 windows.types ;
 IN: windows.advapi32
 
 LIBRARY: advapi32
-
-CONSTANT: PROV_RSA_FULL       1
-CONSTANT: PROV_RSA_SIG        2
-CONSTANT: PROV_DSS            3
-CONSTANT: PROV_FORTEZZA       4
-CONSTANT: PROV_MS_EXCHANGE    5
-CONSTANT: PROV_SSL            6
-CONSTANT: PROV_RSA_SCHANNEL  12
-CONSTANT: PROV_DSS_DH        13
-CONSTANT: PROV_EC_ECDSA_SIG  14
-CONSTANT: PROV_EC_ECNRA_SIG  15
-CONSTANT: PROV_EC_ECDSA_FULL 16
-CONSTANT: PROV_EC_ECNRA_FULL 17
-CONSTANT: PROV_DH_SCHANNEL   18
-CONSTANT: PROV_SPYRUS_LYNKS  20
-CONSTANT: PROV_RNG           21
-CONSTANT: PROV_INTEL_SEC     22
-CONSTANT: PROV_REPLACE_OWF   23
-CONSTANT: PROV_RSA_AES       24
 
 CONSTANT: MS_DEF_DH_SCHANNEL_PROV "Microsoft DH Schannel Cryptographic Provider"
 

ALIAS: CryptAcquireContext CryptAcquireContextW

! : CryptContextAddRef ;
! : CryptCreateHash ;
! : CryptDecrypt ;
! : CryptDeriveKey ;
! : CryptDestroyHash ;


CONSTANT: MS_STRONG_PROV
    "Microsoft Strong Cryptographic Provider"

STRUCT: ACL
    { AclRevision BYTE }
