Bit_GetBorrowRequest

BIT_STATUS BIT_CALLCONV Bit_GetBorrowRequest(
    BIT_PCSTR      szSN,
    BIT_UCHAR      *pApplicationData,
    BIT_UINT32     nDurationDays,
    BIT_CHAR       *pRequestInfo,
    BIT_UINT32     *pRequestInfoSize)

获取借出请求串,用来离线借出。

参数

  • szSN - [IN] 指定要借出的SN,如果为NULL,找满足条件的第一个SN。
  • pApplicationData - [IN] 产品识别码,在Bitanswer SDK头文件里。
  • nDurationDays - [IN] 借出时间。100年代表永久借出(分发),0表示产生归还串。
  • pRequestInfo - [OUT] 借出请求串缓存区地址。
  • pRequestInfoSize - [IN/OUT] 输入的是缓存区大小,输出的是示例数据的大小。

Bit_GetBorrowFeatureRequest

BIT_STATUS BIT_CALLCONV Bit_GetBorrowFeatureRequest(
    BIT_PCSTR      pReserve,
    BIT_UCHAR      *pApplicationData,
    BIT_UINT32     nDurationDays,
    BIT_PCSTR      pBorrowScope,
    BIT_CHAR       *pRequestInfo,
    BIT_UINT32     *pRequestInfoSize)

获取借出请求串,该接口支持指定特征项借出。

参数

  • pReserve - [IN] 保留,必须是NULL。
  • pApplicationData - [IN] 产品识别码,在Bitanswer SDK头文件里。
  • nDurationDays - [IN] 借出时间。
  • pBorrowScope - [IN] xml结构。
  • pRequestInfo - [OUT] 借出请求串缓存区地址。
  • pRequestInfoSize - [IN/OUT] 输入的是缓存区大小,输出的是示例数据的大小。

Scope示例

<fetaures>
    <feature id=”” days=””/>
    <feature id=”” days=””/>
    …
</features>

Bit_CheckOutSn / Bit_CheckOutSnEx

BIT_STATUS BIT_CALLCONV Bit_CheckOutSn(
    BIT_PCSTR      szURL,
    BIT_UINT32     featureId,
    BIT_UCHAR      *pApplicationData,
    BIT_UINT32     nDurationDays);

BIT_STATUS BIT_CALLCONV Bit_CheckOutSnEx(
    BIT_PCSTR      szURL,
    BIT_UINT32     featureId,
    BIT_PCSTR      pScope,
    BIT_UCHAR      *pApplicationData,
    BIT_UINT32     nDurationDays);

从授权服务器在线借出一个完整的授权码,以允许客户端服务器单独使用。被借出的授权码必须具有可借出属性,并在客户端成功借出后减少一个可用用户数。被借出的用户数在到期后将自动返还给服务器。

参数

  • szURL - [IN] 集团授权服务器地址,包括端口。如输入NULL,则使用配置文件地址;如输入 * 号,则使用广播查找地址。
  • featured - [IN] 指定借出授权码需要包含的特征项ID,为0则寻找第一个可借出授权码。
  • pApplicationData - [IN] 产品识别码。记录在接口定义文件中,与产品一一对应。
  • pScope - [IN] xml结构,允许传NULL。
  • nDurationDays - [IN] 借出时间,单位为天。借出时间不能超过被借出集团授权的强制认证周期或有效期。

Scope示例

<scope>
    <type>ws</type>
    <sn>xxx</sn>
    <featureVersion>xxx</featureVersion>
</scope>

说明:
type:借出类型。目前仅支持ws,表示从外网借出(针对云授权和集团授权)
featureVersion:借出的特征项版本
sn:指定借出的SN

Bit_CheckOut

BIT_STATUS BIT_CALLCONV Bit_CheckOut(
    BIT_PCSTR      szURL,
    BIT_PCSTR      pScope,
    BIT_PCSTR      pFeatureList,
    BIT_UCHAR      *pApplicationData,
    BIT_UINT32     nDurationDays)

从授权服务器在线借出授权码或者特征项。

参数

  • szURL 集团授权服务器地址,包括端口。如输入NULL,则从本地配置文件或者环境变量读取服务地址。
  • pScope xml结构,允许传NULL。
<scope>
    <type>ws</type>
    <sn>xxx</sn>
</scope>

说明:
type:借出类型。目前仅支持ws,表示从外网借出(针对云授权和集团授权)
sn:指定借出的SN
  • pFeatureList xml接口,指定借出的特征项列表,如果不传则借出整个SN。
<features>
    <feature id=”1” ver=”2.0”  days=”10” required=”0|1”/>   
    // id:特征项编号,ver:特征项版本,days:借出时间,   required:0可选,1必选(默认是1)
    <feature id=”10”/>
</features>

当feature指定了借出时间,则会覆盖nDurationDays该时间,没有指定,则借出nDurationDays天。

借出feature时,如果指定了版本,则直接大于等于借出版本的特征项,只借一个,如果没有指定版本,则该特征项的所有版本都借出一个。

  • pApplicationData 产品识别码。记录在接口定义文件中,与产品一一对应。
  • nDurationDays 借出时间,单位为天,最大不超过100年。
// 借出特征项1和特征项2,各借10天
BIT_STATUS status Bit_CheckOut(
    “bit://127.0.0.1:8273”,
    NULL, 
    “<features><feature id=\”1\” /><feature id=”2”/></features>”,
    Application_data,
    10);

if (status == BIT_SUCCESS) {
    // 借出成功
}

// 借出特征项1(5天) 和 特征项2(2天)
BIT_STATUS status Bit_CheckOut(
    “bit://127.0.0.1:8273”,
    NULL, 
    “<features><feature id=\”1\”  days=\”5\”/><feature id=”2” days=\”2\”/></features>”,
    application_data,
    5);

if (status == BIT_SUCCESS) {
    // 借出成功
}

Bit_CheckOutFeatures

BIT_STATUS BIT_CALLCONV Bit_CheckOutFeatures(
    BIT_PCSTR       szURL,
    BIT_UCHAR       *pApplicationData,
    BIT_UINT32      *pFeatureList,
    BIT_UINT32      nFeatureInList,
    BIT_UINT32      nDurationDays);

从集团授权服务器借出一组特征项,这些特征项必须包含在同一个授权码中。被借出的集团授权码必须具有可借出属性,并在客户端成功借出后减少一个可用用户数。被借出的用户数在到期后将自动返还给集团服务器。

参数

  • szURL - [IN] 集团授权服务器地址,包括端口。如输入NULL,则使用配置文件地址;如输入 * 号,则使用广播查找地址。
  • pApplicationData - [IN] 产品识别码。记录在接口定义文件中,与产品一一对应。
  • pFeatureList - [IN] 要借出的特征项列表。
  • nFeatureInList - [IN] 要借出的特征项数量。
  • nDurationDays - [IN] 借出时间,单位为天,最大不超过100年。

示例

// 借出特征项1和特征项2,借3天
BIT_UINT32 borrowFeature[2] = { 0 };
borrowFeature[0] = 1;
borrowFeature[1] = 2;

BIT_STATUS status = Bit_CheckOutFeatures(“bit://127.0.0.1:8273”,
                                          application_data,
                                          borrowFeature,
                                          2,
                                          3);

If (status == BIT_SUCCESS) {
    // 借出成功
} else {
    // 借出失败
}

Bit_CheckIn

BIT_STATUS BIT_CALLCONV Bit_CheckIn(
    BIT_PCSTR      szURL,
    BIT_UINT32     featureId,
    BIT_UCHAR      *pApplicationData)

提前返还从集团授权服务器借出的授权。要提前返还授权,该授权码必须具有允许提前返还属性。

参数

  • szURL - [IN] 集团授权服务器地址,包括端口。如输入NULL,则使用配置文件地址;如输入 * 号,则使用广播查找地址。
  • featureId - [IN] 指定要返还授权码需要包含的特征项ID,为0则寻找第一个可返还授权码。
  • pApplicationData - [IN] 产品识别码。记录在接口定义文件中,与产品一一对应。

Bit_CheckInEx

BIT_STATUS BIT_CALLCONV Bit_CheckInEx(
    BIT_PCSTR      szURL,
    BIT_UINT32     featureId,
    BIT_PCSTR      szScope,
    BIT_UCHAR      *pApplicationData)

提前返还从授权服务器借出的授权。要提前返还授权,该授权码必须具有允许提前返还属性。

参数

  • szURL - [IN] 集团授权服务器地址,包括端口。如输入NULL,则使用配置文件地址;如输入 * 号,则使用广播查找地址。
  • featureId - [IN] 指定要返还授权码需要包含的特征项ID,为0则寻找第一个可返还授权码。
  • xmlScope - [IN] xml结构,允许传NULL。
<scope>
    <type>ws</type>   // type:归还类型,ws表示归还到云授权服务,默认是归还到集团授权服务
</scope>

用于指定借出的参数,格式:wsxxxx,type设定为ws时表示从云授权服务器借出和归还。

  • pApplicationData - [IN] 产品识别码。记录在接口定义文件中,与产品一一对应。

Bit_ApplyBorrowInfo

BIT_STATUS BIT_CALLCONV Bit_ApplyBorrowInfo(
    BIT_UCHAR         *pApplicationData,
    BIT_PCSTR         pBorrowInfo)

客户端应用离线借出串,Bit_ApplyUpdateInfo可以兼容该接口。

参数

  • pApplicationData - [IN] 产品识别码。记录在接口定义文件中,与产品一一对应。
  • pBorrowInfo - [IN] 借出请求串。