You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.7 KiB
95 lines
2.7 KiB
|
|
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
// |
|
//=============================================================================// |
|
/******************************************************************************* |
|
** |
|
** Contents: |
|
** |
|
** This file provides the public interface to the Steam service. This |
|
** interface is described in the SDK documentation. |
|
** |
|
******************************************************************************/ |
|
|
|
|
|
#ifndef INCLUDED_VALIDATENEWVALVECDKEYCLIENT_H |
|
#define INCLUDED_VALIDATENEWVALVECDKEYCLIENT_H |
|
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER > 1000) |
|
#pragma once |
|
#endif |
|
|
|
|
|
#ifndef INCLUDED_STEAM_COMMON_STEAMCOMMON_H |
|
#include "steamcommon.h" |
|
#endif |
|
|
|
|
|
#ifdef __cplusplus |
|
extern "C" |
|
{ |
|
#endif |
|
|
|
|
|
// Note: this function expects the CDkey to contain dashes to split it into groups of 5 characters. |
|
// |
|
// e.g. 5WV2E-CDL82-89AQ4-ZZKH8-L27IB (note: this example is not a valid key) |
|
// |
|
ESteamError SteamWeakVerifyNewValveCDKey |
|
( |
|
const char * pszCDKeyFormattedForCDLabel, |
|
uint * pReceiveGameCode, |
|
uint * pReceiveSalesTerritoryCode, |
|
uint * pReceiveUniqueSerialNumber |
|
); |
|
|
|
// This returns data ready to send to the validation server. |
|
// If you want to store a CDKey in the registry, consider passing the |
|
// output of this function through one of the functions below, |
|
// to make life harder for registry-harvesting trojans. |
|
// |
|
// This also does a WeakVerify. |
|
ESteamError SteamGetEncryptedNewValveCDKey |
|
( |
|
const char * pszCDKeyFormattedForCDLabel, |
|
unsigned int ClientLocalIPAddr, |
|
const void * pEncryptionKeyReceivedFromAppServer, |
|
unsigned int uEncryptionKeyLength, |
|
void * pOutputBuffer, |
|
unsigned int uSizeOfOutputBuffer, |
|
unsigned int * pReceiveSizeOfEncryptedNewValveCDKey |
|
); |
|
|
|
|
|
// This pair of functions encrypt and decrypt data using a key based on unique |
|
// properties of this machine. The resulting encrypted data can only be (easily) |
|
// decrypted on the same machine. Note: it is NOT impossible to decrypt the data |
|
// elsewhere, just inconvenient. |
|
ESteamError SteamEncryptDataForThisMachine |
|
( |
|
const char * pDataToEncrypt, |
|
unsigned int uSizeOfDataToEncrypt, |
|
void * pOutputBuffer, |
|
unsigned int uSizeOfOutputBuffer, |
|
unsigned int * pReceiveSizeOfEncryptedData |
|
); |
|
|
|
ESteamError SteamDecryptDataForThisMachine |
|
( |
|
const char * pDataToDecrypt, |
|
unsigned int uSizeOfDataToDecrypt, |
|
void * pOutputBuffer, |
|
unsigned int uSizeOfOutputBuffer, |
|
unsigned int * pReceiveSizeOfDecryptedData |
|
); |
|
|
|
#ifdef __cplusplus |
|
} |
|
#endif |
|
|
|
#endif /* #ifndef INCLUDED_STEAM_COMMON_STEAMCOMMON_H */
|
|
|