- Revenera Community
- FlexNet Embedded
- FlexNet Embedded Forum
- Re: Multiple trusted storage sources (internal, dongle, ...)
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Printer Friendly Page
Multiple trusted storage sources (internal, dongle, ...)
We currently use the FlexNet C SDK on our embedded devices. These currently work either with the internal trusted storage on the device as the license source (using the device's serial number as host and binding id) - or using a license dongle as the license source (using the dongle's serial number as host and binding id). However in future we plan to use both license sources at the same time. While discussing this use-case some questions arose which we hope you can answer.
Is it technically possible / feasible use two 'trusted storage'-based license sources such as the internal trusted storage and the trusted storage on a license dongle simultaneously? In my understanding we would have two separate trusted-storage-based license sources which we need to initialize. Each trusted storage itself has an anchoring and storage file bound to the specific device's or dongle's serial number respectively. I don't fully understand how we would need to set the host id and binding id callouts in case we wanted to use both storages simultaneously.
Does the 'capabiality response processing' functionality automatically determine if a capability response has been created for internal storage / license dongle and update the corresponding trusted storage? Or do I need to 'manually' determine which specific trusted storage source it was created for (e.g. by trying to upload to each available source in a defined order and checking which one succeeds first).
When 'aquiring' a license, we assume that the FlexNet Embdedded code internally queries all available sources in a defined order? If we created two trusted-storage based sources, it would search both of these to check wheter the to-be-acquired license exists?
Hi @TrinityTonic Thanks for opening a support Case 02739791, this issue is tracked under this case.
@jberthold - do you maybe see any way to do this?
Basically what we want to do is to have trusted storage license sources (each with its own distinct path, binding and hostid). However apparently two sources of the same type (trusted storage) cannot be added to the same collection.
Hi @TrinityTonic ,
FlexNet Embedded does support "multi-source" trusted storage, however it was designed to address having multiple license sources (such as direct activation with FlexNet Operations, and Local or Cloud License Servers). In this scenario Trusted Storage is in a single location however it can be segmented to store the licenses from multiple sources to prevent licenses from source A being overwritten when license are obtained form source B.
I'm not saying what you are asking is not technically possible, however it may require a significant amount of effort to have two distinct license manager objects as the licensing objects, handles, etc. would need to be managed separately from one another. When acquiring licenses locally you'd also have to try first with one set of objects and then repeat with the other. If you still want to pursue this route my recommendation would be to get in touch with your Revenera sales representative to scope out an engagement/proof of concept with our Services organization as this is an atypical use case.
Hi @jberthold - thanks! Yea that's what we are doing now. As we cannot have two license sources of the same type (trusted storage) inside a source collection we are now having two completely separate source collections.
Now, whenever the user is acquiring a license, the functionality is wrapped and internally our licensing component will iterate over all existing source collections, switch the source environment (i.e. set the corresponding host and binding id and paths) and then perform the actual function. The same applies for all other licensing functionalities. FNE SDK does not offer having multiple host ids, binding ids and paths at the same time as the callbacks can only be set once. Thus the environment has to be setup accordingly before every licensing operation.
One thing we first missed was that each source collection needs its own publisher object resource. That one cannot be shared between multiple sources - although one might think that the source collections could have the same publisher.