| ►Ntenduke | Root for classes, functions and globals of 10Duke C++ Client |
| ►Nconcurrent | Concurrency-related tools |
| CGuardWithTimeout | A mutex-guard with timeout functionality |
| ►Ncrypto | Cryptography services |
| ►Nlibcrypto | libcrypto based implementations of cryptography services |
| CAsymmetricMessageDigest | Libcrypto-implementation of asymmetric tenduke::crypto::MessageDigestVerifier |
| CBigNumber | A BigNumber, RAII wrapper of libcrypto BIGNUM |
| CLibcryptoKey | Libcrypto-implementation of a public key definition |
| CLibCryptoMessageDigest | Libcrypto-implementation of tenduke::crypto::MessageDigest |
| CLibcryptoMessageDigestFactory | Libcrypto-implementation of ‘tenduke::crypto::MessageDigestFactory’ |
| CLibcryptoPrivateKey | Libcrypto-implementation of a private key definition |
| CLibcryptoPublicKey | Libcrypto-implementation of a public key definition |
| CLibcryptoRSAKeyFactory | Libcrypto implementation of tenduke::crypto::RSAKeyFactory |
| CPublicKeyToPEM | Utility service to convert Libcrypto public key (EVP_PKEY) to PEM |
| CCryptoException | Thrown when something goes with crypto |
| CKeyFactory | Creates cryptographical keys |
| CMessageDigest | Simple MessageDigest -service |
| CMessageDigestFactory | Creates instances of tenduke::crypto::MessageDigest |
| CMessageDigestVerifier | Verifies message by computing digest for message and comparing the computed signature to the provided signature |
| CMessageDigestVerifierFactory | Factory for creating pre-configured instances of tenduke::crypto::MessageDigestVerifier |
| CPrivateKey | Private key |
| CPublicKey | Public key |
| CPublicKeyVerifierFactory | An implementation of tenduke::crypto::MessageDigestVerifierFactory, which is configured with algorithm and public key, and creates new instances of tenduke::crypto::MessageDigestVerifier configured with those key and algorithm |
| CRSAKeyFactory | |
| ►Ndemo | |
| CConsoleOIDCLogin | Custom OIDC-login service |
| CConsoleOIDCLoginRequest | Simple OIDC-login request, which uses console and any browser with developer tools to demonstrate how the browser integration should work |
| ►Nee | Classes, functions and globals of 10Duke Enterprise C++ Client |
| ►Nlicensing | Classes, functions and globals related to 10Duke Enterprise licensing |
| ►Nauthzapi | Low-level client for licensing operations using 10Duke authz-API |
| CAbstractAuthzApiRequest | Base class for authz-API HTTP requests |
| CAbstractLicenseTokenAuthzApiRequest | Base class for licensing requests, which return tokens |
| CAuthzLicensingClient | Low-level client for licensing operations using 10Duke /authz/-API |
| CDefaultAuthzLicensingClient | Default implementation of tenduke::ee::licensing::authzapi::AuthzLicensingClient |
| CDefaultLicenseCheckoutRequest | Default implementation of tenduke::ee::licensing::LicenseCheckoutRequest |
| CDefaultLicenseReleaseRequest | Default implementation of tenduke::ee::licensing::LicenseReleaseRequest |
| CDefaultLicenseRenewRequest | Default implementation of tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CLicensingRequest | Licensing-related request |
| CLicensingRequestFailure | Thrown when there is some licensing-related error |
| ►Nimpl | Implementations of licensing related services |
| CDefaultLicenseTokens | Default implementation of tenduke::ee::licensing::LicenseTokens |
| CDefaultOfflineLicenseTokenParser | |
| CKnownNameLicenseTokenParser | A license token parser, which expects the licensed item name to be one given in constructor |
| CKnownNamesLicenseTokenParser | A tenduke::ee::licensing::impl::LicenseTokenParser, which verifies the licensed item name from a set of known names |
| CLeaseOrError | Describes whether given token is a lease or an error |
| CLicenseTokenParser | Parses license token into tenduke::ee::licensing::Lease (or into tenduke::ee::licensing::LicensingError) |
| CStatefulCheckoutRequest | Stateful implementation of tenduke::ee::licensing::LicenseCheckoutRequest |
| CStatefulCheckoutRequestTemplate | Common base for stateful checkout-like requests |
| CStatefulLicensingClient | A tenduke::ee::licensing::LicensingClient, which automatically maintains OIDC-login session |
| CStatefulReleaseRequest | Stateful implementation of tenduke::ee::licensing::LicenseReleaseRequest |
| CStatefulRenewRequest | Stateful implementation of tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CFluentLicenseCheckout | Utility for fluently building tenduke::ee::licensing::LicenseCheckoutRequest |
| CFluentLicenseCheckoutBuilder | Inheritable base class building checkout request parameters fluently |
| CFluentLicenseCheckoutParameters | Builder for creating tenduke::ee::licensing::LicenseCheckoutParameters fluently |
| CFluentLicenseRelease | Utility to release license(s) fluently |
| CFluentLicenseReleaseBuilder | Utility for building tenduke::ee::licensing::LicenseReleaseRequest |
| CFluentLicenseReleaseParameters | Utility for building tenduke::ee::licensing::LicenseReleaseParameters fluently |
| CFluentLicenseRenew | Utility for fluently building tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CFluentLicenseRenewBuilder | Inheritable base class building renew request parameters fluently |
| CFluentLicenseRenewParameters | Builder for creating tenduke::ee::licensing::LicenseRenewParameters fluently |
| CInvalidLicenseToken | Thrown in certain cases when license token is invalid |
| CLease | Describes checked out licensed item |
| CLicenseCheckoutItem | Licensed item to be checked out |
| CLicenseCheckoutParameters | Parameters for license checkout request |
| CLicenseCheckoutResponse | Response from license checkout request |
| CLicenseReleaseParameters | Parameters for license-release request |
| CLicenseReleaseResponse | Response from tenduke::ee::licensing::LicenseReleaseRequest |
| CLicenseRenewItem | A license lease to renew |
| CLicenseRenewParameters | Parameters for license renew request |
| CLicenseRenewResponse | Response from license renew -request |
| CLicenseTokens | Service for managing licenses tokens |
| CLicensingClient | High-level client for licensing operations |
| CLicensingConfiguration | 10Duke licensing configuration |
| CLicensingError | Describes an error returned from the API |
| CLicensingException | Generic licensing-related exception |
| CLicensingResponse | Response from tenduke::ee::licensing::LicensingRequest |
| COfflineLicenseTokenParser | Service for parsing standalone license tokens |
| CAbstractClientFactory | Class template for factories, which create 10Duke client |
| CAPIRequest | Generic base for API requests |
| CBrowserBasedClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user by opening default OS browser |
| CCCGClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user with OAuth Client Credentials Grant |
| ►CClientProperties | Client properties |
| CBuilder | Builds the configuration fluently |
| CClientState | Client state |
| CDeserializeStateFromJSON | Service for deserializing client state from JSON |
| CDeviceAuthenticationClientFactory | |
| CROPGClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user with OAuth Resource Owner Password Credentials Grant |
| CSerializeStateToJSON | Serializes client state to JSON |
| CTendukeClient | The 10Duke Enterprise Client |
| ►Nhttp | HTTP-related services |
| ►Ncurl | Implementation of HTTP-client using libcurl |
| CLibCurlHTTPCall | LibCurl-based implementation of tenduke::http::HTTPCall |
| CLibCurlHTTPClient | LibCurl -based implementation of HTTPClient |
| ►Nserver | Simple HTTP-server |
| CAbstractHTTPServer | Abstract base class of a HTTP server |
| CHTTPRequest | A HTTP-request parsed by HTTP server |
| CHTTPRequestHandler | Service interface for handling a HTTP request |
| CHTTPResponse | HTTP-response to be returned by a HTTP server |
| CHTTPServer | Interface for simple HTTPServer |
| CHTTPServerFactory | Creates HTTPServer |
| CBadRequest | Thrown for HTTP status code 400 "BadRequest" |
| CClientError | 4xx-series, base class for many 4xx-exceptions |
| CForbidden | Thrown for HTTP status code 403, "Forbidden" |
| CHTTPCall | HTTP-call which executes the request and returns HTTPResponse |
| CHTTPClient | A simple HTTP-client |
| CHTTPException | A generic HTTP-exception |
| CHTTPRequest | HTTP-request, which contains all necessary details to construct the request |
| CHTTPRequestAuthenticator | This is a service, that can be added to tenduke::http::HTTPRequest to add authentication information to the request |
| CHTTPRequestBuilder | Builds HTTPRequest |
| CHTTPRequestException | This exception is thrown when a HTTP-request fails for HTTP-specific reasons in the client end |
| CHTTPResponse | A HTTP Response |
| CHTTPResponseException | This exception is thrown when HTTP-request fails because of HTTP-statuscode |
| CHTTPResponseToException | Utility service to throw an exception based on tenduke::http::HTTPResponse |
| CNotFound | Thrown for HTTP status code 404, "Not Found" |
| CServerError | 5xx-error, base class for 5xx-exceptions |
| CUnauthorized | Thrown for HTTP status code 401, "Unauthorized" |
| ►Njson | JSON support |
| ►Ncjson | Implementation of JSON service interfaces using cJSON |
| CCjsonArray | CJSON-implementation of tenduke::json::JSONArray |
| CCjsonBoolean | CJSON-implementation of tenduke::json::JSONBoolean |
| CCjsonElement | CJSON-implementation of tenduke::json::JSONElement |
| CCjsonNumber | CJSON-implementation of tenduke::json::JSONNumber |
| CCjsonObject | CJSON-implementation of tenduke::json::JSONObject |
| CcJSONParser | CJSON-implementation of tenduke::json::JSONParser |
| CCjsonString | CJSON-implementation of tenduke::json::JSONString |
| CJSONArray | A JSON array |
| CJSONArrayBuilder | Builds JSON-array |
| CJSONBoolean | JSON boolean |
| CJSONBuilder | NOTE: This class is for now INTERNAL USE ONLY |
| CJSONElement | Superclass of JSON elements |
| CJSONException | Thrown on JSON-related errors |
| CJSONNumber | Represents JSON number |
| CJSONObject | JSON object element |
| CJSONObjectBuilder | Builds JSON objects |
| CJSONParser | Parser for JSON documents |
| CJSONParsingException | Thrown when JSON parsing failed |
| CJSONString | JSON string element |
| ►Njwk | Support for JSON Web Keys |
| CDynamicJWKSSignatureValidator | Extension of tenduke::jwk::JWKSSignatureValidator, which first looks up key in cache, and if not found, tries to refresh-the cache |
| CJWK | Describes a JWK, Json Web Key |
| CJWKException | Thrown when something goes wrong with JWKs |
| CJWKParser | Parses JSON Web Key (JWK) from JSON |
| CJWKS | JSON Web Key Set, a container for one or more tenduke::jwk::JWKs, indexed by the JWK key ID |
| CJWKSDownloader | Service to download and parse JSON Web Key Set (JWKS) |
| CJWKSParser | Parses JSON Web Key Set (JWKS)-document |
| CJWKSSignatureValidator | A tenduke::jwt::JWTSignatureValidator, which determines the validation key and algorithm based on the JWT header and looking up the key from memory cache |
| ►Njwt | Support for JSON Web Tokens |
| CDefaultJWTParser | Default implementation of tenduke::jwt::JWTParser |
| CDefaultJWTParserFactory | Default implementation of tenduke::jwt::JWTParserFactory |
| CFixedKeyJWTSignatureValidator | A tenduke::jwt::JWTSignatureValidator, which expects that the signature digestAlgorithm and verification key are pre-configured |
| CJWT | Very simple JWT implementation |
| CJWTParser | Parses JWT |
| CJWTParserFactory | |
| CJWTParsingException | Thrown when there is a problem parsing JWT |
| CJWTSignatureValidator | Service for validating the JWT-signature |
| CJWTValidationException | Thrown when JWT-validation failed (e.g |
| ►Nlog | Logging support |
| CDevNullLogger | Logger, which does not log anything |
| CLogger | Simple logger interface |
| CStdOutLogger | Very, very simple logger, which dumps all to std::out |
| ►Nnet | Generic networking support |
| ►Ncurl | libcurl based implementation of generic network services |
| CLibcurlURL | Libcurl-based implementation of tenduke::net::URL |
| CLibCurlURLDecoder | Libcurl implementation of tenduke::net::URLDecoder |
| CLibCurlURLEncoder | Libcurl implementation of tenduke::net::URLEncoder |
| CLibCurlURLParser | Libcurl implementation of tenduke::net::URLParser |
| CMalformedURLException | Thrown when URL is malformed |
| CNetworkingException | Generic networking exception |
| CRequestTimedOut | A tenduke::net::NetworkingException thrown when network request timed out |
| CUnknownHostException | A tenduke::net::NetworkingException thrown when the host is not found |
| CURL | Represents URL |
| CURLBuilder | Very simple URL-builder |
| CURLDecoder | Service to URL-decode a string |
| CURLEncoder | Service to URL-encode a string |
| CURLException | A tenduke::net::NetworkingException thrown when various URL-related errors occur |
| CURLParser | A service to parse URLs from strings |
| ►Noauth | OAuth services |
| ►Nccg | |
| COAuthClientCredentialsGrantFlow | OAuth Client Credentials Grant implementation of tenduke::oauth::OAuthClient |
| COAuthClientCredentialsGrantRequest | OAuth Client Credentials Grant implementation of tenduke::oauth::OAuthRequest |
| ►Ndevice | Implementation of OAuth device flow |
| CDefaultOAuthDeviceFlow | Default implementation of tenduke::oauth::device::OAuthDeviceFlow |
| CDefaultOAuthDeviceFlowAuthorizationRequest | Default implementation of tenduke::oauth::device::OAuthDeviceFlowAuthorizationRequest |
| CDeviceAuthorizationResponse | Device Authorization Response |
| COAuthDeviceAuthorizationResponseReceived | A callback to denote that Device Authorization Response has been received |
| COAuthDeviceFlow | OAuth DeviceFlow |
| COAuthDeviceFlowAuthorizationRequest | Authorization request for OAuth Device Flow |
| ►Npkce | Implementation of OAuth "Authorization Code Flow with PKCE" |
| COAuthPKCEFlow | OAuth Authorization Code Grant with PKCE implementation of tenduke::oauth::OAuthClient |
| COAuthPKCERequest | PKCE-implementation of tenduke::oauth::OAuthRequest |
| ►Nropg | |
| COAuthResourceOwnerPasswordFlow | OAuth Resource Owner Password Credentials Grant implementation of tenduke::oauth::OAuthClient |
| COAuthResourceOwnerPasswordRequest | OAuth Resource Owner Password Credentials Grant implementation of tenduke::oauth::OAuthRequest |
| CResourceOwnerPasswordCredentials | Credentials for Resource Owner Password Credentials Grant |
| CResourceOwnerPasswordCredentialsProvider | A callback, which returns the credentials to use in Resource Owner Password Credentials Grant |
| CAccessTokenRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which uses fixed access token to authenticate HTTP-requests |
| CBaseOAuthClient | Base class for OAuth-clients |
| CBaseOAuthRequest | Base OAuthRequest |
| CDefaultOAuthRefreshRequest | Default implementation tenduke::oauth::OAuthRefreshRequest |
| CHTTPResponseToOAuthException | Throws OAuthExceptions based on HTTP error response |
| COAuthAuthorizationRequest | OAuth-request handles the OAuth authorization flow |
| COAuthBackendConfiguration | Container for OAuth-backend configuration |
| COAuthBrowserAuthorizationRequest | OAuth-request to handle OAuth authorization using browser |
| COAuthBrowserFlow | OAuth-client to initiate OAuth authorization flow |
| COAuthClient | OAuth-client to initiate OAuth authorization flow |
| ►COAuthClientConfiguration | Container for OAuth-client-configuration |
| CBuilder | Builder for the configuration |
| COAuthConfiguration | Container for OAuth-configuration |
| COAuthException | Generic OAuth-related exception |
| COAuthInvalidGrant | Exception thrown when server reported "invalid_grant" |
| COAuthRefreshRequest | Request to refresh OAuthState |
| COAuthServerError | Thrown when server reported an OAuth-related error |
| COAuthState | OAuth session state |
| COAuthStateImpl | Implementation of OAuthState |
| COAuthStateService | OAuth-state after successful authentication |
| COAuthStateServiceImpl | Default implementation of tenduke::oauth::OAuthStateService |
| COAuthTokenRequest | OAuth token request |
| COAuthTokenResponse | Encapsulates results from tenduke::oauth::OAuthTokenRequest |
| ►Noidc | Implementation of OpenID Connect protocol |
| ►Nccg | |
| CCCGAuthenticationConfig | Configuration for Client Credentials Grant |
| COIDCClientCredentialsGrantLoginRequest | OIDC-login request using OAuth Client Credentials Grant |
| COIDCClientCredentialsLogin | OIDCLogin-service using OIDCClientCredentialsGrantFlow |
| ►Ndevice | OIDC-wrapping of OAuth Device Flow |
| CDefaultOIDCDeviceAuthenticationRequest | Default implementation of tenduke::oidc::device::OIDCDeviceAuthenticationRequest |
| CDefaultOIDCDeviceFlow | Default implementation of tenduke::oidc::device::OIDCDeviceFlow |
| CDeviceAuthenticationConfig | Configuration for OIDC device authentication |
| COIDCDeviceAuthenticationRequest | OIDC Authentication request using OAuth Device Authorization Grant |
| COIDCDeviceFlow | OpenID Connect -client for OAuth Device Authorization Grant |
| COIDCDeviceFlowLogin | Login service using OIDC with OAuth Device Authorization Grant |
| COIDCDeviceFlowLoginRequest | Login request using OIDC with OAuth Device Authorization Grant |
| ►Nosbrowser | Services to perform OIDC-login using OS-browser with loopback redirection |
| CBrowserAuthenticationConfig | Configuration for "default OS-browser"-based authentication |
| COIDCLoginRequestWithLoopbackRedirection | An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with "Loopback Interface Redirection" (see https://www.rfc-editor.org/rfc/rfc8252#section-7.3) |
| COIDCLoginWithLoopbackRedirection | An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with "Loopback Interface Redirection" (see https://www.rfc-editor.org/rfc/rfc8252#section-7.3) |
| CRedirectUriHandler | A HTTPRequestHandler, which listens to OAuth2 server redirect URI and signals of the completion of the login |
| ►Nropg | |
| COIDCResourceOwnerPasswordFlow | OIDC authentication service, which uses OAuth Resource Owner Password Credentials Grant |
| COIDCResourceOwnerPasswordLogin | OIDCLogin-service using OIDCResourceOwnerPasswordFlow |
| COIDCResourceOwnerPasswordLoginRequest | |
| COIDCResourceOwnerPasswordRequest | |
| CROPGAuthenticationConfig | |
| CAutoDiscovery | Service for querying OIDC configuration from known URL |
| CAutoDiscoveryResult | Result of OIDC auto-configuration query |
| CBaseOIDCAuthenticationConfig | |
| CBaseOIDCClient | Base-class for OIDC-clients |
| CBaseOIDCRequest | Base class for OIDC requests |
| CDefaultOIDCBrowserFlow | Default implementation of browser-based OIDC-client |
| CDefaultOIDCBrowserFlowAuthenticationRequest | Default browser-based OIDC authentication request |
| CDefaultOIDCClientFactory | Default implementation of tenduke::oidc::OIDCClientFactory |
| CDefaultOIDCRefreshRequest | Default implementation for tenduke::oidc::OIDCRefreshRequest |
| CDefaultOIDCSessionEventListener | Default implementation of tenduke::oidc::OIDCSessionEventListener |
| CIdToken | OIDC ID-token |
| CIdTokenSession | A tenduke::oidc::OIDCSession, which uses ID-token as the source-of-truth for expiration times |
| CIdTokenSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which adds Authorization-header with OAuth ID-token |
| COIDCAuthenticationRequest | OIDC-request, which handles the OIDC-flow |
| COIDCAutoDiscoveryConfiguration | Configuration for OIDC auto-discovery |
| COIDCBrowserFlow | OpenID Connect -client |
| COIDCBrowserFlowAuthenticationRequest | An OIDC-authentication request, which handles the OIDC-flow, authenticating the user with browser |
| COIDCClient | OpenID Connect -client |
| COIDCClientFactory | Factory for creating tenduke::oidc::OIDCClient |
| COIDCConfiguration | OIDC-configuration |
| COIDCException | Thrown when OIDC-related errors occur |
| COIDCLogin | High-level service to perform OIDC-login |
| COIDCLoginRequest | Login-request initiated by OIDCLogin-service |
| COIDCRefreshRequest | A request to refresh OIDC state |
| COIDCSession | Stateful service to manage OIDC-session |
| ►COIDCSessionConfiguration | Configuration for tenduke::oidc::OIDCSessionImpl |
| CBuilder | Builder for the configuration |
| COIDCSessionEventListener | Event listener for OIDC session events |
| COIDCSessionImpl | Default implementation of tenduke::oidc::OIDCSession |
| COIDCSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which adds Authorization-header with Bearer-token |
| COIDCState | Container of OIDC state, describing the user session |
| CSerializedOIDCSession | A tenduke::oidc::OIDCSession, which guards that only one thread at a time can access the instance |
| ►Nosa | Operating system abstraction |
| ►Nmac | |
| CMacBrowserIntegration | Mac-specific implementation of tenduke::osa::BrowserIntegration |
| ►Nunx | |
| CUnixBrowserIntegration | Unix-specific implementation of tenduke::osa::BrowserIntegration |
| ►Nwin | |
| CWindowsBrowserIntegration | Windows-specific implementation of tenduke::osa::BrowserIntegration |
| CAbstractBaseSocket | Abstract base implementation of tenduke::osa::Socket |
| CBrowserFactory | Creates platform-specific browser service |
| CBrowserIntegration | Service for opening URL in a browser |
| CDefaultHTTPServerFactory | Default HTTP server factory |
| CSocket | OS-independent abstraction of a socket |
| CSocketDescriptor | Wraps the socket descriptor for RAII |
| ►Ntest | |
| ►Nfakes | |
| CFakeBrowser | |
| CFakeHttpServer | |
| CFakeLicenseTokenParser | |
| CFakeRandomURLSafeString | |
| CFakeSocket | |
| ►Nmocks | |
| CAuthzLicensingClientMock | |
| CBase64DecoderMock | |
| CClockMock | |
| CFakeJWKSParser | |
| CHTTPCallMock | |
| CHTTPClientMock | |
| CHTTPRequestAuthenticatorMock | |
| CHTTPServerFactoryMock | |
| CJSONArrayMock | |
| CJSONBooleanMock | |
| CJSONElementMock | |
| CJSONNumberMock | |
| CJSONObjectMock | |
| CJSONParserMock | |
| CJSONStringMock | |
| CJWTParserFactoryMock | |
| CJWTParserMock | |
| CJWTSignatureValidatorMock | |
| CKeyFactoryMock | |
| CLicenseCheckoutRequestMock | |
| CLicenseReleaseRequestMock | |
| CLicenseRenewRequestMock | |
| CMessageDigestFactoryMock | |
| CMessageDigestMock | |
| CMessageDigestVerifierMock | |
| COAuthBrowserAuthorizationRequestMock | |
| COAuthBrowserFlowMock | |
| COAuthClientMock | |
| COAuthDeviceFlowAuthorizationRequestMock | |
| COAuthDeviceFlowMock | |
| COAuthRefreshRequestMock | |
| COAuthTokenRequestFake | |
| COIDCBrowserFlowAuthenticationRequestMock | |
| COIDCBrowserFlowMock | |
| COIDCClientFactoryMock | |
| COIDCClientMock | |
| COIDCDeviceAuthenticationRequestMock | |
| COIDCDeviceFlowMock | |
| COIDCLoginMock | |
| COIDCLoginRequestMock | |
| COIDCRefreshRequestMock | |
| COIDCSessionMock | |
| CPublicKeyMock | |
| CRandomBytesMock | |
| CSocketMock | |
| CURLEncoderMock | |
| CURLMock | |
| CURLParserMock | |
| ►Noauth | |
| ►Ndevice | |
| CDefaultOAuthDeviceFlowAuthorizationRequestTest | |
| CFakeRequest | |
| COAuthPKCEFlowTest | |
| ►Noidc | |
| CFakeOIDCLoginRequest | |
| COIDCSessionImplTest | |
| CSessionEventListener | |
| ►Nunittests | |
| CDynamicJWKSSignatureValidatorTest | Test fixture |
| CFakeDynamicJWKSSignatureValidator | Test utility to expose protected method findJWK() |
| CFakeJWKSDownloader | Fake JWKSDownloader |
| ►Ntime | Date/time related services |
| CClock | A clock-service to generate timestamps |
| CDefaultClock | Default implementation tenduke::time::Clock |
| ►Nutl | Utilities |
| ►Nrandom | Random number / string generation |
| CInsecureRandomBytes | Default implementation of tenduke::utl::random::RandomBytes |
| CRandomBytes | Generates random bytes |
| CRandomUrlSafeString | Generates string of random URL-safe characters |
| CBase64Decoder | Base64-decoder |
| CBase64Encoder | Base64-encoder |
| CBinaryData | A holder of binary data |
| CDefaultBase64Decoder | Default tenduke::utl::Base64Decoder implementation |
| CDefaultBase64Encoder | Default tenduke::utl::Base64Encoder implementation |
| CFixedSizeBinaryData | Utility class for fixed size binary data |
| CSimpleBuffer | Simple extensible binary buffer |
| CCanceled | Exception thrown when user has canceled an action |
| CInterruptedException | Exception thrown when an action is interrupted for some reason |
| CServiceConfiguration | Configuration for supporting services |
| CTendukeException | Base class for exceptions thrown by 10Duke C++ clients |
| CTendukeServices | A "service locator" for core services used by Tenduke client |
| CTimedOut | Exception thrown when an action has timed out |
| CAbstractHTTPServer | Abstract base class of a HTTP server |
| CAbstractLicenseTokenAuthzApiRequest | Base class for licensing requests, which return tokens |
| CAccessTokenRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which uses fixed access token to authenticate HTTP-requests |
| CAuthzLicensingClientMock | |
| CAutoDiscovery | Service for querying OIDC configuration from known URL |
| CBadRequest | Thrown for HTTP status code 400 "BadRequest" |
| CBase64DecoderMock | |
| CBase64Encoder | Base64-encoder |
| CBaseOAuthClient | Base class for OAuth-clients |
| CBaseOAuthRequest | Base OAuthRequest |
| CBaseOIDCClient | Base-class for OIDC-clients |
| CBaseOIDCRequest | Base class for OIDC requests |
| CBrowserAuthenticationConfig | Configuration for "default OS-browser"-based authentication |
| CBrowserBasedClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user by opening default OS browser |
| CBrowserIntegration | Service for opening URL in a browser |
| CCanceled | Exception thrown when user has canceled an action |
| CCCGAuthenticationConfig | Configuration for Client Credentials Grant |
| CCCGClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user with OAuth Client Credentials Grant |
| CcJSONParser | CJSON-implementation of tenduke::json::JSONParser |
| CClientError | 4xx-series, base class for many 4xx-exceptions |
| ►CClientProperties | Client properties |
| CBuilder | Builds the configuration fluently |
| CClientState | Client state |
| CClock | A clock-service to generate timestamps |
| CClockMock | |
| CConsoleOIDCLogin | Custom OIDC-login service |
| CConsoleOIDCLoginRequest | Simple OIDC-login request, which uses console and any browser with developer tools to demonstrate how the browser integration should work |
| CCryptoException | Thrown when something goes with crypto |
| CDefaultAuthzLicensingClient | Default implementation of tenduke::ee::licensing::authzapi::AuthzLicensingClient |
| CDefaultBase64Decoder | Default tenduke::utl::Base64Decoder implementation |
| CDefaultJWTParser | Default implementation of tenduke::jwt::JWTParser |
| CDefaultLicenseCheckoutRequest | Default implementation of tenduke::ee::licensing::LicenseCheckoutRequest |
| CDefaultLicenseReleaseRequest | Default implementation of tenduke::ee::licensing::LicenseReleaseRequest |
| CDefaultLicenseRenewRequest | Default implementation of tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CDefaultLicenseTokens | Default implementation of tenduke::ee::licensing::LicenseTokens |
| CDefaultOAuthDeviceFlow | Default implementation of tenduke::oauth::device::OAuthDeviceFlow |
| CDefaultOAuthDeviceFlowAuthorizationRequest | Default implementation of tenduke::oauth::device::OAuthDeviceFlowAuthorizationRequest |
| CDefaultOAuthDeviceFlowAuthorizationRequestTest | |
| CDefaultOAuthRefreshRequest | Default implementation tenduke::oauth::OAuthRefreshRequest |
| CDefaultOfflineLicenseTokenParser | |
| CDefaultOIDCBrowserFlow | Default implementation of browser-based OIDC-client |
| CDefaultOIDCBrowserFlowAuthenticationRequest | Default browser-based OIDC authentication request |
| CDefaultOIDCDeviceAuthenticationRequest | Default implementation of tenduke::oidc::device::OIDCDeviceAuthenticationRequest |
| CDefaultOIDCDeviceFlow | Default implementation of tenduke::oidc::device::OIDCDeviceFlow |
| CDefaultOIDCRefreshRequest | Default implementation for tenduke::oidc::OIDCRefreshRequest |
| CDefaultOIDCSessionEventListener | Default implementation of tenduke::oidc::OIDCSessionEventListener |
| CDeserializeStateFromJSON | Service for deserializing client state from JSON |
| CDeviceAuthenticationClientFactory | |
| CDeviceAuthenticationConfig | Configuration for OIDC device authentication |
| CDeviceAuthorizationResponse | Device Authorization Response |
| CDevNullLogger | Logger, which does not log anything |
| CDynamicJWKSSignatureValidator | Extension of tenduke::jwk::JWKSSignatureValidator, which first looks up key in cache, and if not found, tries to refresh-the cache |
| CFakeBrowser | |
| CFakeHttpServer | |
| CFakeJWKSParser | |
| CFakeLicenseTokenParser | |
| CFakeRandomURLSafeString | |
| CFakeSocket | |
| CFixedSizeBinaryData | Utility class for fixed size binary data |
| CFluentLicenseCheckout | Utility for fluently building tenduke::ee::licensing::LicenseCheckoutRequest |
| CFluentLicenseCheckoutParameters | Builder for creating tenduke::ee::licensing::LicenseCheckoutParameters fluently |
| CFluentLicenseRelease | Utility to release license(s) fluently |
| CFluentLicenseReleaseParameters | Utility for building tenduke::ee::licensing::LicenseReleaseParameters fluently |
| CFluentLicenseRenew | Utility for fluently building tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CFluentLicenseRenewParameters | Builder for creating tenduke::ee::licensing::LicenseRenewParameters fluently |
| CForbidden | Thrown for HTTP status code 403, "Forbidden" |
| CHTTPCallMock | |
| CHTTPClient | A simple HTTP-client |
| CHTTPClientMock | |
| CHTTPException | A generic HTTP-exception |
| CHTTPRequest | HTTP-request, which contains all necessary details to construct the request |
| CHTTPRequestAuthenticatorMock | |
| CHTTPRequestBuilder | Builds HTTPRequest |
| CHTTPRequestException | This exception is thrown when a HTTP-request fails for HTTP-specific reasons in the client end |
| CHTTPRequestHandler | Service interface for handling a HTTP request |
| CHTTPResponse | A HTTP Response |
| CHTTPResponseToException | Utility service to throw an exception based on tenduke::http::HTTPResponse |
| CHTTPResponseToOAuthException | Throws OAuthExceptions based on HTTP error response |
| CHTTPServerFactory | Creates HTTPServer |
| CHTTPServerFactoryMock | |
| CIdToken | OIDC ID-token |
| CIdTokenSession | A tenduke::oidc::OIDCSession, which uses ID-token as the source-of-truth for expiration times |
| CIdTokenSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which adds Authorization-header with OAuth ID-token |
| CInterruptedException | Exception thrown when an action is interrupted for some reason |
| CInvalidLicenseToken | Thrown in certain cases when license token is invalid |
| CJSONArrayMock | |
| CJSONBooleanMock | |
| CJSONBuilder | NOTE: This class is for now INTERNAL USE ONLY |
| CJSONElement | Superclass of JSON elements |
| CJSONElementMock | |
| CJSONException | Thrown on JSON-related errors |
| CJSONNumberMock | |
| CJSONObject | JSON object element |
| CJSONObjectBuilder | Builds JSON objects |
| CJSONObjectMock | |
| CJSONParser | Parser for JSON documents |
| CJSONParserMock | |
| CJSONStringMock | |
| CJWK | Describes a JWK, Json Web Key |
| CJWKException | Thrown when something goes wrong with JWKs |
| CJWKParser | Parses JSON Web Key (JWK) from JSON |
| CJWKS | JSON Web Key Set, a container for one or more tenduke::jwk::JWKs, indexed by the JWK key ID |
| CJWKSParser | Parses JSON Web Key Set (JWKS)-document |
| CJWKSSignatureValidator | A tenduke::jwt::JWTSignatureValidator, which determines the validation key and algorithm based on the JWT header and looking up the key from memory cache |
| CJWT | Very simple JWT implementation |
| CJWTParser | Parses JWT |
| CJWTParserFactory | |
| CJWTParserFactoryMock | |
| CJWTParserMock | |
| CJWTParsingException | Thrown when there is a problem parsing JWT |
| CKeyFactoryMock | |
| CKnownNameLicenseTokenParser | A license token parser, which expects the licensed item name to be one given in constructor |
| CKnownNamesLicenseTokenParser | A tenduke::ee::licensing::impl::LicenseTokenParser, which verifies the licensed item name from a set of known names |
| CLease | Describes checked out licensed item |
| CLeaseOrError | Describes whether given token is a lease or an error |
| CLibCryptoMessageDigest | Libcrypto-implementation of tenduke::crypto::MessageDigest |
| CLibcryptoMessageDigestFactory | Libcrypto-implementation of ‘tenduke::crypto::MessageDigestFactory’ |
| CLibcryptoPrivateKey | Libcrypto-implementation of a private key definition |
| CLibcryptoRSAKeyFactory | Libcrypto implementation of tenduke::crypto::RSAKeyFactory |
| CLibCurlURLEncoder | Libcurl implementation of tenduke::net::URLEncoder |
| CLicenseCheckoutItem | Licensed item to be checked out |
| CLicenseCheckoutParameters | Parameters for license checkout request |
| CLicenseCheckoutRequestMock | |
| CLicenseCheckoutResponse | Response from license checkout request |
| CLicenseReleaseParameters | Parameters for license-release request |
| CLicenseReleaseRequestMock | |
| CLicenseReleaseResponse | Response from tenduke::ee::licensing::LicenseReleaseRequest |
| CLicenseRenewParameters | Parameters for license renew request |
| CLicenseRenewRequestMock | |
| CLicenseRenewResponse | Response from license renew -request |
| CLicenseTokenParser | Parses license token into tenduke::ee::licensing::Lease (or into tenduke::ee::licensing::LicensingError) |
| CLicensingClient | High-level client for licensing operations |
| CLicensingConfiguration | 10Duke licensing configuration |
| CLicensingError | Describes an error returned from the API |
| CLicensingException | Generic licensing-related exception |
| CLogger | Simple logger interface |
| CMalformedURLException | Thrown when URL is malformed |
| CMessageDigest | Simple MessageDigest -service |
| CMessageDigestFactory | Creates instances of tenduke::crypto::MessageDigest |
| CMessageDigestVerifier | Verifies message by computing digest for message and comparing the computed signature to the provided signature |
| CMessageDigestVerifierMock | |
| CNetworkingException | Generic networking exception |
| CNotFound | Thrown for HTTP status code 404, "Not Found" |
| COAuthBackendConfiguration | Container for OAuth-backend configuration |
| COAuthBrowserAuthorizationRequest | OAuth-request to handle OAuth authorization using browser |
| COAuthBrowserAuthorizationRequestMock | |
| COAuthBrowserFlow | OAuth-client to initiate OAuth authorization flow |
| COAuthBrowserFlowMock | |
| COAuthClient | OAuth-client to initiate OAuth authorization flow |
| ►COAuthClientConfiguration | Container for OAuth-client-configuration |
| CBuilder | Builder for the configuration |
| COAuthClientCredentialsGrantFlow | OAuth Client Credentials Grant implementation of tenduke::oauth::OAuthClient |
| COAuthClientCredentialsGrantRequest | OAuth Client Credentials Grant implementation of tenduke::oauth::OAuthRequest |
| COAuthClientMock | |
| COAuthConfiguration | Container for OAuth-configuration |
| COAuthDeviceAuthorizationResponseReceived | A callback to denote that Device Authorization Response has been received |
| COAuthDeviceFlowAuthorizationRequest | Authorization request for OAuth Device Flow |
| COAuthDeviceFlowAuthorizationRequestMock | |
| COAuthDeviceFlowMock | |
| COAuthException | Generic OAuth-related exception |
| COAuthInvalidGrant | Exception thrown when server reported "invalid_grant" |
| COAuthPKCEFlow | OAuth Authorization Code Grant with PKCE implementation of tenduke::oauth::OAuthClient |
| COAuthPKCEFlowTest | |
| COAuthPKCERequest | PKCE-implementation of tenduke::oauth::OAuthRequest |
| COAuthRefreshRequest | Request to refresh OAuthState |
| COAuthRefreshRequestMock | |
| COAuthResourceOwnerPasswordFlow | OAuth Resource Owner Password Credentials Grant implementation of tenduke::oauth::OAuthClient |
| COAuthResourceOwnerPasswordRequest | OAuth Resource Owner Password Credentials Grant implementation of tenduke::oauth::OAuthRequest |
| COAuthServerError | Thrown when server reported an OAuth-related error |
| COAuthState | OAuth session state |
| COAuthStateImpl | Implementation of OAuthState |
| COAuthTokenRequest | OAuth token request |
| COAuthTokenRequestFake | |
| COAuthTokenResponse | Encapsulates results from tenduke::oauth::OAuthTokenRequest |
| COfflineLicenseTokenParser | Service for parsing standalone license tokens |
| COIDCAuthenticationRequest | OIDC-request, which handles the OIDC-flow |
| COIDCBrowserFlow | OpenID Connect -client |
| COIDCBrowserFlowAuthenticationRequest | An OIDC-authentication request, which handles the OIDC-flow, authenticating the user with browser |
| COIDCBrowserFlowAuthenticationRequestMock | |
| COIDCBrowserFlowMock | |
| COIDCClientCredentialsGrantLoginRequest | OIDC-login request using OAuth Client Credentials Grant |
| COIDCClientCredentialsLogin | OIDCLogin-service using OIDCClientCredentialsGrantFlow |
| COIDCClientFactoryMock | |
| COIDCClientMock | |
| COIDCConfiguration | OIDC-configuration |
| COIDCDeviceAuthenticationRequest | OIDC Authentication request using OAuth Device Authorization Grant |
| COIDCDeviceAuthenticationRequestMock | |
| COIDCDeviceFlow | OpenID Connect -client for OAuth Device Authorization Grant |
| COIDCDeviceFlowLogin | Login service using OIDC with OAuth Device Authorization Grant |
| COIDCDeviceFlowLoginRequest | Login request using OIDC with OAuth Device Authorization Grant |
| COIDCDeviceFlowMock | |
| COIDCException | Thrown when OIDC-related errors occur |
| COIDCLogin | High-level service to perform OIDC-login |
| COIDCLoginMock | |
| COIDCLoginRequest | Login-request initiated by OIDCLogin-service |
| COIDCLoginRequestMock | |
| COIDCLoginWithLoopbackRedirection | An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with "Loopback Interface Redirection" (see https://www.rfc-editor.org/rfc/rfc8252#section-7.3) |
| COIDCRefreshRequest | A request to refresh OIDC state |
| COIDCRefreshRequestMock | |
| COIDCResourceOwnerPasswordFlow | OIDC authentication service, which uses OAuth Resource Owner Password Credentials Grant |
| COIDCResourceOwnerPasswordLogin | OIDCLogin-service using OIDCResourceOwnerPasswordFlow |
| COIDCResourceOwnerPasswordLoginRequest | |
| COIDCResourceOwnerPasswordRequest | |
| COIDCSession | Stateful service to manage OIDC-session |
| ►COIDCSessionConfiguration | Configuration for tenduke::oidc::OIDCSessionImpl |
| CBuilder | Builder for the configuration |
| COIDCSessionImpl | Default implementation of tenduke::oidc::OIDCSession |
| COIDCSessionImplTest | |
| COIDCSessionMock | |
| COIDCSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which adds Authorization-header with Bearer-token |
| COIDCState | Container of OIDC state, describing the user session |
| CPrivateKey | Private key |
| CPublicKey | Public key |
| CPublicKeyMock | |
| CRandomUrlSafeString | Generates string of random URL-safe characters |
| CRedirectUriHandler | A HTTPRequestHandler, which listens to OAuth2 server redirect URI and signals of the completion of the login |
| CRequestTimedOut | A tenduke::net::NetworkingException thrown when network request timed out |
| CResourceOwnerPasswordCredentials | Credentials for Resource Owner Password Credentials Grant |
| CResourceOwnerPasswordCredentialsProvider | A callback, which returns the credentials to use in Resource Owner Password Credentials Grant |
| CROPGAuthenticationConfig | |
| CROPGClientFactory | Factory, which creates 10Duke Enterprise client, which authenticates user with OAuth Resource Owner Password Credentials Grant |
| CSerializedOIDCSession | A tenduke::oidc::OIDCSession, which guards that only one thread at a time can access the instance |
| CSerializeStateToJSON | Serializes client state to JSON |
| CServerError | 5xx-error, base class for 5xx-exceptions |
| CServiceConfiguration | Configuration for supporting services |
| CSocket | OS-independent abstraction of a socket |
| CSocketMock | |
| CStatefulCheckoutRequest | Stateful implementation of tenduke::ee::licensing::LicenseCheckoutRequest |
| CStatefulLicensingClient | A tenduke::ee::licensing::LicensingClient, which automatically maintains OIDC-login session |
| CStatefulReleaseRequest | Stateful implementation of tenduke::ee::licensing::LicenseReleaseRequest |
| CStatefulRenewRequest | Stateful implementation of tenduke::ee::licensing::authzapi::LicenseRenewRequest |
| CTendukeClient | The 10Duke Enterprise Client |
| CTendukeException | Base class for exceptions thrown by 10Duke C++ clients |
| CTendukeServices | A "service locator" for core services used by Tenduke client |
| CTest | |
| CTimedOut | Exception thrown when an action has timed out |
| CUnauthorized | Thrown for HTTP status code 401, "Unauthorized" |
| CUnknownHostException | A tenduke::net::NetworkingException thrown when the host is not found |
| CURL | Represents URL |
| CURLBuilder | Very simple URL-builder |
| CURLEncoderMock | |
| CURLException | A tenduke::net::NetworkingException thrown when various URL-related errors occur |
| CURLMock | |
| CURLParser | A service to parse URLs from strings |
| CURLParserMock | |