国密SKF接口函数介绍之三:应用管理函数

概述
        应用管理主要完成应用的创建、枚举、删除、打开、关闭等操作。应用管理系列函数如下表所示:
表  应用管理系列函数

函数名称 功能
SKF_CreateApplication 创建应用
SKF_EnumApplication 枚举应用
SKF_DeleteApplication 删除应用
SKF_OpenApplication 打开应用
SKF_CloseApplication 关闭应用
1、创建应用
函数原型:ULONG DEVAPI SKF_CreateApplication(DEVHANDLE hDev, LPSTR szAppName, LPSTR szAdminPin, DWORD dwAdminPinRetryCount,LPSTR szUserPin, DWORD dwUserPinRetryCount,DWORD dwCreateFileRights, HAPPLICATION *phApplication)
功能描述:创建一个应用。 
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
                    szAdminPin:[IN] 管理员PIN。
                    dwAdminPinRetryCount:[IN] 管理员PIN最大重试次数。
                    szUserPin:[IN] 用户PIN。
                    dwUserPinRetryCount:[IN] 用户PIN最大重试次数。
                    dwCreateFileRights:[IN] 在该应用下创建文件和容器的权限,参见6.4.9权限类型。为各种权限的或值。
                    phApplication:[OUT] 应用的句柄。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:权限要求:需要设备权限。
2、枚举应用
函数原型:ULONG DEVAPI SKF_EnumApplication(DEVHANDLE hDev, LPSTR szAppName,ULONG *pulSize)
功能描述:枚举设备中存在的所有应用。
参        数::hDev:[IN] 连接设备时返回的设备句柄。
                     szAppName: [OUT] 返回应用名称列表, 如果该参数为空,将由pulSize返回所需要的内存空间大小。每个应用的名称以单个‘\0’结束,以双‘\0’表示列表的结束。
                     pulSize:[IN,OUT] 输入时表示应用名称的缓冲区长度,输出时返回szAppName所占用的空间大小。
返  回  值:SAR_OK:成功;其他:错误码。
3、删除应用
函数原型:ULONG DEVAPI SKF_DeleteApplication(DEVHANDLE hDev, LPSTR szAppName)
功能描述:删除指定的应用。
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:权限要求:需要设备权限。
4、打开应用
函数原型:ULONG DEVAPI SKF_OpenApplication(DEVHANDLE hDev, LPSTR szAppName, HAPPLICATION *phApplication)
功能描述:打开指定的应用。
参        数:hDev:[IN] 连接设备时返回的设备句柄。
                    szAppName:[IN] 应用名称。
                    phApplication:[OUT] 应用的句柄。
返  回  值:SAR_OK:成功;其他:错误码。
5、关闭应用
函数原型:ULONG DEVAPI SKF_CloseApplication(HAPPLICATION hApplication)
功能描述:关闭应用并释放应用句柄。
参        数:hApplication:[IN]应用句柄。
返  回  值:SAR_OK:成功;其他:错误码。
备        注:此函数不影响应用安全状态。

你可能感兴趣的:(国密标准)