nn::ssl NamespaceNamespace for the SSL communication API.
Note: This library is provided for debugging purposes. If you intend to include it in your retail product, contact Nintendo at support@noa.com.
| Result | |
|---|---|
| nn::ssl::ResultProtocolFailedErr | Indicates an error caused by SSL protocol failure (for example, when client certificate authentication fails on the server side). |
| nn::ssl::ResultWantRead | Indicates that an asynchronous socket is in use and Read function processing is incomplete (please retry). |
| nn::ssl::ResultWantWrite | Indicates that an asynchronous socket is in use and Write function processing is incomplete. |
| nn::ssl::ResultSystemCallErr | Indicates that internal system functions returned an unexpected error. |
| nn::ssl::ResultSocketZeroReturn | Indicates that a zero was returned when socket Read/Write operations were performed internally. This is returned after attempts to read or write after the server has finished communication. |
| nn::ssl::ResultWantConnect | Indicates that an asynchronous socket is in use and the SSL handshake (DoHandshake) function processing is incomplete (please retry). |
| nn::ssl::ResultInternalSslIdErr | Indicates an internal error (invalid SSLID). |
| nn::ssl::ResultFailToGetServerCert | Indicates a failure to store the certificate data in the buffer. (This occurs when the certificate size in an argument-specified call to DoHandshake is larger than the buffer.) |
| nn::ssl::ResultVerifyCertRevokedErr | Indicates a server authentication error. (The server certificate was found to be registered on the revocation list.) |
| nn::ssl::ResultLibraryStateErr | Indicates that the SSL library is in an invalid state. (Occurs in cases such as when other library functions were called before initialization. |
| nn::ssl::ResultRandomErr | Indicates a random number processing error. |
| nn::ssl::ResultVerifyCertErr | Indicates a problem in verifying a certificate. |
| nn::ssl::ResultAlreadyInitializedErr | Indicates that a library is already initialized. |
| nn::ssl::ResultNotInitializedErr | Indicates that a library is not initialized. |
| nn::ssl::ResultOutOfMemoryErr | Indicates that memory allocation failed. |
| nn::ssl::ResultNotAssignServerErr | Indicates that the communication target server has not yet been assigned. |
| nn::ssl::ResultAlreadyAssignServerErr | Indicates that the remote server has already been allocated. |
| nn::ssl::ResultIpcSessionErr | Indicates an invalid IPC session. |
| nn::ssl::ResultProcessConnectionMaxErr | Indicates that the maximum number of connections that can be used by one process has been exceeded. |
| nn::ssl::ResultFailToCreateCertStoreErr | Indicates a failure to create the certificate store. |
| nn::ssl::ResultFailToCreateCrlStoreErr | Indicates that the creation of the CRL store failed. |
| nn::ssl::ResultFailToCreateClientCertErr | Indicates that the creation of the client certificate failed. |
| nn::ssl::ResultInvalidParamErr | Indicates that the argument is invalid. |
| nn::ssl::ResultNotImplementedErr | Indicates that a process is not implemented. |
| nn::ssl::ResultClientProcessMaxErr | Indicates the number of clients equivalent to maximum number of simultaneous client processes already being used. |
| nn::ssl::ResultIpcSessionMaxErr | Indicates that the maximum number of simultaneous IPC sessions are already connected. |
| nn::ssl::ResultInternalCertErr | Indicates that use of the internal certificate failed. |
| nn::ssl::ResultInternalCrlErr | Indicates that use of the internal CRL failed. |
| nn::ssl::ResultServerCertBufAlreadySetErr | Indicates that a buffer has already been configured for the server certificate. |
| Other | |
nn::ssl::CertStore
|
Class representing an SSL certificate store. The RootCA certificates used in a single SSL communication session first have all their certificate data registered to a CertStore instance, and then that CertStore instance is configured in the Connection class. |
nn::ssl::ClientCert
|
Class representing an SSL client certificate. The client certificates used in a single SSL communication session first have their certificate data registered to a ClientCert instance, and then that ClientCert instance is configured in the Connection class. |
nn::ssl::Connection
|
Class that represents SSL communication. One instance of this class handles SSL communication for one socket. |
nn::ssl::CrlStore
|
Class representing a CRL store. The CRLs used in a single SSL communication session first have all their CRL data registered to a CrlStore instance, and then that CrlStore instance is configured in the Connection class. |
VerifyOption
|
Verification options. | |
|---|---|---|
InternalCaCert
|
Definition of a device's internal CA certificates. | |
InternalCrl
|
Definition of a device's internal certificate revocation list (CRL). | |
InternalClientCert
|
Definition of a device's internal client certificates. | |
CertVerifyError
|
Certificate verification results. (Each definition uses a single bit. You can define multiple errors at the same time using a bitwise OR of multiple definitions. The GetCertVerifyErrors function gets these types of values as a result of verifying certificates.) |
|
ResultCode
|
Function result codes. Stored as description elements in the Result returned from API functions. |
typedef Definitions
CertId
|
Certificate ID. | |
|---|---|---|
CrlId
|
CRL ID. | |
ConnectionHandle
|
SSL connection ID. | |
CertStoreId
|
Certificate store ID. | |
CrlStoreId
|
CRL store ID. |
| Initialize/Finalize Entire Library | ||
|---|---|---|
Initialize
|
Initializes the SSL library. Processes linking the SSL library must call this function once before using the library. | |
Finalize
|
Finalizes the SSL library. Processes linking the SSL library must call this function once after they are done using the library. | |
| Pseudo-Random Number Functions | ||
GatherRandomEntropy
|
Gathers new entropy for random numbers. Note: SSL processes also gather their own entropy. This function is used to gather fresh entropy whenever you need it. | |
GenerateRandomBytes
|
Gets a random number. | |
CONFIDENTIAL