#include <p6license.h>
Inherits P6R::p6ICom.
Public Member Functions | |
virtual P6INT32 | addref (void)=0 |
virtual P6R::P6ERR | createLicenseFile (const P6WCHAR *pFilePath)=0 |
virtual P6R::P6ERR | enumLicense (p6IEnumLicense **ppEnum)=0 |
virtual P6R::P6ERR | enumLicenseValueList (const P6R::P6WCHAR *pszKeyName, p6IEnumLicenseValueList **ppEnum)=0 |
virtual P6R::P6ERR | getPropInt (const P6WCHAR *pPropName, P6INT32 *pValue)=0 |
virtual P6R::P6ERR | getPropString (const P6WCHAR *pPropName, P6WCHAR *pBuffer, P6UINT32 cBuffer, P6UINT32 *pWritten)=0 |
virtual P6R::P6ERR | initialize (P6LICENSEFLAGS flags, P6LICENSE_OPERATION mode)=0 |
virtual P6R::P6ERR | queryInterface (const P6R::P6IID &iid, P6VOID **ppIface)=0 |
virtual P6INT32 | release (void)=0 |
virtual P6R::P6ERR | setKeys (p6ICryptoKey *pPublicKey, p6ICryptoKey *pPrivateKey, P6SIGNHMAC algorithm)=0 |
virtual P6R::P6ERR | setMode (P6LICENSE_OPERATION mode)=0 |
virtual P6R::P6ERR | setPropInt (const P6WCHAR *pPropName, P6INT32 value)=0 |
virtual P6R::P6ERR | setPropString (const P6WCHAR *pPropName, const P6WCHAR *pValue)=0 |
virtual P6R::P6ERR | setPropStringList (const P6WCHAR *pPropName, const P6WCHAR *pValue)=0 |
virtual P6R::P6ERR | verifyLicenseFile (const P6WCHAR *pFilePath)=0 |
This interface supports the generation and verification of p6I18n licenses.
This interface supports a structured licenses format consisting of many name - value pairs. The license file is signed using a private key and verified using a public key.
A p6License object can only be used for either creating new licenses or verifying existing licenses at any one time. However, a single license object can be re-initialized any number of times changing the keys used and changing the LICENSE_OPERATION. So it is possible to use the same license object to first create a license and second by re-initializing the object to be in "LICENSE_VERIFY mode" then immediately verify the same license.
Note, that once a license file is generated it cannot be modified and re-signed. To change a p6License means creating a new license file with a different set of properties. Properties can only be set in a license via a call to one of the setPropxxx functions.
Also note, that LICENSE_VERIFY means that the license in question is read only. If the license is determined to be valid, then and only then, can the contents of the license be obtained via a call to one of the getPropXXX functions or via a call to enumLicense.
Definition at line 184 of file p6license.h.