cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
TrinityTonic
Level 5

Understanding capability requests, renewals and the "incremental" flag

Our software product consists of several licensed applications which will all query our internal license proxy that in turn uses the FNE SDK to perform licensing operations. Thus applications can use the same interface for licensing operations (e.g. acquire license) and only our licensing proxy is actually connected to the FNE Client SDK.

With the planned use of license server(s) as opposed to only offline capability upload (until now), the licensing proxy will now need to be able to communicate with a license server via capability exchanges. I would like to understand some things around capability requests better in order to be able to implement the client extension for license server communication.

  • client has feature a and b in trusted storage and generates a capability request only for feature c ( requestadddesiredfeature )
    • what will be contained inside the server's capability response given that it has the requested feature(s) and the incremental flag is not set
      • will it be feature a, b and c or will the new response (and hence then trusted storage) only contain the new feature c?
    • what will be contained inside the server's capability response if the incremental flag is set
  • when the incremental flag is set in the request for feature c, will the features that have already existed (a, b) inside the client's trusted storage be renewed or will they retain their previous expiration date?
  • what will be inside the capability response if the client does not add any features (and activation ids) to the capability request (i.e. sync)?
  • in general, how would the capability request need to look like if I wanted to maintain features a and b which are already inside trusted storage and extend only feature c without explicitly renewing feature a and b
  • how does renewal look like in general? is it a "normal" capability request just as the one that actually was used to initially get the feature from the license server?

Long story short, we kind of need a "simple" way to request a new licenses while maintaining the previous license however we also do not want to automatically renew existing licenses only because they were in trusted storage as in that case these licenses would never be returned (!= floating).

 

0 Kudos
(1) Reply
jberthold
Revenera Moderator Revenera Moderator
Revenera Moderator

HI @TrinityTonic ,

Responses include below:

  • client has feature a and b in trusted storage and generates a capability request only for feature c ( requestadddesiredfeature )
    • what will be contained inside the server's capability response given that it has the requested feature(s) and the incremental flag is not set
      • will it be feature a, b and c or will the new response (and hence then trusted storage) only contain the new feature c?
      • Only the new feature c
    • what will be contained inside the server's capability response if the incremental flag is set
    • The response will contain features a, b and c
  • when the incremental flag is set in the request for feature c, will the features that have already existed (a, b) inside the client's trusted storage be renewed or will they retain their previous expiration date?
  • All features will be renewed
  • what will be inside the capability response if the client does not add any features (and activation ids) to the capability request (i.e. sync)?
  • If the incremental flag is not set, there will be no features included in the response (Trusted Storage will be cleared when the response is processed).  If the incremental flag is set, the response will contain all all existing features with a renewed expiry.
  • in general, how would the capability request need to look like if I wanted to maintain features a and b which are already inside trusted storage and extend only feature c without explicitly renewing feature a and b
  • This is not currently possible.  Note we have heard this request from other customers and are investigation changes to support his behavior.   
  • how does renewal look like in general? is it a "normal" capability request just as the one that actually was used to initially get the feature from the license server?
  • The simplest method to renew all existing features is to perform an incremental request without specifying any features.  Alternatively you can perform a non-incremental request containing all existing features. 

Best regards,

Jim

0 Kudos