MathFlow licensing

MathFlow requires access to a license file in order to function. There are 3 types of MathFlow licenses — Evaluation, Fixed, and Concurrent (or Floating). Depending on the type of license, the license file may be located on the same machine where MathFlow is running, or it may be accessed via a central license server on a network.

Evaluation license

A MathFlow Evaluation license expires on a specific date determined when we generate the license. This type of license is most commonly used for demonstrations and evaluations of the product. Further information on evaluation licenses, including how to obtain one, can be found in the following Evaluation license section.

Fixed license

A Fixed license is one of two permanent license types usable with MathFlow. The fixed license is tied to a specific computer. You send in a "hostid" from the machine, and we will send back a license only usable on that machine. Further details on Fixed licenses, including how to locate your hostid, can be found in the Permanent licenses section.

Concurrent license

A MathFlow Concurrent (or floating) license uses a license server machine. You send in an IP address and "hostid" for the server, and we will send back a license tied to that IP address. You then place copies of the license on all the client machines (these copies tell the client where the server is) and on the license server. When a client machine needs a license, it contacts the server and "checks out" the license. When the license is no longer required, it is checked back in. With this approach, several people can share a single license, provided they don't use it at the same time. Further details on Concurrent licenses can be found in the Permanent licenses section.

To request a MathFlow evaluation license, contact our sales staff. Once you have obtained the license file, place it in

<path-to-xmetal>\Author\MathFlow

in your MathFlow installation. You will then be able to try MathFlow for a period of 30 days. To check on the expiration of this evaluation license, use the About MathFlow Editor entry on the Help menu in the MathFlow Editor or the About MathFlow entry on the MathFlow menu in the XMetaL Editor.

As we noted previously, MathFlow supports two kinds of permanent licenses, Fixed and Concurrent. In both cases, MathFlow uses a special identifier called a 'hostid' to associate a license file to a particular machine. Each hostid is unique to a particular computer, and can only be determined by either running a special utility program distributed with MathFlow (see below) or by checking the About MathFlow box from the XMetaL MathFlow menu.

Obtaining a permanent license, either fixed or concurrent, is therefore a two-step process. First, you install MathFlow without a license. Though MathFlow Editor itself won't run, you can check the About Box and/or run the host id utility to determine the hostid for your computer. You then report the hostid to us and we'll issue your permanent license files.

MathFlow uses FlexNet™ license management software from Flexera. See the FlexNet License Server Files for documentation concerning the use of its hostid utilities and license server. These Server Files, documentation, and License Server Manager are included in the appropriate ZIP:

Fixed license

To obtain and install a Fixed license, follow these steps:

  1. Install MathFlow as described in the Installation section.
  2. Obtain the hostid of the machine that will use MathFlow. You can do this either by opening the About MathFlow box from the XMetaL MathFlow menu, or by running the lmhostid utility. The lmhostid utility is located at <path-to-xmetal>\Author\MathFlow\resources\lmhostid.exe and must be run from a command (DOS) shell. Regardless of whether you use the About Box or lmhostid utility, we recommend you cut-and-paste the hostid returned in order to minimize transcription errors. If more than one hostid is reported by lmhostid, just use the first one.
  3. Contact our sales staff with the hostid.
  4. We'll then issue a fixed license file which should be renamed to dessci.lic, if it's not already so-named when you receive it. This license file should be placed in <path-to-xmetal>\Author\MathFlow on the machine where you want to use MathFlow.
  5. If you are using a 64-bit JRE, you need to replace the file
    <XMetaL's Author dir>/lmgr11.dll with the DLL located in the directory
    <XMetaL's Author dir>/MathFlow/resources/64bitDLL/.

Concurrent license

To obtain and install a Concurrent license, follow these steps:

  1. Install MathFlow as described in the installation page on the client machines where MathFlow will run.
  2. Obtain the hostid of the machine that will run the license server program. Note this does not have to be a machine where MathFlow is installed. To obtain the hostid of the license server, copy the lmhostid utility from a machine where MathFlow is installed to the server machine. The lmhostid utility is located at the following path and must be run from a command (DOS) shell: <path‑to‑xmetal>\Author\MathFlow\resources\lmhostid.exe. We recommend you cut-and-paste the hostid returned in order to minimize transcription errors.
  3. Determine the IP address of the license server.
  4. Record the operating system of the license server.
  5. Contact our sales staff with the information collected in the steps above.
  6. We will issue a master concurrent license file which should be renamed to dessci.lic. Copies of this file must be placed on each client machine in the <path‑to‑xmetal>\Author\MathFlow directory. On the client, this file merely instructs MathFlow how to contact the license server.
  7. In addition, the master license file must be installed on the license server machine along with the server software. For details about installing and running the license server, consult the next section.

This section is a brief outline on how to install and run a License Server for MathFlow. The subject is relevant only if you are using concurrent licensing.

Install the license manager daemon

Follow the steps below to set up the License Server:

  1. When licensing MathFlow, you should have received a concurrent license file and renamed it dessci.lic.
  2. In addition, MathFlow requires two special executables for MathFlow's License Daemon and FlexNet's License Manager Daemon software:
    • MathFlow's License Daemon - named dessci.exe
    • FlexNet's License Manager Daemon - named lmgrd.exe
  3. These executables are included in the ZIP file you downloaded above.
  4. Install your License Manager software into a directory of your choice on the appropriate machine.
  5. Place our License Daemon (dessci.exe), the FlexNet License Manager Daemon (lmgrd.exe) and a copy of the license the same directory.
  6. The MathFlow license file (dessci.lic) must also be placed in <path-to-xmetal>\Author\MathFlow on the machine where you want to use MathFlow, as instructed in the previous section, Permanent licenses.

If you are already using a FlexNet license server on the machine you got the License File for, you could keep using it for MathFlow licenses. Note, however, the License Manager Daemon should be of a newer version than the FlexNet version MathFlow uses. This is v11.10, so if your FlexNet License Manager is older than that, you would still need to install the newer version. Flexera recommends you always use the latest version of their License Manager.

Start the license manager daemon

The precise command for actually starting the Daemon depends on your platform. Below is a brief outline, and more details on the License Server Manager can be found in the ZIP you downloaded from the link above.

Manually from a command line

Start lmgrd as an application from a Windows command shell using the following syntax:

C:\flexlm> lmgrd -c dessci.lic -L [+]debug_log_path

where dessci.lic is the license file you have obtained from us and debug_log_path is the full path to the debug log file. Prepending debug_log_path with the + character appends logging entries. Spaces in pathnames require double quotes around the path.  

As a Windows service

To configure a license server as a service, you must have Administrator privileges.

  1. Install and run LMTOOLS (see below).
  2. Click the Configuration using Services radio button, then click the Config Services tab.
  3. In the Service Name, type the name of the service you want to define, for example, Design Science License Manager.
  4. In the Path to the lmgrd.exe file field, enter or browse to lmgrd.exe for this license server.
  5. In the Path to the license file field, enter or browse to the dessci.lic file.
  6. In the Path to the debug log file field, enter or browse to the debug log file this license server writes. Prepending the debug log file name with the + character appends logging entries.
  7. To save the new License Manager service, click the Save Service button. 

Manually from LMTOOLS

A graphical user interface to the license manager tools, called LMTOOLS (originally by Macrovision), is part of the download linked above.

Some of the functions LMTOOLS performs include:

  • starting, stopping, and configuring FlexNet license servers
  • getting system information, including hostids
  • getting server status.

In order to control the operation of lmgrd from the LMTOOLS user interface, you first must configure it as a license manager service. Follow the procedure outlined above before proceeding. Once the license manager service is configured, lmgrd is started by starting the service from the LMTOOLS interface:

  1. Start LMTOOLS.
  2. Click the Configuration using Services radio button.
  3. Select the service name from the list presented in the selection box. In this example, the service name is Design Science License Manager.
  4. Click the Start/Stop/Reread tab.
  5. Use the buttons on this panel to stop and start the Design Science License Manager. 

Automatically at system startup

Once again, you first must configure it as a license manager service, as described above. Then do the following:

  1. With LMTOOLS started and the desired service name selected, click the Config Services tab.
  2. Make this license manager a Windows service: check the Use Services check box.
  3. Configure it to start at system startup time by checking the Start Server at Power Up check box. From now on, when the machine is rebooted, this license manager starts automatically as a Windows service.

License server failover

If you use concurrent licensing, you may employ a simple mechanism for license server failover. In the case your primary server machine is unreachable or the license manager software is down, a redundant backup server will continue to administer your license.

To take advantage of the license server failover mechanism, you will need to request it from MathFlow tech support. We will provide you with two license files: one pointing to the main server and the other pointing to the failover server. These two files need to be copied into each client machine, as well as distributed to their corresponding servers.

The name (and path) of the second license file should be identical to the first license file, except it should have "-failover" appended before the file name extension.

Example

First license file - "C:\licenses\dessci.lic"
Second license file - "C:\licenses\dessci-failover.lic"

You have the option of changing the license file names and paths, however please contact MathFlow tech support for instructions before doing so.

Checking the license out

A MathFlow Editor license is checked out when you use the MathFlow Editor in a document. This allows you to view an XML document containing MathML without checking out a license. This is most important when using concurrent licensing. For more information on concurrent licensing, see Overview and License server.

If the license has not been checked out, the equation will appear with a gray background.
This equation has a gray background, indicating there is not a [MF] license checked out.

There are three actions that will cause the MathFlow Editor to check out a license:

  • Insert MathML (Insert Equation)
  • Edit an existing equation
  • Reload MathML Images

Once a license has been checked out, the gray background will disappear.
This equation does not have gray background, indicating a [MF] license is checked out.

If a license has been checked out, it is checked out for all documents open in XMetaL which contain MathML. Some documents may show gray equation images, but that will change if the view is refreshed. Therefore a document having gray equation images will not be a true indicator of whether or not a license is indeed checked out.

Checking the license in

There are two ways to check in a license, releasing it for others to use:

  • Close all documents open in XMetaL which contain MathML
  • Close XMetaL