unit diFirmaSat; interface { Delphi/FreePascal interface for FirmaSAT $Id: diFirmaSAT.pas $ */ Copyright (C) 2010-16 David Ireland, DI Management Services Pty Limited. All rights reserved. <www.di-mgt.com.au> <www.cryptosys.net> Provided as is with no warranties. Use at your own risk. Last updated: $Date: 2016-01-25 04:59 $ $Revision: 7.2.0 $ } function SAT_Version : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_LicenceType : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_CompileTime(szOutput : PAnsiChar; nOutChars : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_ModuleName(szOutput : PAnsiChar; nOutChars : LongInt; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_LastError(szOutput : PAnsiChar; nOutChars : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_ErrorLookup(szOutput : PAnsiChar; nOutChars : LongInt; nErrCode : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_MakePipeStringFromXml(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_MakeSignatureFromXml(szOut : PAnsiChar; nOutChars : LongInt; szInputXmlFile : AnsiString; szKeyFile : AnsiString; szPassword : AnsiString) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_MakeSignatureFromXmlEx(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; szKeyFile : AnsiString; szPassword : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_ValidateXml(szXmlFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_VerifySignature(szXmlFile : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_SignXml(szOutputFile : AnsiString; szInputXmlFile : AnsiString; szKeyFile : AnsiString; szPassword : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_MakeDigestFromXml(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_ExtractDigestFromSignature(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetCertNumber(szOut : PAnsiChar; nOutChars : LongInt; szFileName : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetCertExpiry(szOut : PAnsiChar; nOutChars : LongInt; szFileName : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetCertAsString(szOut : PAnsiChar; nOutChars : LongInt; szFileName : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetXmlAttribute(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; szAttribute : AnsiString; szElement : AnsiString) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetXmlAttributeEx(szOut : PAnsiChar; nOutChars : LongInt; szXmlFile : AnsiString; szAttribute : AnsiString; szElement : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_CheckKeyAndCert(szKeyFile : AnsiString; szPassword : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_XmlReceiptVersion(szXmlFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_FixBOM(szOutputFile : AnsiString; szInputFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_GetKeyAsString(szOut : PAnsiChar; nOutChars : LongInt; szKeyFile : AnsiString; szPassword : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_WritePfxFile(szOutputFile : AnsiString; szPfxPassword : AnsiString; szKeyFile : AnsiString; szKeyPassword : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_QueryCert(szOut : PAnsiChar; nOutChars : LongInt; szFileName : AnsiString; szQuery : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_SignXmlToString(szOut : PAnsiChar; nOutChars : LongInt; szXmlData : AnsiString; szKeyFile : AnsiString; szPassword : AnsiString; szCertFile : AnsiString; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; function SAT_Uuid(szOut : PAnsiChar; nOutChars : LongInt; nOptions : LongInt) : LongInt; stdcall; external 'diFirmaSAT2.dll'; const { OPTION FLAGS AND CONSTANTS } SAT_HASH_DEFAULT = 0; SAT_HASH_MD5 = $10; SAT_HASH_SHA1 = $20; SAT_DATE_NOTBEFORE = $1000; SAT_TFD = $8000; SAT_XML_STRICT = 0; SAT_XML_LOOSE = $4000; SAT_ENCODE_UTF8 = 0; SAT_ENCODE_LATIN1 = 1; SAT_FILE_NO_BOM = $2000; SAT_KEY_ENCRYPTED = $10000; SAT_XML_EMPTYELEMTAG = $20000; SAT_FILE_BIGFILE = $8000000; SAT_GEN_PLATFORM = $40; SAT_MAX_HASH_CHARS = 64; SAT_MAX_ERROR_CHARS = (4073-1); implementation end.