FreeRDP
include/freerdp/license.h File Reference
#include <freerdp/api.h>
This graph shows which files directly or indirectly include this file:

Macros

#define LICENSE_PKT_CS_MASK   (LICENSE_INFO | NEW_LICENSE_REQUEST | PLATFORM_CHALLENGE_RESPONSE | ERROR_ALERT)
 
#define LICENSE_PKT_SC_MASK   (LICENSE_REQUEST | PLATFORM_CHALLENGE | NEW_LICENSE | UPGRADE_LICENSE | ERROR_ALERT)
 
#define LICENSE_PKT_MASK   (LICENSE_PKT_CS_MASK | LICENSE_PKT_SC_MASK)
 
#define LICENSE_PREAMBLE_LENGTH   4
 
#define CLIENT_RANDOM_LENGTH   32
 
#define SERVER_RANDOM_LENGTH   32
 
#define MASTER_SECRET_LENGTH   48
 
#define PREMASTER_SECRET_LENGTH   48
 
#define SESSION_KEY_BLOB_LENGTH   48
 
#define MAC_SALT_KEY_LENGTH   16
 
#define LICENSING_ENCRYPTION_KEY_LENGTH   16
 
#define HWID_PLATFORM_ID_LENGTH   4
 
#define HWID_UNIQUE_DATA_LENGTH   16
 
#define HWID_LENGTH   20
 
#define LICENSING_PADDING_SIZE   8
 
#define PREAMBLE_VERSION_2_0   0x02
 
#define PREAMBLE_VERSION_3_0   0x03
 
#define LicenseProtocolVersionMask   0x0F
 
#define EXTENDED_ERROR_MSG_SUPPORTED   0x80
 
#define KEY_EXCHANGE_ALG_RSA   0x00000001
 

Enumerations

enum  {
  LICENSE_REQUEST = 0x01, PLATFORM_CHALLENGE = 0x02, NEW_LICENSE = 0x03, UPGRADE_LICENSE = 0x04,
  LICENSE_INFO = 0x12, NEW_LICENSE_REQUEST = 0x13, PLATFORM_CHALLENGE_RESPONSE = 0x15, ERROR_ALERT = 0xFF
}
 Licensing Packet Types. More...
 
enum  {
  BB_ANY_BLOB = 0x0000, BB_DATA_BLOB = 0x0001, BB_RANDOM_BLOB = 0x0002, BB_CERTIFICATE_BLOB = 0x0003,
  BB_ERROR_BLOB = 0x0004, BB_ENCRYPTED_DATA_BLOB = 0x0009, BB_KEY_EXCHG_ALG_BLOB = 0x000D, BB_SCOPE_BLOB = 0x000E,
  BB_CLIENT_USER_NAME_BLOB = 0x000F, BB_CLIENT_MACHINE_NAME_BLOB = 0x0010
}
 binary Blob Types More...
 
enum  {
  ERR_INVALID_SERVER_CERTIFICATE = 0x00000001, ERR_NO_LICENSE = 0x00000002, ERR_INVALID_MAC = 0x00000003, ERR_INVALID_SCOPE = 0x00000004,
  ERR_NO_LICENSE_SERVER = 0x00000006, STATUS_VALID_CLIENT = 0x00000007, ERR_INVALID_CLIENT = 0x00000008, ERR_INVALID_PRODUCT_ID = 0x0000000B,
  ERR_INVALID_MESSAGE_LENGTH = 0x0000000C
}
 license Error Codes More...
 
enum  { ST_TOTAL_ABORT = 0x00000001, ST_NO_TRANSITION = 0x00000002, ST_RESET_PHASE_TO_START = 0x00000003, ST_RESEND_LAST_MESSAGE = 0x00000004 }
 state Transition Codes More...
 
enum  { WIN32_PLATFORM_CHALLENGE_TYPE = 0x0100, WIN16_PLATFORM_CHALLENGE_TYPE = 0x0200, WINCE_PLATFORM_CHALLENGE_TYPE = 0x0300, OTHER_PLATFORM_CHALLENGE_TYPE = 0xFF00 }
 Platform Challenge Types. More...
 
enum  { LICENSE_DETAIL_SIMPLE = 0x0001, LICENSE_DETAIL_MODERATE = 0x0002, LICENSE_DETAIL_DETAIL = 0x0003 }
 License Detail Levels. More...
 
enum  {
  CLIENT_OS_ID_WINNT_351 = 0x01000000, CLIENT_OS_ID_WINNT_40 = 0x02000000, CLIENT_OS_ID_WINNT_50 = 0x03000000, CLIENT_OS_ID_WINNT_POST_52 = 0x04000000,
  CLIENT_IMAGE_ID_MICROSOFT = 0x00010000, CLIENT_IMAGE_ID_CITRIX = 0x00020000
}
 

Functions

FREERDP_API BOOL license_send_valid_client_error_packet (rdpRdp *rdp)
 

Macro Definition Documentation

#define CLIENT_RANDOM_LENGTH   32
#define EXTENDED_ERROR_MSG_SUPPORTED   0x80
#define HWID_LENGTH   20
#define HWID_PLATFORM_ID_LENGTH   4
#define HWID_UNIQUE_DATA_LENGTH   16
#define KEY_EXCHANGE_ALG_RSA   0x00000001
#define LICENSE_PKT_CS_MASK   (LICENSE_INFO | NEW_LICENSE_REQUEST | PLATFORM_CHALLENGE_RESPONSE | ERROR_ALERT)
#define LICENSE_PKT_MASK   (LICENSE_PKT_CS_MASK | LICENSE_PKT_SC_MASK)
#define LICENSE_PKT_SC_MASK   (LICENSE_REQUEST | PLATFORM_CHALLENGE | NEW_LICENSE | UPGRADE_LICENSE | ERROR_ALERT)
#define LICENSE_PREAMBLE_LENGTH   4
#define LicenseProtocolVersionMask   0x0F
#define LICENSING_ENCRYPTION_KEY_LENGTH   16
#define LICENSING_PADDING_SIZE   8
#define MAC_SALT_KEY_LENGTH   16
#define MASTER_SECRET_LENGTH   48
#define PREAMBLE_VERSION_2_0   0x02
#define PREAMBLE_VERSION_3_0   0x03
#define PREMASTER_SECRET_LENGTH   48
#define SERVER_RANDOM_LENGTH   32
#define SESSION_KEY_BLOB_LENGTH   48

Enumeration Type Documentation

anonymous enum

Licensing Packet Types.

Enumerator
LICENSE_REQUEST 
PLATFORM_CHALLENGE 
NEW_LICENSE 
UPGRADE_LICENSE 
LICENSE_INFO 
NEW_LICENSE_REQUEST 
PLATFORM_CHALLENGE_RESPONSE 
ERROR_ALERT 
anonymous enum

binary Blob Types

Enumerator
BB_ANY_BLOB 
BB_DATA_BLOB 
BB_RANDOM_BLOB 
BB_CERTIFICATE_BLOB 
BB_ERROR_BLOB 
BB_ENCRYPTED_DATA_BLOB 
BB_KEY_EXCHG_ALG_BLOB 
BB_SCOPE_BLOB 
BB_CLIENT_USER_NAME_BLOB 
BB_CLIENT_MACHINE_NAME_BLOB 
anonymous enum

license Error Codes

Enumerator
ERR_INVALID_SERVER_CERTIFICATE 
ERR_NO_LICENSE 
ERR_INVALID_MAC 
ERR_INVALID_SCOPE 
ERR_NO_LICENSE_SERVER 
STATUS_VALID_CLIENT 
ERR_INVALID_CLIENT 
ERR_INVALID_PRODUCT_ID 
ERR_INVALID_MESSAGE_LENGTH 
anonymous enum

state Transition Codes

Enumerator
ST_TOTAL_ABORT 
ST_NO_TRANSITION 
ST_RESET_PHASE_TO_START 
ST_RESEND_LAST_MESSAGE 
anonymous enum

Platform Challenge Types.

Enumerator
WIN32_PLATFORM_CHALLENGE_TYPE 
WIN16_PLATFORM_CHALLENGE_TYPE 
WINCE_PLATFORM_CHALLENGE_TYPE 
OTHER_PLATFORM_CHALLENGE_TYPE 
anonymous enum

License Detail Levels.

Enumerator
LICENSE_DETAIL_SIMPLE 
LICENSE_DETAIL_MODERATE 
LICENSE_DETAIL_DETAIL 
anonymous enum
Enumerator
CLIENT_OS_ID_WINNT_351 
CLIENT_OS_ID_WINNT_40 
CLIENT_OS_ID_WINNT_50 
CLIENT_OS_ID_WINNT_POST_52 
CLIENT_IMAGE_ID_MICROSOFT 
CLIENT_IMAGE_ID_CITRIX 

Function Documentation

FREERDP_API BOOL license_send_valid_client_error_packet ( rdpRdp *  rdp)

Send Server License Error - Valid Client Packet.
http://msdn.microsoft.com/en-us/library/cc241922/

Parameters
licenselicense module

Here is the call graph for this function:

Here is the caller graph for this function: