Cryptlex Documentation
  • Welcome to Cryptlex!
  • Getting Started
    • Overview
    • Licensing Models
  • License Management
    • License Templates
    • Implementing License Models
    • Creating Licenses
    • License Subscriptions
    • Custom License Fields
    • Meter Attributes
    • Suspending Licenses
    • Revoking Licenses
    • Maintenance Policies
  • Feature Management
    • Overview
    • Features and Entitlement Sets
    • License Feature Entitlements
    • Accessing Feature Entitlements
    • Use Cases
  • User Management
    • Roles
    • Creating Users
    • Authenticating Users
    • Organizations
    • Resellers
    • Customer Portal
    • Reseller Portal
    • Google SSO
    • SAML SSO
  • Release Management
    • Overview
    • Creating Releases
    • Distributing Releases
  • Node Locked Licenses
    • Overview
    • Using LexActivator
      • Using LexActivator with C, C++ and Objective C
      • Using LexActivator with C#
      • Using LexActivator with VB.NET
      • Using LexActivator with Java
      • Using LexActivator with Delphi
      • Using LexActivator with Python
      • Using LexActivator with Go
      • Using LexActivator with Node.js
      • Using LexActivator with Ruby
      • Using LexActivator with Android
      • Using LexActivator with iOS
      • Using LexActivator with Flutter
    • Using Web API
    • Offline Activations
    • Proxies and Firewall
  • Floating Licenses
    • Overview
    • Hosted Floating License Server
    • On-Premise Floating Licenses
      • LexFloatServer
      • Using LexFloatClient
        • Using LexFloatClient with C, C++ & Objective C
        • Using LexFloatClient with C#
        • Using LexFloatClient with VB.NET
        • Using LexFloatClient with Java
        • Using LexFloatClient with Delphi
        • Using LexFloatClient with Python
        • Using LexFloatClient with Node.js
        • Using LexFloatClient with Go
        • Using LexFloatClient with Android
        • Using LexFloatClient with iOS
      • Offline Floating License
  • Named User Licenses
  • Timed Trials
    • Verified Trials
    • Unverified Trials
  • Licensing Docker Apps
  • Webhooks
  • Automated Emails
  • Web Integration
    • Personal Access Tokens
    • Using Web API
    • Using Zapier
    • Using FastSpring
    • Custom Development
  • Changelog
    • Web API
    • LexActivator
    • LexFloatClient
    • LexFloatServer
  • Legal
    • Terms of Service
    • Privacy Policy
    • Subprocessors
    • Data Processing Addendum
    • Service Level Agreement
    • Security, Privacy, and Compliance
    • Open Source Licenses
  • Cryptlex On-Premise
    • Overview
    • System Requirements
    • Server Layout
    • Installation Guide
      • Docker Compose
      • Kubernetes
    • Configuring Client Libraries
    • Monitoring and Error Reporting
Powered by GitBook
On this page
  • Overview
  • Requesting an offline floating license
  1. Floating Licenses
  2. On-Premise Floating Licenses

Offline Floating License

Overview

Offline floating licenses (also known as borrowing a floating license) offer flexibility for users to continue accessing licensed functionality even when they are not connected to the LexFloatServer. This feature allows LexFloatServer to lease licenses that can be used outside the company network for a specified duration.

LexFloatServer administrators can set the maximum lease duration using the maxOfflineLeaseDuration parameter and control the number of clients that can hold an offline license lease simultaneously with the allowedOfflineFloatingClients parameter in the config.yml.

Requesting an offline floating license

The RequestOfflineFloatingLicense() function in the LexFloatClient allows users to lease an offline license from the LexFloatServer. Once the floating client is leased, it remains valid even when the user is disconnected from the company network. The floating client will automatically expire once the lease duration has elapsed.

The recommended flow for implementing the RequestOfflineFloatingLicense() function is as follows:

// Always check for existing floating license before leasing the floating license
    status = HasFloatingLicense();
    if (status == LF_OK) {
        printf("Floating license is available.\\n");
    } else {
        printf("Floating license not found: %d\\n", status);
        printf("Please enter the desired lease duration in seconds: ");
        scanf("%u", &leaseDuration); // User input for lease duration

        // Requesting an offline floating license with user-specified duration
        status = RequestOfflineFloatingLicense(leaseDuration);
        if (status != LF_OK) {
            printf("Error code: %d\\n", status);
            return status;
        } else {
            printf("Success! License acquired for %u seconds.\\n", leaseDuration);
        }
    }
PreviousUsing LexFloatClient with iOSNextNamed User Licenses

Last updated 9 months ago