About this Manual

This manual describes setup and maintenance of the RLM licensing system, and as such it is intended for license administrators and users at organizations which have purchased software that uses the Reprise License Manager. This manual explains how to install and configure the licensing system included with your software.

Introduction To RLM

You are most likely reading this manual because one or more of your software vendors (ISVs) have included RLM in their product(s) to enforce their license agreements. This manual describes the components of RLM that you need to understand in order to accomplish day-to-day license administration tasks.

RLM allows your organization to know that you are using purchased software within the license limits set by your ISV. In addition, RLM collects usage information (at your option) for later reporting and analysis. This usage information is provided in a fully documented report log format, described in Appendix A – RLM API of this manual.

When one of your ISVs delivers software to you that incorporates RLM, in addition to the normal application files, you will receive some additional RLM components:

  • The RLM (generic) license server provided by Reprise Software, called “rlm” on Unix systems, or “rlm.exe” on Windows. This is the same for every ISV who uses RLM.

  • The RLM utilities (“rlmutil” on Unix, “rlmutil.exe” on Windows) provided by Reprise Software. This is the same for every ISV who uses RLM.

  • A custom license server, built from components from Reprise Software by your ISV. This server will have a different name for each ISV.

  • A license file to describe your rights to the product. This license file is unique to your site.

In addition to these components which your ISV supplies, you can create an ISV options file to control various aspects of operation of each licensed product. This options file is described later in this manual. In addition, an RLM options file allows you to restrict access to various administration commands.

RLM is a client-server system, with license requests transmitted over TCP/IP from the software application to a license server that controls license usage rights.

What sets RLM apart?

RLM was designed from the start to emphasize openness, transparency, and simplicity.

RLM is open because we publish the format of our report log file, so that you can always examine and generate usage reports on licensing activity from the RLM servers.

RLM is transparent in the sense that we do not allow “back doors” which lead to unique behaviors from one ISV to another. In addition, we have removed policy from the application code, and placed it into the license key itself, so that everyone will be able to understand the license terms without having to understand a particular implementation by an ISV.

RLM is simple because we include functionality like truly automatic selection of license servers from a set of multiple, independent servers. In older license management systems, the ISV ends up writing much code to manage multiple license servers. This is handled by RLM itself.

Software License Management Basics

RLM is similar in structure to most popular license managers. RLM consists of 3 major components:

  1. A client library

  2. A license server (RLM has 2 license servers - a generic server called rlm and an ISV-specific server.)

  3. A text file which describes the licenses granted (the license file).

Your ISVs application is linked with the client library which provides access to the license management functions.

The license server is used for floating licenses and logging of usage data. You, as a License Administrator, have the ability to control certain aspects of the license server’s operations by specifying options in a file called the ISV Options File.

The RLM client library (linked into your ISVs application) and the license server are both controlled by license authorizations stored in a text file called the license file.

Most license managers provide APIs with calls to control many of the aspects of licensing behavior, as well as options within the license servers to control licensing behavior. The design philosophy of RLM is to preserve the simplicity of the system for both ISVs and License Administrators by avoiding all unnecessary options in the client library and the license servers and moving all these options to the license file, where they are visible and understandable by everyone. In general, license policy should be kept out of the application and the license server, and placed into the license itself. This makes for a more understandable licensing system for both ISVs and License Administrators. The API is simpler, and the license server performs in a more standard way from ISV to ISV. This prevents license management confusion by customers. We learned this the hard way when we supported hundreds of customers in the past and applied these lessons to the design of RLM.