mirror of
https://github.com/Detanup01/gbe_fork.git
synced 2024-11-27 05:04:01 +08:00
Merge pull request #42 from universal963/patch-2
Correct undocumented api in `ISteamNetworkingSockets010` and `ISteamNetworkingSockets011`
This commit is contained in:
commit
712482f286
@ -490,9 +490,6 @@ public:
|
|||||||
/// - k_EResultInvalidParam - nLanes is bad
|
/// - k_EResultInvalidParam - nLanes is bad
|
||||||
EResult GetConnectionRealTimeStatus( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus, int nLanes, SteamNetConnectionRealTimeLaneStatus_t *pLanes );
|
EResult GetConnectionRealTimeStatus( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus, int nLanes, SteamNetConnectionRealTimeLaneStatus_t *pLanes );
|
||||||
|
|
||||||
// based on reversing the vftable returned from original steamclient64.dll
|
|
||||||
bool GetConnectionRealTimeStatus_old( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus );
|
|
||||||
|
|
||||||
/// Fetch the next available message(s) from the socket, if any.
|
/// Fetch the next available message(s) from the socket, if any.
|
||||||
/// Returns the number of messages returned into your array, up to nMaxMessages.
|
/// Returns the number of messages returned into your array, up to nMaxMessages.
|
||||||
/// If the connection handle is invalid, -1 is returned.
|
/// If the connection handle is invalid, -1 is returned.
|
||||||
|
@ -950,24 +950,6 @@ EResult Steam_Networking_Sockets::GetConnectionRealTimeStatus( HSteamNetConnecti
|
|||||||
return k_EResultOK;
|
return k_EResultOK;
|
||||||
}
|
}
|
||||||
|
|
||||||
// based on reversing the vftable returned from original steamclient64.dll
|
|
||||||
bool Steam_Networking_Sockets::GetConnectionRealTimeStatus_old( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus )
|
|
||||||
{
|
|
||||||
PRINT_DEBUG("undocumented API, interface v10-11");
|
|
||||||
/*
|
|
||||||
...
|
|
||||||
xor r9d, r9d // int nLanes = 0
|
|
||||||
mov qword ptr ss:[rsp+0x20], 0x0 // SteamNetConnectionRealTimeLaneStatus_t *pLanes = nullptr
|
|
||||||
...
|
|
||||||
call qword ptr ds:[rax+0x80] // call GetConnectionRealTimeStatus(hConn, pStatus, nLanes, pLanes)
|
|
||||||
test eax, eax
|
|
||||||
setne al if (eax !=0) { al=1 } else { al=0 }
|
|
||||||
...
|
|
||||||
ret
|
|
||||||
*/
|
|
||||||
return GetConnectionRealTimeStatus(hConn, pStatus, 0, nullptr) != EResult::k_EResultNone;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Fetch the next available message(s) from the socket, if any.
|
/// Fetch the next available message(s) from the socket, if any.
|
||||||
/// Returns the number of messages returned into your array, up to nMaxMessages.
|
/// Returns the number of messages returned into your array, up to nMaxMessages.
|
||||||
/// If the connection handle is invalid, -1 is returned.
|
/// If the connection handle is invalid, -1 is returned.
|
||||||
@ -1022,10 +1004,19 @@ bool Steam_Networking_Sockets::GetConnectionInfo( HSteamNetConnection hConn, Ste
|
|||||||
bool Steam_Networking_Sockets::GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus *pStats )
|
bool Steam_Networking_Sockets::GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus *pStats )
|
||||||
{
|
{
|
||||||
PRINT_DEBUG_ENTRY();
|
PRINT_DEBUG_ENTRY();
|
||||||
if (!pStats)
|
// based on reversing the vftable returned from original steamclient64.dll
|
||||||
return false;
|
/*
|
||||||
|
...
|
||||||
return GetConnectionRealTimeStatus(hConn, pStats, 0, NULL) == k_EResultOK;
|
xor r9d, r9d // int nLanes = 0
|
||||||
|
mov qword ptr ss:[rsp+0x20], 0x0 // SteamNetConnectionRealTimeLaneStatus_t *pLanes = nullptr
|
||||||
|
...
|
||||||
|
call qword ptr ds:[rax+0x80] // call GetConnectionRealTimeStatus(hConn, pStatus, nLanes, pLanes)
|
||||||
|
test eax, eax
|
||||||
|
setne al if (eax !=0) { al=1 } else { al=0 }
|
||||||
|
...
|
||||||
|
ret
|
||||||
|
*/
|
||||||
|
return GetConnectionRealTimeStatus(hConn, pStats, 0, NULL) != k_EResultNone;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -301,8 +301,9 @@ public:
|
|||||||
/// Returns basic information about the high-level state of the connection.
|
/// Returns basic information about the high-level state of the connection.
|
||||||
virtual bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pInfo ) = 0;
|
virtual bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pInfo ) = 0;
|
||||||
|
|
||||||
// based on reversing the vftable returned from original steamclient64.dll
|
/// Returns a small set of information about the real-time state of the connection
|
||||||
virtual bool GetConnectionRealTimeStatus_old( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus ) = 0;
|
/// Returns false if the connection handle is invalid, or the connection has ended.
|
||||||
|
virtual bool GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus *pStats ) = 0;
|
||||||
|
|
||||||
/// Returns detailed connection stats in text format. Useful
|
/// Returns detailed connection stats in text format. Useful
|
||||||
/// for dumping to a log, etc.
|
/// for dumping to a log, etc.
|
||||||
|
@ -301,8 +301,9 @@ public:
|
|||||||
/// Returns basic information about the high-level state of the connection.
|
/// Returns basic information about the high-level state of the connection.
|
||||||
virtual bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pInfo ) = 0;
|
virtual bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pInfo ) = 0;
|
||||||
|
|
||||||
// based on reversing the vftable returned from original steamclient64.dll
|
/// Returns a small set of information about the real-time state of the connection
|
||||||
virtual bool GetConnectionRealTimeStatus_old( HSteamNetConnection hConn, SteamNetConnectionRealTimeStatus_t *pStatus ) = 0;
|
/// Returns false if the connection handle is invalid, or the connection has ended.
|
||||||
|
virtual bool GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickConnectionStatus *pStats ) = 0;
|
||||||
|
|
||||||
/// Returns detailed connection stats in text format. Useful
|
/// Returns detailed connection stats in text format. Useful
|
||||||
/// for dumping to a log, etc.
|
/// for dumping to a log, etc.
|
||||||
|
Loading…
Reference in New Issue
Block a user