Virbox SDK  2.1
结构体 | 宏定义 | 类型定义 | 枚举 | 函数
E:/new_work/branches/ss_v2.0/include_out/ss_lm_control.h 文件参考

深思Control API 用于查询许可,查询加密锁等操作. 对应动态库: slm_control.dll 对应静态库: slm_control_api.lib 更多...

#include "ss_define.h"

浏览源代码.

结构体

struct  _ST_LOCK_LED_CONTROL
 

宏定义

#define SLM_FIXTIME_RAND_LENGTH   8
 
#define SLM_CTRL_LED_COLOR_BLUE   0
 
#define SLM_CTRL_LED_COLOR_RED   1
 
#define SLM_CTRL_LED_STATE_CLOSE   0
 
#define SLM_CTRL_LED_STATE_OPEN   1
 
#define SLM_CTRL_LED_STATE_SHRINK   2
 
#define SLM_CTRL_MAX_CLOUD_SERVER_LENGTH   100
 
#define SLM_CTRL_MAX_ACCESS_TOKEN_LENGTH   64
 
#define SLM_SLOCK_LICKEY_LENGTH   32
 
#define SLM_SLOCK_OFFLINE_UNBIND_C2D_BUF_LENGTH   4096
 

类型定义

typedef struct _ST_LOCK_LED_CONTROL ST_LOCK_LED_CONTROL
 
typedef enum
_ENUM_LICENSE_KEY_STATUS 
ENUM_LICENSE_KEY_STATUS
 

枚举

enum  _ENUM_LICENSE_KEY_STATUS {
  ENUM_LICENSE_KEY_UNKNOW = 0, ENUM_LICENSE_KEY_NORMAL = 1, ENUM_LICENSE_KEY_UPDATE = 2, ENUM_LICENSE_KEY_DELETE = 3,
  ENUM_LICENSE_KEY_FORBID = 4, ENUM_LICENSE_KEY_INVALID = 5
}
 

函数

SS_UINT32 SSAPI slm_ctrl_client_open (OUT void **ipc)
 客户端打开 IPC句柄,与 Virbox许可服务 进行通信 更多...
 
SS_UINT32 SSAPI slm_ctrl_client_close (IN void *ipc)
 关闭客户端IPC句柄 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_all_description (IN void *ipc, IN INFO_FORMAT_TYPE format_type, OUT char **desc)
 获取所有硬件锁设备描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_cloud_description (IN void *ipc, IN const SS_CHAR *access_token, IN const SS_CHAR *user_guid, OUT SS_CHAR **descriptions)
 获取云锁描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_local_description (IN void *ipc, IN INFO_FORMAT_TYPE format_type, OUT char **desc)
 获取本地设备描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_remote_description (IN void *ipc, IN INFO_FORMAT_TYPE format_type, OUT char **desc)
 获取网络设备描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_license_id (IN void *ipc, IN INFO_FORMAT_TYPE type, IN const char *desc, OUT char **result)
 获取指定设备描述下的所有许可ID 更多...
 
SS_UINT32 SSAPI slm_ctrl_read_brief_license_context (IN void *ipc, IN INFO_FORMAT_TYPE type, IN const char *desc, OUT char **result)
 读取指定锁和开发商ID下的所有许可信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_pub_size (IN void *ipc, IN SS_UINT32 license_id, IN const char *desc, OUT SS_UINT32 *len)
 读取公开区大小 更多...
 
SS_UINT32 SSAPI slm_ctrl_read_pub_data (IN void *ipc, IN SS_UINT32 license_id, IN const char *desc, OUT SS_BYTE *readbuf, IN SS_UINT32 offset, IN SS_UINT32 len)
 读取用户公开内容 更多...
 
SS_UINT32 SSAPI slm_ctrl_read_license_context (IN void *ipc, IN INFO_FORMAT_TYPE type, IN SS_UINT32 license_id, IN const char *desc, OUT char **result)
 获得许可详细信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_read_session_context (IN void *ipc, IN INFO_FORMAT_TYPE type, IN const char *desc, OUT char **result)
 获取单个锁的某个开发商ID下的所有session信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_kick_session (IN void *ipc, IN const char *desc, IN SS_UINT32 session_id)
 踢除指定的许可会话 更多...
 
SS_UINT32 SSAPI slm_ctrl_clear_history (IN void *ipc, IN const char *desc)
 清理锁内许可升级历史记录(只支持硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_device_info (IN void *ipc, IN const char *desc, OUT char **result)
 获得硬件锁锁内信息(只支持硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_adjust_time_request (IN void *ipc, IN const char *desc, OUT SS_BYTE rand[SLM_FIXTIME_RAND_LENGTH], OUT SS_UINT32 *lock_time, IN OUT SS_UINT32 *pc_time)
 向硬件锁获取时钟校准请求(只支持硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_filelist_info (IN void *ipc, IN const char *desc, OUT char **result)
 获得硬件锁内文件信息(只支持硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_cert (IN void *ipc, IN const char *desc, IN CERT_TYPE cert_type, OUT SS_BYTE *cert, IN SS_UINT32 cert_size, OUT SS_UINT32 *cert_len)
 获取加密锁的证书(仅支持本地加密锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_device_cert (IN void *ipc, IN const char *desc, OUT SS_BYTE *device_cert, IN SS_UINT32 buff_size, OUT SS_UINT32 *return_size)
 获取加密锁的设备证书(当前支持云锁和硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_sense_device_cert (IN void *ipc, IN const char *desc, OUT SS_BYTE *device_cert, IN SS_UINT32 buff_size, OUT SS_UINT32 *return_size)
 获取硬件锁的深思设备证书(云锁、软锁不支持) 更多...
 
SS_UINT32 SSAPI slm_ctrl_sign_by_device (IN void *ipc, IN const char *desc, IN SS_BYTE *verify_data, IN SS_UINT32 verify_data_size, OUT SS_BYTE *signature, IN SS_UINT32 signature_buf_size, OUT SS_UINT32 *signature_size)
 设备正版验证(仅支持硬件锁) 更多...
 
SS_UINT32 SSAPI slm_ctrl_led_control (IN void *ipc, IN const char *desc, IN ST_LOCK_LED_CONTROL *led_ctrl)
 硬件锁设备指示灯控制 更多...
 
void SSAPI slm_ctrl_free (IN void *buffer)
 释放API生成的缓冲区 更多...
 
SS_UINT32 SSAPI slm_ctrl_query_bind_info (IN void *ipc, IN const char *desc, IN SS_UINT32 license_id, OUT char **result)
 查询软锁许可的安装信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_bind_offline_license (IN void *ipc, IN const char *desc, IN SS_UINT32 license_id)
 绑定软锁许可 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_offline_desc (IN void *ipc, OUT char **desc)
 枚举已绑定的软锁设备描述,包括本地和远程 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_offline_local_desc (IN void *ipc, OUT char **desc)
 枚举已绑定的本地软锁设备描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_get_offline_remote_desc (IN void *ipc, OUT char **desc)
 枚举已绑定的远程软锁设备描述 更多...
 
SS_UINT32 SSAPI slm_ctrl_unbind_offline_license (IN void *ipc, IN const char *desc, IN SS_UINT32 license_id)
 解绑软锁许可 更多...
 
SS_UINT32 SSAPI slm_ctrl_offline_bind_c2d (IN void *ipc, OUT SS_BYTE *bind_c2d, IN SS_UINT32 c2d_buf_size, OUT SS_UINT32 *c2d_length)
 在离线计算机上调用,获取离线绑定c2d信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_offline_unbind_c2d (IN void *ipc, IN const char *desc, IN SS_UINT32 license_id, OUT SS_BYTE *unbind_c2d, IN SS_UINT32 c2d_buf_size, OUT SS_UINT32 *c2d_length)
 在离线计算机上调用,获取离线解绑c2d信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_offline_bind_d2c (IN void *ipc, IN char *d2c)
 在离线计算机上调用,离线升级软锁许可 更多...
 
SS_UINT32 SSAPI slm_ctrl_cloud_offline_get_d2c (IN void *ipc, IN const char *desc, IN SS_UINT32 license_id, IN SS_BYTE *bind_c2d, IN SS_UINT32 c2d_length, OUT char **result)
 在联网计算机上调用,从云平台获取离线许可升级包 更多...
 
SS_UINT32 SSAPI slm_ctrl_cloud_offline_unbind (IN void *ipc, IN const char *user_guid, IN SS_BYTE *unbind_c2d, IN SS_UINT32 c2d_length)
 在联网计算机上调用,从云平台解绑离线许可 更多...
 
SS_UINT32 SSAPI slm_ctrl_bind_license_key (IN void *ipc, IN const char *license_key)
 在联网计算机上调用,在线绑定授权码许可 更多...
 
SS_UINT32 SSAPI slm_ctrl_slock_refresh_license (IN void *ipc, IN char *desc, IN SS_UINT32 license_id, IN char *license_key)
 刷新当前软锁许可信息 更多...
 
SS_UINT32 SSAPI slm_ctrl_update (char *d2c_pkg, char **error_msg)
 将D2C包进行升级,D2C包 由 D2CAPI 生成 更多...
 
SS_UINT32 SSAPI slm_ctrl_update_ex (SS_BYTE *lock_sn, char *d2c_pkg, char **error_msg)
 将 D2C包 进行升级,需指定加密锁唯一序列号,D2C包 由 D2CAPI 生成 更多...
 
SS_UINT32 SSAPI slm_ctrl_init_cloud_server_config (IN const char *cloud_server_config)
 设置云服务地址 更多...
 

详细描述

深思Control API 用于查询许可,查询加密锁等操作. 对应动态库: slm_control.dll 对应静态库: slm_control_api.lib

枚举所有SS上设备描述符号等操作,调用顺序如下:

第一步、通过调用slm_client_open打开IPC句柄
第二步,通过调用slm_ctrl_get_all_description、slm_get_cloud_description等函数,获取设备描述、云锁描述
第三步、调用其他API,获取其他相关信息
第四步、调用slm_client_close关闭IPC句柄,调用结束
版本
2.1.0
日期
2014-2017

在文件 ss_lm_control.h 中定义.

宏定义说明

#define SLM_CTRL_LED_COLOR_BLUE   0

硬件锁闪灯颜色:蓝色

在文件 ss_lm_control.h39 行定义.

#define SLM_CTRL_LED_COLOR_RED   1

硬件锁闪灯颜色:红色

在文件 ss_lm_control.h41 行定义.

#define SLM_CTRL_LED_STATE_CLOSE   0

硬件锁闪灯控制:关闭

在文件 ss_lm_control.h44 行定义.

#define SLM_CTRL_LED_STATE_OPEN   1

硬件锁闪灯控制:打开

在文件 ss_lm_control.h46 行定义.

#define SLM_CTRL_LED_STATE_SHRINK   2

硬件锁闪灯控制:闪烁

在文件 ss_lm_control.h48 行定义.

#define SLM_CTRL_MAX_ACCESS_TOKEN_LENGTH   64

云锁用户token最大长度

在文件 ss_lm_control.h53 行定义.

#define SLM_CTRL_MAX_CLOUD_SERVER_LENGTH   100

云锁服务器地址最大长度

在文件 ss_lm_control.h51 行定义.

#define SLM_FIXTIME_RAND_LENGTH   8

锁时钟修复时随机数的最大长度

在文件 ss_lm_control.h35 行定义.

#define SLM_SLOCK_LICKEY_LENGTH   32

授权码的最大长度

在文件 ss_lm_control.h56 行定义.

#define SLM_SLOCK_OFFLINE_UNBIND_C2D_BUF_LENGTH   4096

软锁离线解绑c2d缓冲区最小长度

在文件 ss_lm_control.h59 行定义.

类型定义说明

授权码许可的状态

硬件锁闪灯控制结构

枚举类型说明

授权码许可的状态

枚举值
ENUM_LICENSE_KEY_UNKNOW 

未知

ENUM_LICENSE_KEY_NORMAL 

正常

ENUM_LICENSE_KEY_UPDATE 

软件厂商有更新

ENUM_LICENSE_KEY_DELETE 

软件厂商删除

ENUM_LICENSE_KEY_FORBID 

软件厂商禁用

ENUM_LICENSE_KEY_INVALID 

无效(不存在该授权码)

在文件 ss_lm_control.h73 行定义.