Skip to content

Releases: readium/readium-lcp-server

V1.9.3

27 Aug 17:43
ada7849
Compare
Choose a tag to compare

This version introduces a new endpoint for easing subscription management (/extend).

It also brings minor enhancements:

  • It reactivates a test relative to the presence of the new version of the lcplib, that supports LCP Profile 2.
  • It clarifies the message indicating that the configuration file activates a production profile, but the executable is a test one.
  • It sets the default value of the license status register configuration property to true.
  • It clarifies the definition of renew configuration properties.

V1.9.2

09 May 12:43
Compare
Choose a tag to compare

This version brings some lightweight improvements:

  • In go.mod, indicate go1.19 support.
  • update dependencies, especially the crypto ones.
  • Filter custom properties in the user section of a partial license, as we this code cannot handle such custom properties.
  • Reset the potential rights end datetime when a license has expired or is cancelled or revoked.
  • Add a Test mode and a Test route that returns the last license generated. This is to avoid putting in place a License Gateway for simple tests of the server.
  • In the endpoint that returns an encrypted publication, set Content-Disposition to a sensible value if the content was stored by lcpencrypt.
  • Add precisions in the readme.

V1.9.1

09 May 10:12
4220110
Compare
Choose a tag to compare

Add the long promised PostgreSQL integration.

V1.9.0

01 Jan 21:27
Compare
Choose a tag to compare

LCP Server:

  • Can manage 2.x EDRLab LCP Profiles.
  • Can send logs to a Slack channel. Users must add Slack access keys to the configuration file. This will be especially useful for client-server LCP certification.
  • Can serve static files via http. The source directory is configured via the new "resources" config parameter available in the "lcp" section. This is especially useful to serve cover files generated by LCP Encrypt and displayed by the new Pubstore application.
  • Can delete a content item via the REST API.
  • Does not display http logs anymore.
  • Correctly escapes EPUB resource file paths when stored as URIs in encryption.xml
  • Displays the version of the executable and version of the LCP profile.

LCP Encrypt:

  • Can extract the cover image from an EPUB file and copy it to the same directory as the encrypted file. Users must add the "-cover" parameter to the command line.
  • Can notify a Content Management System (CMS) about the encryption of a file. Users must add the "-notify" parameter to the command line.
  • Can notify an LCP Server v2, which has a different notification API. Users must add the boolean "-v2" parameter to the command line.
  • Can display the notification message sent to the LCP Server and/or CMS. Users must add the boolean "-verbose" parameter to the command line.

Plus:

  • Dependencies have been updated.
  • The README ad Wiki have been updated.

Version 1.8.1

16 Mar 10:41
Compare
Choose a tag to compare

Fix of the workaround related to the new "cert_date" parameter.

Version 1.8.0

13 Mar 09:50
Compare
Choose a tag to compare
  • add multidb functionality to the db access level.
  • integrate an MS SQL Server variant, using github.com/denisenkom/go-mssqldb
  • make renew_page_url config param a URL template, with a {license_id} parameter
  • make lsd problem details conformant to the spec: add a type on every detail that is returned to a device.
  • raise an error when generating a license with an improper profile.
  • offer a workaround to an issue related to the validity of licences after an X509 cert update. The issue comes from an incorrect interpretation in the mobile LCP client library of the test of date of license vs dates of validity of the provider certificate. To fix the issue in the short term, we published a workaround in the LCP Server, which requires the use of the new "cert_date" config parameter.
  • move the Test Frontend Server config details from the readme to the wiki.
  • add a favicon to the Test Frontend Server.
  • on the Test Frontend Server, avoid binding the port to the specified hostname resolved IP address.

Version 1.7.0

23 Sep 08:11
Compare
Choose a tag to compare

lcpencrypt:

  1. Add the possibility to choose a storage filename different from the unique identifier of the content
  2. Add the possibility to specify a content encryption key, in order to manage content update without the need to regenerate licenses associated with this content.
  3. Add a way for license providers to manage loan extensions via their own rules.
  4. Add the support of .webpub for packaged web publications

lspserver:

Stop returning renew and return links in status documents for revoked or cancelled licenses.

general:

Update install instructions in the readme.

Version 1.6.0

04 Feb 09:32
bff371c
Compare
Choose a tag to compare
  • Restores the capability for the lcpencrypt utility to fetch the input file from a remote http server.

  • Offers an alternative way to store encrypted publications: the lcpencrypt utility can now store an encrypted publication to its final storage location (file system or S3 bucket), and does not rely on the License Server to do so. In such a case, the lcpencrypt utility notifies the lcpserver of the encryption of a new publication with its storage URL as a parameter.

An implementer can therefore control storage folders or S3 buckets as he needs, e.g. use one folder/bucket per month, one folder/bucket per type of publication, even one folder/bucket per publication if this is his choice.

The evolution is totally backward compatible, i.e. implementers are able to keep their current architecture and configuration file. They are also able to move to the new architecture without the requirement to change the structure or content of their active database. Implementers willing to move to the new architecture will just have to modify their config file, restart their lcpserver and use lcpencrypt with new parameters.

Version 1.5.0

13 Sep 12:02
626f496
Compare
Choose a tag to compare
  • Handle the processing of .webpub files (Readium Packaging Format), especially when they contain PDF fields (with metadata and cover); as described in issue Encryption tool: Handle RPF files with PDF content #247.
  • Fix a regression on the encryption of PDF file which appeared in v1.4.1, described in issue Regression: PDF encryption fails #255
  • Fix the creation of a fake ("0001/01/01") date published in the generated manifest when a PDF file is encrypted.

Version 1.4.1

18 Aug 18:26
a409f41
Compare
Choose a tag to compare
  • Encryption: optimization on huge files
  • RWPM: duration as a float
  • LPF: protection against a link not being a resource in the zip
  • Bump of some frontend dependencies