vitasdk
Documentation of the vitasdk

Exports for User. More...

Data Structures

struct  SceDrmBridgeMlnpsnlAuth1Opt
 

Functions

 VITASDK_BUILD_ASSERT_EQ (0x18, SceDrmBridgeMlnpsnlAuth1Opt)
 
SceBool _sceDrmBridgeIsAllowRemotePlayDebug (void)
 Reports whether remote-play debugging is allowed.
 
int _sceDrmBridgeMlnpsnlAuth1 (const SceSblGcAuthMgrMlnpsnlAuth1Request *request, const SceRtcTick *secure_tick, SceSblGcAuthMgrMlnpsnlAuth1Response *response, const SceDrmBridgeMlnpsnlAuth1Opt *opt)
 Performs the first MLNPSNL authentication phase.
 

Variables

SceSblGcAuthMgrMlnpsnlSessionData * SceDrmBridgeMlnpsnlAuth1Opt::session_data
 Destination for the phase-one session data.
 
SceSize SceDrmBridgeMlnpsnlAuth1Opt::request_size
 Must be 0x20; smaller copies leave some authentication input bytes uninitialized.
 
SceSize SceDrmBridgeMlnpsnlAuth1Opt::secure_tick_size
 Must be 8; smaller copies leave some authentication input bytes uninitialized.
 
SceSize SceDrmBridgeMlnpsnlAuth1Opt::response_size
 Number of response bytes to copy, at most 0x80.
 
SceSize SceDrmBridgeMlnpsnlAuth1Opt::session_data_size
 Number of session-data bytes to copy, at most 0x40.
 
SceUInt32 SceDrmBridgeMlnpsnlAuth1Opt::reserved
 Ignored on FW 3.60.
 

Detailed Description

Exports for User.


Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceDrmBridge_stub




Data Structure Documentation

◆ SceDrmBridgeMlnpsnlAuth1Opt

struct SceDrmBridgeMlnpsnlAuth1Opt
Data Fields
SceSblGcAuthMgrMlnpsnlSessionData * session_data Destination for the phase-one session data.
SceSize request_size Must be 0x20; smaller copies leave some authentication input bytes uninitialized.
SceSize secure_tick_size Must be 8; smaller copies leave some authentication input bytes uninitialized.
SceSize response_size Number of response bytes to copy, at most 0x80.
SceSize session_data_size Number of session-data bytes to copy, at most 0x40.
SceUInt32 reserved Ignored on FW 3.60.

Function Documentation

◆ VITASDK_BUILD_ASSERT_EQ()

VITASDK_BUILD_ASSERT_EQ ( 0x18  ,
SceDrmBridgeMlnpsnlAuth1Opt   
)

◆ _sceDrmBridgeIsAllowRemotePlayDebug()

SceBool _sceDrmBridgeIsAllowRemotePlayDebug ( void  )

Reports whether remote-play debugging is allowed.

Note
The calling process must be authorized as a system program.
Returns
1 when allowed, 0 when disabled, or a negative authorization error.

◆ _sceDrmBridgeMlnpsnlAuth1()

int _sceDrmBridgeMlnpsnlAuth1 ( const SceSblGcAuthMgrMlnpsnlAuth1Request *  request,
const SceRtcTick *  secure_tick,
SceSblGcAuthMgrMlnpsnlAuth1Response *  response,
const SceDrmBridgeMlnpsnlAuth1Opt *  opt 
)

Performs the first MLNPSNL authentication phase.

The SceDriverUser wrapper takes four buffers and sets all copy sizes to their maximum values. Keep the returned session data unchanged for the second authentication phase. All pointers must be non-NULL. Both output structures are built in zero-initialized kernel buffers. The requested byte counts are copied back even when authentication reports an error. This function does not use any caller buffer after it returns.

Parameters
[in]request- Phase-one request. Set opt->request_size to exactly 0x20.
[in]secure_tick- Secure tick. Set opt->secure_tick_size to exactly 8.
[out]response- Receives the phase-one response. opt->response_size must be at most 0x80; the system wrapper requests the complete structure.
[in]opt- Copy sizes and session-data destination.
Note
The calling process must be authorized as a system program.
Returns
0 on success; 0x808A0200 when an authentication buffer is NULL; or another negative copy, authorization, size, or authentication error.

Variable Documentation

◆ session_data

SceSblGcAuthMgrMlnpsnlSessionData* SceDrmBridgeMlnpsnlAuth1Opt::session_data

Destination for the phase-one session data.

◆ request_size

SceSize SceDrmBridgeMlnpsnlAuth1Opt::request_size

Must be 0x20; smaller copies leave some authentication input bytes uninitialized.

◆ secure_tick_size

SceSize SceDrmBridgeMlnpsnlAuth1Opt::secure_tick_size

Must be 8; smaller copies leave some authentication input bytes uninitialized.

◆ response_size

SceSize SceDrmBridgeMlnpsnlAuth1Opt::response_size

Number of response bytes to copy, at most 0x80.

◆ session_data_size

SceSize SceDrmBridgeMlnpsnlAuth1Opt::session_data_size

Number of session-data bytes to copy, at most 0x40.

◆ reserved

SceUInt32 SceDrmBridgeMlnpsnlAuth1Opt::reserved

Ignored on FW 3.60.