modelica / Encryption-and-Licensing

Standardized Encryption of Modelica Libraries and Artifacts
BSD 3-Clause "New" or "Revised" License
3 stars 6 forks source link

mlle_tool_license: redundant package name parameter #5

Closed d94pn closed 7 months ago

d94pn commented 1 year ago

The SEMLA spec says:

"The container has one top-level directory for each contained top-level package (library)
...
Each top-level directory contains a directory “.library”.
...
If the library is encrypted, there are one or more LVEs, build with the same SSL and Randomizer keys."

So there should only be at most one package per LVE. Yet the function mlle_tool_license requires the package name as input. What is the point of that?

axelmartenssonmodelon commented 10 months ago

mlle_tool_license() is an extension point to support the requirement for "Alternative, tool specific licensing mechanisms" which the tool vendor and library vendor can agree upon. This is not part of the default implementation. Modelon doesn't use this currently.

d94pn commented 7 months ago

But the specifciation as of now is contradictory. There cannot both be a restriction of one top level package per LVE and still a useful top level package name input for the license check. Is it the following text:

In the simplified check, tool only asks for permission for the user to use an entire top-level package contents.

that should be changed to:

In the simplified check, tool only asks for permission for the user to use an entire top-level or sub package contents.

?

axelmartenssonmodelon commented 7 months ago

We want to enable the use of the same LVE binary for multiple top-level packages (Modelica Libraries)

d94pn commented 7 months ago

So it is about being forward compatible to that potential enabling of multiple top-level packaging? Makes sense to me but should be clarified in the description of the API.