225 lines
4.3 KiB
C
225 lines
4.3 KiB
C
#ifndef _SUNYARD_H_
|
|
#define _SUNYARD_H_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
#if (defined(_WIN32) || defined(_WIN64)) && !defined(__WIN__)
|
|
#define __WIN__
|
|
#endif
|
|
|
|
#define DLL_EXPORT
|
|
|
|
#ifdef __WIN__
|
|
#ifdef DLL_EXPORT
|
|
#define DLL_DECLARE __declspec(dllexport)
|
|
#else
|
|
#define DLL_DECLARE __declspec(dllimport)
|
|
#endif
|
|
#define DEVAPI __stdcall
|
|
#else
|
|
#define DEVAPI
|
|
#define DLL_DECLARE __attribute__((visibility("default")))
|
|
#endif
|
|
|
|
/*log level*/
|
|
#define LOG_LEVEL_0 0
|
|
#define LOG_LEVEL_1 1
|
|
#define LOG_LEVEL_2 2
|
|
#define LOG_LEVEL_3 3
|
|
|
|
/*sm4 operate*/
|
|
#define SM4_ENCRYPT 1
|
|
#define SM4_DECRYPT 0
|
|
|
|
/*batch data package serial number*/
|
|
#define PKG_ONLY_ONE 0
|
|
#define PKG_FIRST 1
|
|
#define PKG_MIDDLE 2
|
|
#define PKG_LAST 3
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SetLogConfig(
|
|
const char *pcLogPath,
|
|
int iLogPathLen,
|
|
int iLogLevel);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_Connect_Ex(
|
|
const char *pcIpList[],
|
|
int iPortList[],
|
|
int iSize,
|
|
int iConnectTimeout,
|
|
int iDealTimeOut,
|
|
int iThreadCount,
|
|
void** phHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_DisConnect_Ex(
|
|
void* phHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_GetVersionInfo(
|
|
void* phHandle,
|
|
char* pcVersion,
|
|
int* piVersionLen);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_ShortData(
|
|
void* phHandle,
|
|
int iKeyIndex,
|
|
char* pcData,
|
|
int iDataLen,
|
|
int iFlag,
|
|
char* pcOutData,
|
|
int* piOutDataLen);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_BatchData(
|
|
void* phHandle,
|
|
int iKeyIndex[],
|
|
char* pcData[],
|
|
int iDataLen[],
|
|
int iSize,
|
|
int iFlag,
|
|
char* pcOutData[],
|
|
int iOutDataLen[]);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_LongDataInit(
|
|
int iKeyIndex,
|
|
int iFlag,
|
|
void** phProcHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_LongDataUpdate(
|
|
void* phHandle,
|
|
char* pcData,
|
|
int iDataLen,
|
|
char* pcOutData,
|
|
int* piOutDataLen,
|
|
void* phProcHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_LongDataFinal(
|
|
void* phHandle,
|
|
char* pcOutData,
|
|
int* piOutDataLen,
|
|
void* phProcHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM3_Hash_ShortData(
|
|
void* phHandle,
|
|
char* pcData,
|
|
int iDataLen,
|
|
char* pcHash);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM3_Hash_Init(
|
|
void** phHash);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM3_Hash_Update(
|
|
void* phHandle,
|
|
char* pcData,
|
|
int iDataLen,
|
|
void* phHash);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM3_Hash_Final(
|
|
void* phHandle,
|
|
char* pcHash,
|
|
void* phHash);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4Mac_ShortData(
|
|
void* phHandle,
|
|
int iKeyIndex,
|
|
char* pcData,
|
|
int iDataLen,
|
|
char* pcMac,
|
|
int* piCheckRet);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4Mac_BatchData(
|
|
void* phHandle,
|
|
int iKeyIndex[],
|
|
char* pcData[],
|
|
int iDataLen[],
|
|
int iSize,
|
|
char* pcMac[],
|
|
int piCheckRet[]);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4Mac_LongDataInit(
|
|
int iKeyIndex,
|
|
void** phMac);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4Mac_LongDataUpdate(
|
|
void* phHandle,
|
|
char* pcData,
|
|
int iDataLen,
|
|
void* phMac);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4Mac_LongDataFinal(
|
|
void* phHandle,
|
|
char* pcMac,
|
|
int* piCheckRet,
|
|
void* phMac);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_CloseHandle(
|
|
void *hHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_Encrypt_Mac_ShortData(
|
|
void* phHandle,
|
|
int iEncKeyIndex,
|
|
int iCheckKeyIndex,
|
|
char* pcData,
|
|
int iDataLen,
|
|
char* pcEncData,
|
|
int* piEncDataLen,
|
|
char* pcMac);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_Decrypt_Mac_ShortData(
|
|
void* phHandle,
|
|
int iEncKeyIndex,
|
|
int iCheckKeyIndex,
|
|
char* pcEncData,
|
|
int iEncDataLen,
|
|
char* pcMac,
|
|
char* pcOutData,
|
|
int* piOutDataLen);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_Encrypt_Mac_BatchData(
|
|
void* phHandle,
|
|
int iEncKeyIndex[],
|
|
int iCheckKeyIndex[],
|
|
char* pcData[],
|
|
int iDataLen[],
|
|
int iSize,
|
|
char* pcEncData[],
|
|
int iEncDataLen[],
|
|
char* pcMac[]);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4_Decrypt_Mac_BatchData(
|
|
void* phHandle,
|
|
int iEncKeyIndex[],
|
|
int iCheckKeyIndex[],
|
|
char* pcEncData[],
|
|
int iEncDataLen[],
|
|
char* pcMac[],
|
|
int iSize,
|
|
char* pcOutData[],
|
|
int iOutDataLen[],
|
|
int iCheckRet[]);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4EncDecMac_LongDataInit(
|
|
int iEncKeyIndex,
|
|
int iCheckKeyIndex,
|
|
int iFlag,
|
|
void** phProcHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4EncDecMac_LongDataUpdate(
|
|
void* phHandle,
|
|
char* pcData,
|
|
int iDataLen,
|
|
char* pcOutData,
|
|
int* piOutDataLen,
|
|
void* phProcHandle);
|
|
|
|
DLL_DECLARE int DEVAPI SYD_SM4EncDecMac_LongDataFinal(
|
|
void* phHandle,
|
|
char* pcOutData,
|
|
int* piOutDataLen,
|
|
char* pcMac,
|
|
void* phProcHandle);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif |