From be5a68ff352a79beacbd9f918cc1c92c17b0209f Mon Sep 17 00:00:00 2001 From: shenlei Date: Thu, 24 Sep 2026 00:13:32 +0900 Subject: [PATCH] port-map: mark 28 verified units already in port/ as PORTED The network stream phases, AccountConnector, NetStream/NetDevice/ NetAddress, EterPack*, lzo/tea/cipher/Timer and friends were copied in 2V1/2A but never marked. port_copy diff: 23 exact mechanical copies, 5 with // PORT: edits only; no platform stand-ins. Logic layer 67.9%. Co-Authored-By: Claude Opus 5.5 --- audit/history.jsonl | 1 + audit/port-map/EterBase/Random.cpp.json | 32 ++ audit/port-map/EterBase/Stl.cpp.json | 10 +- audit/port-map/EterBase/Timer.cpp.json | 110 ++++++ audit/port-map/EterBase/cipher.cpp.json | 80 +++++ audit/port-map/EterBase/lzo.cpp.json | 35 +- audit/port-map/EterBase/tea.cpp.json | 10 +- audit/port-map/EterLib/NetAddress.cpp.json | 86 +++++ audit/port-map/EterLib/NetDevice.cpp.json | 38 ++ .../EterLib/NetPacketHeaderMap.cpp.json | 32 ++ audit/port-map/EterLib/NetStream.cpp.json | 207 +++++++++++ audit/port-map/EterLib/TextTag.cpp.json | 44 +++ audit/port-map/EterLocale/Arabic.cpp.json | 86 +++++ .../port-map/EterLocale/StringCodec.cpp.json | 20 ++ .../StringCodec_Vietnamese.cpp.json | 44 +++ audit/port-map/EterPack/EterPack.cpp.json | 190 ++++++++-- .../port-map/EterPack/EterPackCursor.cpp.json | 50 +++ .../EterPack/EterPackManager.cpp.json | 60 +++- .../EterPackPolicy_CSHybridCrypt.cpp.json | 65 +++- .../UserInterface/AccountConnector.cpp.json | 254 +++++++++++++ .../AffectFlagContainer.cpp.json | 56 +++ .../UserInterface/InsultChecker.cpp.json | 62 ++++ .../PythonNetworkStream.cpp.json | 339 ++++++++++++++++++ .../PythonNetworkStreamEvent.cpp.json | 26 ++ ...PythonNetworkStreamPhaseHandShake.cpp.json | 68 ++++ .../PythonNetworkStreamPhaseLoading.cpp.json | 122 +++++++ .../PythonNetworkStreamPhaseLogin.cpp.json | 116 ++++++ .../PythonNetworkStreamPhaseOffline.cpp.json | 14 + .../PythonNetworkStreamPhaseSelect.cpp.json | 80 +++++ docs/PORT-PLAN.md | 2 +- 30 files changed, 2264 insertions(+), 75 deletions(-) create mode 100644 audit/port-map/EterBase/Random.cpp.json create mode 100644 audit/port-map/EterBase/Timer.cpp.json create mode 100644 audit/port-map/EterBase/cipher.cpp.json create mode 100644 audit/port-map/EterLib/NetAddress.cpp.json create mode 100644 audit/port-map/EterLib/NetDevice.cpp.json create mode 100644 audit/port-map/EterLib/NetPacketHeaderMap.cpp.json create mode 100644 audit/port-map/EterLib/NetStream.cpp.json create mode 100644 audit/port-map/EterLib/TextTag.cpp.json create mode 100644 audit/port-map/EterLocale/Arabic.cpp.json create mode 100644 audit/port-map/EterLocale/StringCodec.cpp.json create mode 100644 audit/port-map/EterLocale/StringCodec_Vietnamese.cpp.json create mode 100644 audit/port-map/EterPack/EterPackCursor.cpp.json create mode 100644 audit/port-map/UserInterface/AccountConnector.cpp.json create mode 100644 audit/port-map/UserInterface/AffectFlagContainer.cpp.json create mode 100644 audit/port-map/UserInterface/InsultChecker.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStream.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamEvent.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamPhaseHandShake.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamPhaseLoading.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamPhaseLogin.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamPhaseOffline.cpp.json create mode 100644 audit/port-map/UserInterface/PythonNetworkStreamPhaseSelect.cpp.json diff --git a/audit/history.jsonl b/audit/history.jsonl index fa688206..1c544f4b 100644 --- a/audit/history.jsonl +++ b/audit/history.jsonl @@ -528,3 +528,4 @@ {"time": "2026-09-23T15:00:00Z", "event": "port_round", "unit": "PORT-PLAN 2V3-b: click-to-move, terrain picking and attribute map", "ported": [], "adapted": ["CScreen::SetCursorPosition / CPythonGraphic::SetCursorPosition verbatim in platform layer", "CPythonBackground::GetPickingPoint* terrain half via CMapOutdoor::__PickTerrainHeight over native height", "CMapManager::isAttrOn via CMapOutdoor/CTerrain::isAttrOn over packed attr.atr", "CPythonBackground::CheckAdvancing + collision checkers verbatim (no map objects registered yet)"], "divergent": ["object picking and object collision wait for CMapOutdoor"], "needs_live": [], "tests": ["port.login_flow: click walked 334 cm, FUNC_MOVE..FUNC_WAIT; 17814 blocked cells", "port.login_live 192.168.21.203: PASS (key 133 cm, click 296 cm, 11406 blocked cells)", "script/python_game_render_test.sh offline: PASS", "ctest all: 19/19 (login_live skipped without env)", "port_map.py check: 0 errors"], "todo": ["switch client_main default to the port route and delete the legacy GDScript client"]} {"time": "2026-09-24T02:00:00Z", "event": "port_round", "unit": "PORT-PLAN batch 2 P0: UserInterface/PythonCharacterManager.cpp + InstanceBaseMovement.cpp", "ported": ["UserInterface/PythonCharacterManager.cpp (54)", "UserInterface/InstanceBaseMovement.cpp (32)"], "adapted": [], "divergent": [], "needs_live": [], "tests": ["diff vs 40250: include case, comment encoding, 2 PORT edits only", "ctest all: 19/19 incl. port.login_live 192.168.21.203", "port_map.py check: 0 errors"], "todo": ["P1 queue: FlyingInstance, ActorInstanceData, FlyingObjectManager, FlyTrace"]} {"time": "2026-09-24T03:00:00Z", "event": "port_round", "unit": "PORT-PLAN batch 2 P1: flying objects + effect/fly Python modules", "ported": ["GameLib/FlyingData.cpp (12)", "GameLib/FlyingInstance.cpp (20)", "GameLib/FlyingObjectManager.cpp (12)", "GameLib/FlyTrace.cpp (11)", "GameLib/ActorInstanceData.cpp (12)", "UserInterface/PythonEffectModule.cpp (8)", "UserInterface/PythonFlyModule.cpp (3)"], "adapted": ["CMapManager::GetTerrainHeight over native height tiles; GetHeight forwards to it"], "divergent": [], "needs_live": [], "tests": ["port.login_flow: indexed fly .msf registered by playersettingmodule and parses", "ctest all: 19/19 incl. port.login_live 192.168.21.203", "script/python_game_render_test.sh offline: PASS", "port_map.py check: 0 errors"], "todo": ["CEffectManager is a platform stub: fly effects are not rendered", "P2 network units already copied into port/ need verification and marking"]} +{"time": "2026-09-24T04:00:00Z", "event": "port_round", "unit": "PORT-PLAN batch 2: verify and mark 28 units copied into port/ in 2V1/2A", "ported": ["28 units, 372 functions: PythonNetworkStream{,PhaseLoading,PhaseLogin,PhaseSelect,PhaseHandShake,PhaseOffline,Event}, AccountConnector, NetStream, NetPacketHeaderMap, NetAddress, NetDevice, TextTag, EterPack, EterPackManager, EterPackCursor, EterPackPolicy_CSHybridCrypt, Timer, cipher, lzo, Random, Stl, tea, Arabic, StringCodec, StringCodec_Vietnamese, InsultChecker, AffectFlagContainer"], "adapted": [], "divergent": [], "needs_live": [], "tests": ["port_copy.py diff: 23 exact mechanical copies, 5 with // PORT: edits only; StringCodec_Vietnamese (not CP949) differs by BOM + include case", "no same-named platform/pending files", "ctest all 19/19 + render test on the same tree", "port_map.py check: 0 errors"], "todo": ["P2 ServerStateChecker (module still stubbed)", "P3 items/minimap/text tail"]} diff --git a/audit/port-map/EterBase/Random.cpp.json b/audit/port-map/EterBase/Random.cpp.json new file mode 100644 index 00000000..890014a8 --- /dev/null +++ b/audit/port-map/EterBase/Random.cpp.json @@ -0,0 +1,32 @@ +{ + "reference": "EterBase/Random.cpp", + "reference_sha256": "09432c7b72f58868c3c4927b1afec835c33801bdf8086446277d8e9884e6ab79", + "priority": "P4", + "contracts": [], + "functions": { + "srandom": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Random.cpp:srandom" + ] + }, + "random": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Random.cpp:random" + ] + }, + "frandom": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Random.cpp:frandom" + ] + }, + "random_range": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Random.cpp:random_range" + ] + } + } +} diff --git a/audit/port-map/EterBase/Stl.cpp.json b/audit/port-map/EterBase/Stl.cpp.json index dba73a1c..f1d1a3f4 100644 --- a/audit/port-map/EterBase/Stl.cpp.json +++ b/audit/port-map/EterBase/Stl.cpp.json @@ -11,7 +11,10 @@ "status": "PORTED" }, "stl_static_string": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Stl.cpp:stl_static_string" + ] }, "stl_lowers": { "impl": [ @@ -20,7 +23,10 @@ "status": "PORTED" }, "split_string": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Stl.cpp:split_string" + ] } } } diff --git a/audit/port-map/EterBase/Timer.cpp.json b/audit/port-map/EterBase/Timer.cpp.json new file mode 100644 index 00000000..b944902d --- /dev/null +++ b/audit/port-map/EterBase/Timer.cpp.json @@ -0,0 +1,110 @@ +{ + "reference": "EterBase/Timer.cpp", + "reference_sha256": "4b7d4070a8530c424dff7511f8f522caa199ca756f788fc9a53f8fb2f45195b1", + "priority": "P4", + "contracts": [], + "functions": { + "ELTimer_Init": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_Init" + ] + }, + "ELTimer_GetMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_GetMSec" + ] + }, + "ELTimer_SetServerMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_SetServerMSec" + ] + }, + "ELTimer_GetServerMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_GetServerMSec" + ] + }, + "ELTimer_GetFrameMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_GetFrameMSec" + ] + }, + "ELTimer_GetServerFrameMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_GetServerFrameMSec" + ] + }, + "ELTimer_SetFrameMSec": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:ELTimer_SetFrameMSec" + ] + }, + "CTimer::CTimer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::CTimer" + ] + }, + "CTimer::~CTimer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::~CTimer" + ] + }, + "CTimer::SetBaseTime": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::SetBaseTime" + ] + }, + "CTimer::Advance": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::Advance" + ] + }, + "CTimer::Adjust": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::Adjust" + ] + }, + "CTimer::GetCurrentSecond": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::GetCurrentSecond" + ] + }, + "CTimer::GetCurrentMillisecond": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::GetCurrentMillisecond" + ] + }, + "CTimer::GetElapsedSecond": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::GetElapsedSecond" + ] + }, + "CTimer::GetElapsedMilliecond": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::GetElapsedMilliecond" + ] + }, + "CTimer::UseCustomTime": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/Timer.cpp:CTimer::UseCustomTime" + ] + } + } +} diff --git a/audit/port-map/EterBase/cipher.cpp.json b/audit/port-map/EterBase/cipher.cpp.json new file mode 100644 index 00000000..dde80a68 --- /dev/null +++ b/audit/port-map/EterBase/cipher.cpp.json @@ -0,0 +1,80 @@ +{ + "reference": "EterBase/cipher.cpp", + "reference_sha256": "a0b860076a5a53a066e98a723e8fcf1f59a86b854f9420272baad216719a0e95", + "priority": "P4", + "contracts": [], + "functions": { + "Cipher::Cipher": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::Cipher" + ] + }, + "activated_": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:activated_" + ] + }, + "Cipher::~Cipher": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::~Cipher" + ] + }, + "Cipher::CleanUp": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::CleanUp" + ] + }, + "Cipher::Prepare": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::Prepare" + ] + }, + "Cipher::Activate": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::Activate" + ] + }, + "Cipher::SetUp": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:Cipher::SetUp" + ] + }, + "BlockCipherAlgorithm::Pick": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:BlockCipherAlgorithm::Pick" + ] + }, + "DH2KeyAgreement::DH2KeyAgreement": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:DH2KeyAgreement::DH2KeyAgreement" + ] + }, + "DH2KeyAgreement::~DH2KeyAgreement": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:DH2KeyAgreement::~DH2KeyAgreement" + ] + }, + "DH2KeyAgreement::Prepare": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:DH2KeyAgreement::Prepare" + ] + }, + "DH2KeyAgreement::Agree": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/cipher.cpp:DH2KeyAgreement::Agree" + ] + } + } +} diff --git a/audit/port-map/EterBase/lzo.cpp.json b/audit/port-map/EterBase/lzo.cpp.json index cc62d0b8..361899d5 100644 --- a/audit/port-map/EterBase/lzo.cpp.json +++ b/audit/port-map/EterBase/lzo.cpp.json @@ -35,10 +35,16 @@ "status": "PORTED" }, "CLZObject::BeginCompress": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZObject::BeginCompress" + ] }, "CLZObject::BeginCompressInBuffer": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZObject::BeginCompressInBuffer" + ] }, "CLZObject::Compress": { "status": "ADAPTED", @@ -63,7 +69,10 @@ "test": "extension/tests/port_eterpack_test.cpp (port.eterpack)" }, "CLZObject::Encrypt": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZObject::Encrypt" + ] }, "CLZObject::__Decrypt": { "impl": [ @@ -72,7 +81,10 @@ "status": "PORTED" }, "CLZObject::AllocBuffer": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZObject::AllocBuffer" + ] }, "CLZO::CLZO": { "impl": [ @@ -87,10 +99,16 @@ "status": "PORTED" }, "CLZO::CompressMemory": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZO::CompressMemory" + ] }, "CLZO::CompressEncryptedMemory": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZO::CompressEncryptedMemory" + ] }, "CLZO::Decompress": { "impl": [ @@ -99,7 +117,10 @@ "status": "PORTED" }, "CLZO::GetWorkMemory": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/lzo.cpp:CLZO::GetWorkMemory" + ] } } } diff --git a/audit/port-map/EterBase/tea.cpp.json b/audit/port-map/EterBase/tea.cpp.json index c1439a71..bc7ddf76 100644 --- a/audit/port-map/EterBase/tea.cpp.json +++ b/audit/port-map/EterBase/tea.cpp.json @@ -5,7 +5,10 @@ "contracts": [], "functions": { "tea_code": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/tea.cpp:tea_code" + ] }, "tea_decode": { "impl": [ @@ -14,7 +17,10 @@ "status": "PORTED" }, "tea_encrypt": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterBase/tea.cpp:tea_encrypt" + ] }, "tea_decrypt": { "impl": [ diff --git a/audit/port-map/EterLib/NetAddress.cpp.json b/audit/port-map/EterLib/NetAddress.cpp.json new file mode 100644 index 00000000..464800e1 --- /dev/null +++ b/audit/port-map/EterLib/NetAddress.cpp.json @@ -0,0 +1,86 @@ +{ + "reference": "EterLib/NetAddress.cpp", + "reference_sha256": "34f2a9e288b96ae92f65afb20fb5d842a91248300d98528f3c6366e104ae4dd8", + "priority": "P4", + "contracts": [], + "functions": { + "CNetworkAddress::GetHostName": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::GetHostName" + ] + }, + "CNetworkAddress::CNetworkAddress": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::CNetworkAddress" + ] + }, + "CNetworkAddress::~CNetworkAddress": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::~CNetworkAddress" + ] + }, + "CNetworkAddress::Clear": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::Clear" + ] + }, + "CNetworkAddress::IsIP": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::IsIP" + ] + }, + "CNetworkAddress::Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::Set" + ] + }, + "CNetworkAddress::SetLocalIP": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::SetLocalIP" + ] + }, + "CNetworkAddress::SetIP": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::SetIP" + ] + }, + "CNetworkAddress::SetDNS": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::SetDNS" + ] + }, + "CNetworkAddress::SetPort": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::SetPort" + ] + }, + "CNetworkAddress::GetSize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::GetSize" + ] + }, + "CNetworkAddress::GetIP": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::GetIP" + ] + }, + "CNetworkAddress::GetPort": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetAddress.cpp:CNetworkAddress::GetPort" + ] + } + } +} diff --git a/audit/port-map/EterLib/NetDevice.cpp.json b/audit/port-map/EterLib/NetDevice.cpp.json new file mode 100644 index 00000000..c3471911 --- /dev/null +++ b/audit/port-map/EterLib/NetDevice.cpp.json @@ -0,0 +1,38 @@ +{ + "reference": "EterLib/NetDevice.cpp", + "reference_sha256": "b96dcdf94629773689aeeae4a058b7bfa287612f98f95d7b1ad15ec87bf58c88", + "priority": "P4", + "contracts": [], + "functions": { + "CNetworkDevice::CNetworkDevice": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetDevice.cpp:CNetworkDevice::CNetworkDevice" + ] + }, + "CNetworkDevice::~CNetworkDevice": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetDevice.cpp:CNetworkDevice::~CNetworkDevice" + ] + }, + "CNetworkDevice::Initialize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetDevice.cpp:CNetworkDevice::Initialize" + ] + }, + "CNetworkDevice::Destroy": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetDevice.cpp:CNetworkDevice::Destroy" + ] + }, + "CNetworkDevice::Create": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetDevice.cpp:CNetworkDevice::Create" + ] + } + } +} diff --git a/audit/port-map/EterLib/NetPacketHeaderMap.cpp.json b/audit/port-map/EterLib/NetPacketHeaderMap.cpp.json new file mode 100644 index 00000000..10ba90c5 --- /dev/null +++ b/audit/port-map/EterLib/NetPacketHeaderMap.cpp.json @@ -0,0 +1,32 @@ +{ + "reference": "EterLib/NetPacketHeaderMap.cpp", + "reference_sha256": "6444a6e395333f4963237b99cc24c35711b75493b16b19967f74018b65e4d02c", + "priority": "P2", + "contracts": [], + "functions": { + "CNetworkPacketHeaderMap::Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetPacketHeaderMap.cpp:CNetworkPacketHeaderMap::Set" + ] + }, + "CNetworkPacketHeaderMap::Get": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetPacketHeaderMap.cpp:CNetworkPacketHeaderMap::Get" + ] + }, + "CNetworkPacketHeaderMap::CNetworkPacketHeaderMap": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetPacketHeaderMap.cpp:CNetworkPacketHeaderMap::CNetworkPacketHeaderMap" + ] + }, + "CNetworkPacketHeaderMap::~CNetworkPacketHeaderMap": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetPacketHeaderMap.cpp:CNetworkPacketHeaderMap::~CNetworkPacketHeaderMap" + ] + } + } +} diff --git a/audit/port-map/EterLib/NetStream.cpp.json b/audit/port-map/EterLib/NetStream.cpp.json new file mode 100644 index 00000000..315fd363 --- /dev/null +++ b/audit/port-map/EterLib/NetStream.cpp.json @@ -0,0 +1,207 @@ +{ + "reference": "EterLib/NetStream.cpp", + "reference_sha256": "e19462f99d1ed8ceda3c3a8cfdae75072d4f5d1c92747b225e8e1a31f1648dd4", + "priority": "P2", + "contracts": [], + "functions": { + "CNetworkStream::SetSecurityMode": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SetSecurityMode" + ] + }, + "CNetworkStream::IsSecurityMode": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::IsSecurityMode" + ] + }, + "CNetworkStream::SetRecvBufferSize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SetRecvBufferSize" + ] + }, + "CNetworkStream::SetSendBufferSize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SetSendBufferSize" + ] + }, + "CNetworkStream::__RecvInternalBuffer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::__RecvInternalBuffer" + ] + }, + "CNetworkStream::__SendInternalBuffer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::__SendInternalBuffer" + ] + }, + "CNetworkStream::__PopSendBuffer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::__PopSendBuffer" + ] + }, + "CNetworkStream::Process": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Process" + ] + }, + "CNetworkStream::Disconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Disconnect" + ] + }, + "CNetworkStream::Clear": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Clear" + ] + }, + "CNetworkStream::Connect": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Connect" + ] + }, + "CNetworkStream::ClearRecvBuffer": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::ClearRecvBuffer" + ] + }, + "CNetworkStream::GetRecvBufferSize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::GetRecvBufferSize" + ] + }, + "CNetworkStream::Peek": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Peek" + ] + }, + "GetSendHeaderName": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:GetSendHeaderName" + ] + }, + "GetRecvHeaderName": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:GetRecvHeaderName" + ] + }, + "CNetworkStream::Recv": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Recv" + ] + }, + "CNetworkStream::__GetSendBufferSize": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::__GetSendBufferSize" + ] + }, + "CNetworkStream::Send": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Send" + ] + }, + "CNetworkStream::SendFlush": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SendFlush" + ] + }, + "CNetworkStream::IsOnline": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::IsOnline" + ] + }, + "CNetworkStream::SetPacketSequenceMode": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SetPacketSequenceMode" + ] + }, + "CNetworkStream::SendSequence": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::SendSequence" + ] + }, + "CNetworkStream::OnProcess": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::OnProcess" + ] + }, + "CNetworkStream::OnRemoteDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::OnRemoteDisconnect" + ] + }, + "CNetworkStream::OnDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::OnDisconnect" + ] + }, + "CNetworkStream::OnConnectSuccess": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::OnConnectSuccess" + ] + }, + "CNetworkStream::OnConnectFailure": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::OnConnectFailure" + ] + }, + "CNetworkStream::CNetworkStream": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::CNetworkStream" + ] + }, + "CNetworkStream::~CNetworkStream": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::~CNetworkStream" + ] + }, + "CNetworkStream::Prepare": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Prepare" + ] + }, + "CNetworkStream::Activate": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::Activate" + ] + }, + "CNetworkStream::ActivateCipher": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/NetStream.cpp:CNetworkStream::ActivateCipher" + ], + "note": "PORT: also decrypts ciphertext already sitting behind KEY_AGREEMENT_COMPLETED in the same recv (loopback/LAN coalescing); 40250 relies on server pulse timing." + } + } +} diff --git a/audit/port-map/EterLib/TextTag.cpp.json b/audit/port-map/EterLib/TextTag.cpp.json new file mode 100644 index 00000000..a58ce2e6 --- /dev/null +++ b/audit/port-map/EterLib/TextTag.cpp.json @@ -0,0 +1,44 @@ +{ + "reference": "EterLib/TextTag.cpp", + "reference_sha256": "9455c6d6caf23ed2c4cee7dacd37341a93f8b594842e9f015e7862bd7144c675", + "priority": "P4", + "contracts": [], + "functions": { + "GetTextTag": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:GetTextTag" + ] + }, + "GetTextTagOutputString": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:GetTextTagOutputString" + ] + }, + "GetTextTagInternalPosFromRenderPos": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:GetTextTagInternalPosFromRenderPos" + ] + }, + "GetTextTagOutputLen": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:GetTextTagOutputLen" + ] + }, + "FindColorTagStartPosition": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:FindColorTagStartPosition" + ] + }, + "FindColorTagEndPosition": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLib/TextTag.cpp:FindColorTagEndPosition" + ] + } + } +} diff --git a/audit/port-map/EterLocale/Arabic.cpp.json b/audit/port-map/EterLocale/Arabic.cpp.json new file mode 100644 index 00000000..4dfc581f --- /dev/null +++ b/audit/port-map/EterLocale/Arabic.cpp.json @@ -0,0 +1,86 @@ +{ + "reference": "EterLocale/Arabic.cpp", + "reference_sha256": "c0767192e7f0cac80847a784dbcb0cd01540f18f1a1981008c61520be808d3fd", + "priority": "P4", + "contracts": [], + "functions": { + "Arabic_IsInSpace": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsInSpace" + ] + }, + "Arabic_IsInSymbol": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsInSymbol" + ] + }, + "Arabic_IsInPresentation": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsInPresentation" + ] + }, + "Arabic_HasPresentation": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_HasPresentation" + ] + }, + "Arabic_GetComposition": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_GetComposition" + ] + }, + "Arabic_GetMap": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_GetMap" + ] + }, + "Arabic_IsInMap": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsInMap" + ] + }, + "Arabic_IsInComposing": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsInComposing" + ] + }, + "Arabic_IsNext": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsNext" + ] + }, + "Arabic_IsComb1": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsComb1" + ] + }, + "Arabic_IsComb2": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_IsComb2" + ] + }, + "Arabic_MakeShape": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_MakeShape" + ] + }, + "Arabic_ConvSymbol": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/Arabic.cpp:Arabic_ConvSymbol" + ] + } + } +} diff --git a/audit/port-map/EterLocale/StringCodec.cpp.json b/audit/port-map/EterLocale/StringCodec.cpp.json new file mode 100644 index 00000000..f83210a4 --- /dev/null +++ b/audit/port-map/EterLocale/StringCodec.cpp.json @@ -0,0 +1,20 @@ +{ + "reference": "EterLocale/StringCodec.cpp", + "reference_sha256": "274b3d643d1c89e1fd0ab443d624bb496f02e64cccc60ba0c4e099b3c39fb944", + "priority": "P4", + "contracts": [], + "functions": { + "Ymir_WideCharToMultiByte": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec.cpp:Ymir_WideCharToMultiByte" + ] + }, + "Ymir_MultiByteToWideChar": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec.cpp:Ymir_MultiByteToWideChar" + ] + } + } +} diff --git a/audit/port-map/EterLocale/StringCodec_Vietnamese.cpp.json b/audit/port-map/EterLocale/StringCodec_Vietnamese.cpp.json new file mode 100644 index 00000000..ce4dd8cb --- /dev/null +++ b/audit/port-map/EterLocale/StringCodec_Vietnamese.cpp.json @@ -0,0 +1,44 @@ +{ + "reference": "EterLocale/StringCodec_Vietnamese.cpp", + "reference_sha256": "383544a9075592643adc7270295e2bae1ded2b319c3180dd0c45ab753591723c", + "priority": "P4", + "contracts": [], + "functions": { + "IsTone": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:IsTone" + ] + }, + "ComposeTone": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:ComposeTone" + ] + }, + "EL_String_Decode_Vietnamese": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:EL_String_Decode_Vietnamese" + ] + }, + "DecomposeLetter": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:DecomposeLetter" + ] + }, + "DecomposeTone": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:DecomposeTone" + ] + }, + "EL_String_Encode_Vietnamese": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterLocale/StringCodec_Vietnamese.cpp:EL_String_Encode_Vietnamese" + ] + } + } +} diff --git a/audit/port-map/EterPack/EterPack.cpp.json b/audit/port-map/EterPack/EterPack.cpp.json index cdaee06a..c362bb54 100644 --- a/audit/port-map/EterPack/EterPack.cpp.json +++ b/audit/port-map/EterPack/EterPack.cpp.json @@ -5,46 +5,88 @@ "contracts": [], "functions": { "CMakePackLog::SetFileName": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::SetFileName" + ] }, "CMakePackLog::GetSingleton": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::GetSingleton" + ] }, "CMakePackLog::CMakePackLog": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::CMakePackLog" + ] }, "CMakePackLog::~CMakePackLog": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::~CMakePackLog" + ] }, "CMakePackLog::__IsLogMode": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::__IsLogMode" + ] }, "CMakePackLog::Writef": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::Writef" + ] }, "CMakePackLog::Writenf": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::Writenf" + ] }, "CMakePackLog::Write": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::Write" + ] }, "CMakePackLog::__Write": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::__Write" + ] }, "CMakePackLog::WriteErrorf": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::WriteErrorf" + ] }, "CMakePackLog::WriteErrornf": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::WriteErrornf" + ] }, "CMakePackLog::WriteError": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::WriteError" + ] }, "CMakePackLog::__WriteError": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::__WriteError" + ] }, "CMakePackLog::FlushError": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CMakePackLog::FlushError" + ] }, "CEterPack::CEterPack": { "impl": [ @@ -65,7 +107,10 @@ "status": "PORTED" }, "CEterPack::GetPathName": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetPathName" + ] }, "CEterPack::Create": { "impl": [ @@ -74,13 +119,22 @@ "status": "PORTED" }, "CEterPack::DecryptIV": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::DecryptIV" + ] }, "CEterPack::DecryptIndexFile": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::DecryptIndexFile" + ] }, "CEterPack::EncryptIndexFile": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::EncryptIndexFile" + ] }, "CEterPack::__BuildIndex": { "impl": [ @@ -101,22 +155,40 @@ "status": "PORTED" }, "CEterPack::Delete": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::Delete" + ] }, "CEterPack::Extract": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::Extract" + ] }, "CEterPack::GetNames": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetNames" + ] }, "CEterPack::Put": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::Put" + ] }, "CEterPack::GenerateMD5Hash": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GenerateMD5Hash" + ] }, "CEterPack::GetFragmentSize": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetFragmentSize" + ] }, "CEterPack::CreateIndexFile": { "impl": [ @@ -125,7 +197,10 @@ "status": "PORTED" }, "CEterPack::WriteIndex": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::WriteIndex" + ] }, "CEterPack::GetFreeBlockIndex": { "impl": [ @@ -140,10 +215,16 @@ "status": "PORTED" }, "CEterPack::GetNewIndexPosition": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetNewIndexPosition" + ] }, "CEterPack::NewIndex": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::NewIndex" + ] }, "CEterPack::FindIndex": { "impl": [ @@ -164,22 +245,40 @@ "status": "PORTED" }, "CEterPack::GetNewDataPosition": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetNewDataPosition" + ] }, "CEterPack::ReadData": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::ReadData" + ] }, "CEterPack::WriteData": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::WriteData" + ] }, "CEterPack::WriteNewData": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::WriteNewData" + ] }, "CEterPack::GetIndexMap": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetIndexMap" + ] }, "CEterPack::DeleteUnreferencedData": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::DeleteUnreferencedData" + ] }, "CEterPack::GetDBName": { "impl": [ @@ -188,16 +287,28 @@ "status": "PORTED" }, "CEterPack::__CreateFileNameKey_Panama": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::__CreateFileNameKey_Panama" + ] }, "CEterPack::__Encrypt_Panama": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::__Encrypt_Panama" + ] }, "CEterPack::__Decrypt_Panama": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::__Decrypt_Panama" + ] }, "CEterPack::GetPackPolicy_HybridCrypt": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterPack::GetPackPolicy_HybridCrypt" + ] }, "CEterFileDict::InsertItem": { "impl": [ @@ -206,7 +317,10 @@ "status": "PORTED" }, "CEterFileDict::UpdateItem": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPack.cpp:CEterFileDict::UpdateItem" + ] }, "CEterFileDict::GetItem": { "impl": [ diff --git a/audit/port-map/EterPack/EterPackCursor.cpp.json b/audit/port-map/EterPack/EterPackCursor.cpp.json new file mode 100644 index 00000000..0e1c3c45 --- /dev/null +++ b/audit/port-map/EterPack/EterPackCursor.cpp.json @@ -0,0 +1,50 @@ +{ + "reference": "EterPack/EterPackCursor.cpp", + "reference_sha256": "46bbb2f070ce856262d619e6933a689d055ea4804108ff64558fe58cc7e42838", + "priority": "P4", + "contracts": [], + "functions": { + "CEterPackCursor::CEterPackCursor": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::CEterPackCursor" + ] + }, + "CEterPackCursor::~CEterPackCursor": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::~CEterPackCursor" + ] + }, + "CEterPackCursor::Open": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::Open" + ] + }, + "CEterPackCursor::Close": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::Close" + ] + }, + "CEterPackCursor::Seek": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::Seek" + ] + }, + "CEterPackCursor::Read": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::Read" + ] + }, + "CEterPackCursor::Size": { + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackCursor.cpp:CEterPackCursor::Size" + ] + } + } +} diff --git a/audit/port-map/EterPack/EterPackManager.cpp.json b/audit/port-map/EterPack/EterPackManager.cpp.json index 029a70f0..34f1d601 100644 --- a/audit/port-map/EterPack/EterPackManager.cpp.json +++ b/audit/port-map/EterPack/EterPackManager.cpp.json @@ -5,7 +5,10 @@ "contracts": [], "functions": { "CEterPackManager::FindPack": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::FindPack" + ] }, "CEterPackManager::SetCacheMode": { "impl": [ @@ -14,7 +17,10 @@ "status": "PORTED" }, "CEterPackManager::SetRelativePathMode": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::SetRelativePathMode" + ] }, "CEterPackManager::ConvertFileName": { "impl": [ @@ -23,10 +29,16 @@ "status": "PORTED" }, "CEterPackManager::CompareName": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::CompareName" + ] }, "CEterPackManager::LoadStaticCache": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::LoadStaticCache" + ] }, "CEterPackManager::__FindCache": { "impl": [ @@ -53,7 +65,10 @@ "status": "PORTED" }, "CEterPackManager::ArrangeMemoryMappedPack": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::ArrangeMemoryMappedPack" + ] }, "CEterPackManager::GetFromFile": { "impl": [ @@ -80,13 +95,22 @@ "status": "PORTED" }, "CEterPackManager::GetRootPackFileName": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::GetRootPackFileName" + ] }, "CEterPackManager::DecryptPackIV": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::DecryptPackIV" + ] }, "CEterPackManager::RegisterPackWhenPackMaking": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::RegisterPackWhenPackMaking" + ] }, "CEterPackManager::RegisterPack": { "impl": [ @@ -101,7 +125,10 @@ "status": "PORTED" }, "CEterPackManager::GetSearchMode": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::GetSearchMode" + ] }, "CEterPackManager::CEterPackManager": { "impl": [ @@ -116,13 +143,22 @@ "status": "PORTED" }, "CEterPackManager::RetrieveHybridCryptPackKeys": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::RetrieveHybridCryptPackKeys" + ] }, "CEterPackManager::RetrieveHybridCryptPackSDB": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::RetrieveHybridCryptPackSDB" + ] }, "CEterPackManager::WriteHybridCryptPackInfo": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackManager.cpp:CEterPackManager::WriteHybridCryptPackInfo" + ] } } } diff --git a/audit/port-map/EterPack/EterPackPolicy_CSHybridCrypt.cpp.json b/audit/port-map/EterPack/EterPackPolicy_CSHybridCrypt.cpp.json index 166b0630..5b68f1d9 100644 --- a/audit/port-map/EterPack/EterPackPolicy_CSHybridCrypt.cpp.json +++ b/audit/port-map/EterPack/EterPackPolicy_CSHybridCrypt.cpp.json @@ -5,7 +5,10 @@ "contracts": [], "functions": { "GetFileExt": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:GetFileExt" + ] }, "EterPackPolicy_CSHybridCrypt::~EterPackPolicy_CSHybridCrypt": { "impl": [ @@ -14,40 +17,76 @@ "status": "PORTED" }, "EterPackPolicy_CSHybridCrypt::IsContainingCryptKey": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::IsContainingCryptKey" + ] }, "EterPackPolicy_CSHybridCrypt::GenerateCryptKey": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::GenerateCryptKey" + ] }, "EterPackPolicy_CSHybridCrypt::GetPerFileCryptKey": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::GetPerFileCryptKey" + ] }, "EterPackPolicy_CSHybridCrypt::EncryptMemory": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::EncryptMemory" + ] }, "EterPackPolicy_CSHybridCrypt::DecryptMemory": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::DecryptMemory" + ] }, "EterPackPolicy_CSHybridCrypt::WriteCryptKeyToFile": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::WriteCryptKeyToFile" + ] }, "EterPackPolicy_CSHybridCrypt::ReadCryptKeyInfoFromStream": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::ReadCryptKeyInfoFromStream" + ] }, "EterPackPolicy_CSHybridCrypt::GenerateSupplementaryDataBlock": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::GenerateSupplementaryDataBlock" + ] }, "EterPackPolicy_CSHybridCrypt::GetSupplementaryDataBlock": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::GetSupplementaryDataBlock" + ] }, "EterPackPolicy_CSHybridCrypt::IsContainingSDBFile": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::IsContainingSDBFile" + ] }, "EterPackPolicy_CSHybridCrypt::WriteSupplementaryDataBlockToFile": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::WriteSupplementaryDataBlockToFile" + ] }, "EterPackPolicy_CSHybridCrypt::ReadSupplementatyDataBlockFromStream": { - "status": "TODO" + "status": "PORTED", + "impl": [ + "extension/src/port/EterPack/EterPackPolicy_CSHybridCrypt.cpp:EterPackPolicy_CSHybridCrypt::ReadSupplementatyDataBlockFromStream" + ] } } } diff --git a/audit/port-map/UserInterface/AccountConnector.cpp.json b/audit/port-map/UserInterface/AccountConnector.cpp.json new file mode 100644 index 00000000..1962bdd5 --- /dev/null +++ b/audit/port-map/UserInterface/AccountConnector.cpp.json @@ -0,0 +1,254 @@ +{ + "reference": "UserInterface/AccountConnector.cpp", + "reference_sha256": "b6613da0e2ffc04cb9f8fb2880a0c73c7c613366fbd3147b79fb4ca46ffff06f", + "priority": "P2", + "contracts": [], + "functions": { + "CAccountConnector::SetHandler": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::SetHandler" + ] + }, + "CAccountConnector::SetLoginInfo": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::SetLoginInfo" + ] + }, + "CAccountConnector::ClearLoginInfo": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::ClearLoginInfo" + ] + }, + "CAccountConnector::Connect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::Connect" + ] + }, + "CAccountConnector::Disconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::Disconnect" + ] + }, + "CAccountConnector::SendNEWCIBNPasspodAnswerPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::SendNEWCIBNPasspodAnswerPacket" + ] + }, + "CAccountConnector::SendRunupMatrixCardPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::SendRunupMatrixCardPacket" + ] + }, + "CAccountConnector::SendChinaMatrixCardPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::SendChinaMatrixCardPacket" + ] + }, + "CAccountConnector::Process": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::Process" + ] + }, + "CAccountConnector::__StateProcess": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__StateProcess" + ] + }, + "CAccountConnector::__HandshakeState_Process": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__HandshakeState_Process" + ] + }, + "CAccountConnector::__AuthState_Process": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_Process" + ] + }, + "CAccountConnector::__AuthState_RecvEmpty": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvEmpty" + ] + }, + "CAccountConnector::__AuthState_RecvPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvPhase" + ] + }, + "CAccountConnector::__AuthState_RecvHandshake": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvHandshake" + ] + }, + "CAccountConnector::__AuthState_RecvPanamaPack": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvPanamaPack" + ] + }, + "CAccountConnector::__AuthState_RecvHybridCryptKeys": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvHybridCryptKeys" + ] + }, + "CAccountConnector::__AuthState_RecvHybridCryptSDB": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvHybridCryptSDB" + ] + }, + "CAccountConnector::__AuthState_RecvPing": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvPing" + ] + }, + "CAccountConnector::__AuthState_SendPong": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_SendPong" + ] + }, + "CAccountConnector::__AuthState_RecvAuthSuccess": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvAuthSuccess" + ] + }, + "CAccountConnector::__AuthState_RecvAuthSuccess_OpenID": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvAuthSuccess_OpenID" + ] + }, + "CAccountConnector::__AuthState_RecvAuthFailure": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvAuthFailure" + ] + }, + "CAccountConnector::__AuthState_RecvRunupMatrixQuiz": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvRunupMatrixQuiz" + ] + }, + "CAccountConnector::__AuthState_RecvNEWCIBNPasspodRequest": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvNEWCIBNPasspodRequest" + ] + }, + "CAccountConnector::__AuthState_RecvChinaMatrixCard": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvChinaMatrixCard" + ] + }, + "CAccountConnector::__AuthState_RecvKeyAgreement": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvKeyAgreement" + ] + }, + "CAccountConnector::__AuthState_RecvKeyAgreementCompleted": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_RecvKeyAgreementCompleted" + ] + }, + "CAccountConnector::__AnalyzePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AnalyzePacket" + ] + }, + "CAccountConnector::__AnalyzeVarSizePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AnalyzeVarSizePacket" + ] + }, + "CAccountConnector::__OfflineState_Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__OfflineState_Set" + ] + }, + "CAccountConnector::__HandshakeState_Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__HandshakeState_Set" + ] + }, + "CAccountConnector::__AuthState_Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__AuthState_Set" + ] + }, + "CAccountConnector::OnConnectFailure": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::OnConnectFailure" + ] + }, + "CAccountConnector::OnConnectSuccess": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::OnConnectSuccess" + ] + }, + "CAccountConnector::OnRemoteDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::OnRemoteDisconnect" + ] + }, + "CAccountConnector::OnDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::OnDisconnect" + ] + }, + "CAccountConnector::__BuildClientKey": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__BuildClientKey" + ] + }, + "CAccountConnector::__Inialize": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::__Inialize" + ] + }, + "CAccountConnector::CAccountConnector": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::CAccountConnector" + ] + }, + "CAccountConnector::~CAccountConnector": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AccountConnector.cpp:CAccountConnector::~CAccountConnector" + ] + } + } +} diff --git a/audit/port-map/UserInterface/AffectFlagContainer.cpp.json b/audit/port-map/UserInterface/AffectFlagContainer.cpp.json new file mode 100644 index 00000000..31b47f10 --- /dev/null +++ b/audit/port-map/UserInterface/AffectFlagContainer.cpp.json @@ -0,0 +1,56 @@ +{ + "reference": "UserInterface/AffectFlagContainer.cpp", + "reference_sha256": "89c0fcd61ff4dec88f9c880421cb62d86dcdbfa29349df6ce03475a524d3abf6", + "priority": "P4", + "contracts": [], + "functions": { + "CAffectFlagContainer::CAffectFlagContainer": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::CAffectFlagContainer" + ] + }, + "CAffectFlagContainer::~CAffectFlagContainer": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::~CAffectFlagContainer" + ] + }, + "CAffectFlagContainer::Clear": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::Clear" + ] + }, + "CAffectFlagContainer::CopyInstance": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::CopyInstance" + ] + }, + "CAffectFlagContainer::CopyData": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::CopyData" + ] + }, + "CAffectFlagContainer::ConvertToPosition": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::ConvertToPosition" + ] + }, + "CAffectFlagContainer::Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::Set" + ] + }, + "CAffectFlagContainer::IsSet": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/AffectFlagContainer.cpp:CAffectFlagContainer::IsSet" + ] + } + } +} diff --git a/audit/port-map/UserInterface/InsultChecker.cpp.json b/audit/port-map/UserInterface/InsultChecker.cpp.json new file mode 100644 index 00000000..3718cd8c --- /dev/null +++ b/audit/port-map/UserInterface/InsultChecker.cpp.json @@ -0,0 +1,62 @@ +{ + "reference": "UserInterface/InsultChecker.cpp", + "reference_sha256": "77dfbc4b28610181dcfcf3dc8a9f994495f81788ed04462386ef2d9cc1a22b79", + "priority": "P4", + "contracts": [], + "functions": { + "CInsultChecker::GetSingleton": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::GetSingleton" + ] + }, + "CInsultChecker::CInsultChecker": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::CInsultChecker" + ] + }, + "CInsultChecker::~CInsultChecker": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::~CInsultChecker" + ] + }, + "CInsultChecker::Clear": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::Clear" + ] + }, + "CInsultChecker::AppendInsult": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::AppendInsult" + ] + }, + "CInsultChecker::__GetInsultLength": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::__GetInsultLength" + ] + }, + "CInsultChecker::__IsInsult": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::__IsInsult" + ] + }, + "CInsultChecker::FilterInsult": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::FilterInsult" + ] + }, + "CInsultChecker::IsInsultIn": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/InsultChecker.cpp:CInsultChecker::IsInsultIn" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStream.cpp.json b/audit/port-map/UserInterface/PythonNetworkStream.cpp.json new file mode 100644 index 00000000..4aa41b57 --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStream.cpp.json @@ -0,0 +1,339 @@ +{ + "reference": "UserInterface/PythonNetworkStream.cpp", + "reference_sha256": "0781c6739390aeaf0a8b0a1e372bfe4a4df353e885b4e02c767b126413eaa79d", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::ExitApplication": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ExitApplication" + ] + }, + "CPythonNetworkStream::ExitGame": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ExitGame" + ] + }, + "CPythonNetworkStream::LogOutGame": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::LogOutGame" + ] + }, + "CPythonNetworkStream::AbsoluteExitGame": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::AbsoluteExitGame" + ] + }, + "CPythonNetworkStream::AbsoluteExitApplication": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::AbsoluteExitApplication" + ] + }, + "CPythonNetworkStream::__IsNotPing": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__IsNotPing" + ] + }, + "CPythonNetworkStream::GetGuildID": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetGuildID" + ] + }, + "CPythonNetworkStream::UploadMark": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::UploadMark" + ] + }, + "CPythonNetworkStream::UploadSymbol": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::UploadSymbol" + ] + }, + "CPythonNetworkStream::__DownloadMark": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__DownloadMark" + ] + }, + "CPythonNetworkStream::__DownloadSymbol": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__DownloadSymbol" + ] + }, + "CPythonNetworkStream::SetPhaseWindow": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetPhaseWindow" + ] + }, + "CPythonNetworkStream::ClearPhaseWindow": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ClearPhaseWindow" + ] + }, + "CPythonNetworkStream::SetServerCommandParserWindow": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetServerCommandParserWindow" + ] + }, + "CPythonNetworkStream::IsSelectedEmpire": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::IsSelectedEmpire" + ] + }, + "CPythonNetworkStream::GetAccountCharacterSlotDatau": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetAccountCharacterSlotDatau" + ] + }, + "CPythonNetworkStream::GetAccountCharacterSlotDataz": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetAccountCharacterSlotDataz" + ] + }, + "CPythonNetworkStream::ConnectLoginServer": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ConnectLoginServer" + ] + }, + "CPythonNetworkStream::SetMarkServer": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetMarkServer" + ] + }, + "CPythonNetworkStream::ConnectGameServer": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ConnectGameServer" + ] + }, + "CPythonNetworkStream::SetLoginInfo": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetLoginInfo" + ] + }, + "CPythonNetworkStream::ClearLoginInfo": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ClearLoginInfo" + ] + }, + "CPythonNetworkStream::SetLoginKey": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetLoginKey" + ] + }, + "CPythonNetworkStream::CheckPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::CheckPacket" + ] + }, + "CPythonNetworkStream::RecvErrorPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::RecvErrorPacket" + ] + }, + "CPythonNetworkStream::RecvPhasePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::RecvPhasePacket" + ] + }, + "CPythonNetworkStream::RecvPingPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::RecvPingPacket" + ] + }, + "CPythonNetworkStream::RecvDefaultPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::RecvDefaultPacket" + ], + "note": "PORT: the CP949 TraceError text is spelled as hex escapes (same bytes)." + }, + "CPythonNetworkStream::OnProcess": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::OnProcess" + ] + }, + "CPythonNetworkStream::SetOffLinePhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetOffLinePhase" + ] + }, + "CPythonNetworkStream::ClosePhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::ClosePhase" + ] + }, + "CPythonNetworkStream::SetGameOnline": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetGameOnline" + ] + }, + "CPythonNetworkStream::SetGameOffline": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetGameOffline" + ] + }, + "CPythonNetworkStream::IsGameOnline": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::IsGameOnline" + ] + }, + "CPythonNetworkStream::SetHandler": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetHandler" + ] + }, + "CPythonNetworkStream::GetMainActorVID": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetMainActorVID" + ] + }, + "CPythonNetworkStream::GetMainActorRace": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetMainActorRace" + ] + }, + "CPythonNetworkStream::GetMainActorEmpire": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetMainActorEmpire" + ] + }, + "CPythonNetworkStream::GetMainActorSkillGroup": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetMainActorSkillGroup" + ] + }, + "CPythonNetworkStream::SetEmpireID": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetEmpireID" + ] + }, + "CPythonNetworkStream::GetEmpireID": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::GetEmpireID" + ] + }, + "CPythonNetworkStream::__ClearSelectCharacterData": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__ClearSelectCharacterData" + ] + }, + "CPythonNetworkStream::__DirectEnterMode_Initialize": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__DirectEnterMode_Initialize" + ] + }, + "CPythonNetworkStream::__DirectEnterMode_Set": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__DirectEnterMode_Set" + ] + }, + "CPythonNetworkStream::__DirectEnterMode_IsSet": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__DirectEnterMode_IsSet" + ] + }, + "CPythonNetworkStream::__InitializeMarkAuth": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__InitializeMarkAuth" + ] + }, + "CPythonNetworkStream::__BettingGuildWar_Initialize": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__BettingGuildWar_Initialize" + ] + }, + "CPythonNetworkStream::__BettingGuildWar_SetObserverCount": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__BettingGuildWar_SetObserverCount" + ] + }, + "CPythonNetworkStream::__BettingGuildWar_SetBettingMoney": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__BettingGuildWar_SetBettingMoney" + ] + }, + "CPythonNetworkStream::EXPORT_GetBettingGuildWarValue": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::EXPORT_GetBettingGuildWarValue" + ] + }, + "CPythonNetworkStream::__ServerTimeSync_Initialize": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::__ServerTimeSync_Initialize" + ] + }, + "CPythonNetworkStream::SetWaitFlag": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SetWaitFlag" + ] + }, + "CPythonNetworkStream::SendEmoticon": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::SendEmoticon" + ] + }, + "CPythonNetworkStream::CPythonNetworkStream": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::CPythonNetworkStream" + ] + }, + "CPythonNetworkStream::~CPythonNetworkStream": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStream.cpp:CPythonNetworkStream::~CPythonNetworkStream" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamEvent.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamEvent.cpp.json new file mode 100644 index 00000000..b884533a --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamEvent.cpp.json @@ -0,0 +1,26 @@ +{ + "reference": "UserInterface/PythonNetworkStreamEvent.cpp", + "reference_sha256": "be7c89f217df00607750f4e2a2581689913f0a9e9a998c927641bf4d8b3c4d31", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::OnRemoteDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamEvent.cpp:CPythonNetworkStream::OnRemoteDisconnect" + ] + }, + "CPythonNetworkStream::OnDisconnect": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamEvent.cpp:CPythonNetworkStream::OnDisconnect" + ] + }, + "CPythonNetworkStream::OnScriptEventStart": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamEvent.cpp:CPythonNetworkStream::OnScriptEventStart" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamPhaseHandShake.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamPhaseHandShake.cpp.json new file mode 100644 index 00000000..42385e5b --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamPhaseHandShake.cpp.json @@ -0,0 +1,68 @@ +{ + "reference": "UserInterface/PythonNetworkStreamPhaseHandShake.cpp", + "reference_sha256": "afa295b4b58e00436eb31f2767931da1b265ffa2385a94a7095263c3bbb600aa", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::HandShakePhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::HandShakePhase" + ] + }, + "CPythonNetworkStream::SetHandShakePhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::SetHandShakePhase" + ] + }, + "CPythonNetworkStream::RecvHandshakePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvHandshakePacket" + ] + }, + "CPythonNetworkStream::RecvHandshakeOKPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvHandshakeOKPacket" + ] + }, + "CPythonNetworkStream::RecvHybridCryptKeyPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvHybridCryptKeyPacket" + ] + }, + "CPythonNetworkStream::RecvHybridCryptSDBPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvHybridCryptSDBPacket" + ] + }, + "CPythonNetworkStream::RecvKeyAgreementPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvKeyAgreementPacket" + ] + }, + "CPythonNetworkStream::RecvKeyAgreementCompletedPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvKeyAgreementCompletedPacket" + ] + }, + "CPythonNetworkStream::RecvHSCheckRequest": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvHSCheckRequest" + ] + }, + "CPythonNetworkStream::RecvXTrapVerifyRequest": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseHandShake.cpp:CPythonNetworkStream::RecvXTrapVerifyRequest" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamPhaseLoading.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamPhaseLoading.cpp.json new file mode 100644 index 00000000..139a84a2 --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamPhaseLoading.cpp.json @@ -0,0 +1,122 @@ +{ + "reference": "UserInterface/PythonNetworkStreamPhaseLoading.cpp", + "reference_sha256": "f74ceb46bbdee54d7046524289d8cfb6d40f3c496a81be439c27a616537334e3", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::EnableChatInsultFilter": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::EnableChatInsultFilter" + ] + }, + "CPythonNetworkStream::__FilterInsult": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::__FilterInsult" + ] + }, + "CPythonNetworkStream::IsChatInsultIn": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::IsChatInsultIn" + ] + }, + "CPythonNetworkStream::IsInsultIn": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::IsInsultIn" + ] + }, + "CPythonNetworkStream::LoadInsultList": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::LoadInsultList" + ] + }, + "CPythonNetworkStream::LoadConvertTable": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::LoadConvertTable" + ] + }, + "CPythonNetworkStream::LoadingPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::LoadingPhase" + ] + }, + "CPythonNetworkStream::SetLoadingPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::SetLoadingPhase" + ] + }, + "CPythonNetworkStream::RecvMainCharacter": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::RecvMainCharacter" + ] + }, + "CPythonNetworkStream::RecvMainCharacter2_EMPIRE": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::RecvMainCharacter2_EMPIRE" + ] + }, + "CPythonNetworkStream::RecvMainCharacter3_BGM": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::RecvMainCharacter3_BGM" + ] + }, + "CPythonNetworkStream::RecvMainCharacter4_BGM_VOL": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::RecvMainCharacter4_BGM_VOL" + ] + }, + "CPythonNetworkStream::__SetFieldMusicFileName": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::__SetFieldMusicFileName" + ] + }, + "CPythonNetworkStream::__SetFieldMusicFileInfo": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::__SetFieldMusicFileInfo" + ] + }, + "CPythonNetworkStream::GetFieldMusicFileName": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::GetFieldMusicFileName" + ] + }, + "CPythonNetworkStream::GetFieldMusicVolume": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::GetFieldMusicVolume" + ] + }, + "CPythonNetworkStream::__RecvPlayerPoints": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::__RecvPlayerPoints" + ] + }, + "CPythonNetworkStream::StartGame": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::StartGame" + ] + }, + "CPythonNetworkStream::SendEnterGame": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLoading.cpp:CPythonNetworkStream::SendEnterGame" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamPhaseLogin.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamPhaseLogin.cpp.json new file mode 100644 index 00000000..05e3e337 --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamPhaseLogin.cpp.json @@ -0,0 +1,116 @@ +{ + "reference": "UserInterface/PythonNetworkStreamPhaseLogin.cpp", + "reference_sha256": "7cc599100ce28525b9d4b7d72432d6cbf1204c94622b044e15debdf0cc06057f", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::LoginPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::LoginPhase" + ] + }, + "CPythonNetworkStream::SetLoginPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SetLoginPhase" + ] + }, + "CPythonNetworkStream::__RecvEmpirePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvEmpirePacket" + ] + }, + "CPythonNetworkStream::__RecvLoginSuccessPacket3": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvLoginSuccessPacket3" + ] + }, + "CPythonNetworkStream::__RecvLoginSuccessPacket4": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvLoginSuccessPacket4" + ] + }, + "CPythonNetworkStream::OnConnectFailure": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::OnConnectFailure" + ] + }, + "CPythonNetworkStream::__RecvLoginFailurePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvLoginFailurePacket" + ] + }, + "CPythonNetworkStream::SendDirectEnterPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendDirectEnterPacket" + ] + }, + "CPythonNetworkStream::SendLoginPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendLoginPacket" + ] + }, + "CPythonNetworkStream::SendLoginPacketNew": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendLoginPacketNew" + ] + }, + "CPythonNetworkStream::__RecvRunupMatrixQuizPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvRunupMatrixQuizPacket" + ] + }, + "CPythonNetworkStream::SendRunupMatrixAnswerPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendRunupMatrixAnswerPacket" + ] + }, + "CPythonNetworkStream::__RecvNEWCIBNPasspodRequestPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvNEWCIBNPasspodRequestPacket" + ] + }, + "CPythonNetworkStream::__RecvNEWCIBNPasspodFailurePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvNEWCIBNPasspodFailurePacket" + ] + }, + "CPythonNetworkStream::SendNEWCIBNPasspodAnswerPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendNEWCIBNPasspodAnswerPacket" + ] + }, + "CPythonNetworkStream::SendChinaMatrixCardPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::SendChinaMatrixCardPacket" + ] + }, + "CPythonNetworkStream::__RecvChinaMatrixCardPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvChinaMatrixCardPacket" + ] + }, + "CPythonNetworkStream::__RecvLoginKeyPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseLogin.cpp:CPythonNetworkStream::__RecvLoginKeyPacket" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamPhaseOffline.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamPhaseOffline.cpp.json new file mode 100644 index 00000000..3befb1b8 --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamPhaseOffline.cpp.json @@ -0,0 +1,14 @@ +{ + "reference": "UserInterface/PythonNetworkStreamPhaseOffline.cpp", + "reference_sha256": "b01e34b9139e9aefe2187b0c78685ee2f313d9e9dbea6d8649a7331537ffe033", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::OffLinePhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseOffline.cpp:CPythonNetworkStream::OffLinePhase" + ] + } + } +} diff --git a/audit/port-map/UserInterface/PythonNetworkStreamPhaseSelect.cpp.json b/audit/port-map/UserInterface/PythonNetworkStreamPhaseSelect.cpp.json new file mode 100644 index 00000000..fba257ed --- /dev/null +++ b/audit/port-map/UserInterface/PythonNetworkStreamPhaseSelect.cpp.json @@ -0,0 +1,80 @@ +{ + "reference": "UserInterface/PythonNetworkStreamPhaseSelect.cpp", + "reference_sha256": "3092d6659bfbeca38e2f114b66b6bdfa1ddfce47120c29552f8e5c54b47a00ef", + "priority": "P2", + "contracts": [], + "functions": { + "CPythonNetworkStream::SetSelectPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SetSelectPhase" + ] + }, + "CPythonNetworkStream::SelectPhase": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SelectPhase" + ] + }, + "CPythonNetworkStream::SendSelectEmpirePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SendSelectEmpirePacket" + ] + }, + "CPythonNetworkStream::SendSelectCharacterPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SendSelectCharacterPacket" + ] + }, + "CPythonNetworkStream::SendDestroyCharacterPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SendDestroyCharacterPacket" + ] + }, + "CPythonNetworkStream::SendCreateCharacterPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SendCreateCharacterPacket" + ] + }, + "CPythonNetworkStream::SendChangeNamePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::SendChangeNamePacket" + ] + }, + "CPythonNetworkStream::__RecvPlayerCreateSuccessPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::__RecvPlayerCreateSuccessPacket" + ] + }, + "CPythonNetworkStream::__RecvPlayerCreateFailurePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::__RecvPlayerCreateFailurePacket" + ] + }, + "CPythonNetworkStream::__RecvPlayerDestroySuccessPacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::__RecvPlayerDestroySuccessPacket" + ] + }, + "CPythonNetworkStream::__RecvPlayerDestroyFailurePacket": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::__RecvPlayerDestroyFailurePacket" + ] + }, + "CPythonNetworkStream::__RecvChangeName": { + "status": "PORTED", + "impl": [ + "extension/src/port/UserInterface/PythonNetworkStreamPhaseSelect.cpp:CPythonNetworkStream::__RecvChangeName" + ] + } + } +} diff --git a/docs/PORT-PLAN.md b/docs/PORT-PLAN.md index 701f4374..145a6e81 100644 --- a/docs/PORT-PLAN.md +++ b/docs/PORT-PLAN.md @@ -431,7 +431,7 @@ extension/third_party/cpython-2.7.18/ # 静态库(2P 批次 改变位置/朝向、发送与 40250 相同的移动封包,并在离线边界测试和真服 smoke 中通过。接通时删除对应 legacy 玩法逻辑。 2V3-a(2026-09-23):`PythonPlayer`、`PythonPlayerInput`/`InputKeyboard`/`InputMouse`、`PythonPlayerEventHandler`、`PythonPlayerSkill`、`PythonPlayerModule`、`GameType` 原样移植(port-map 标 PORTED),`GameplayModules.cpp` 的 `player` 桩删除,`initPlayer()` 按 40250 顺序在 `initchrmgr()` 后调用;`pending/UserInterface/{PythonPlayer,GameType}.cpp` 替身删除,其余被调方(`CPythonSkill`、`CItemData`、`CItemManager`、`CPythonItem` 等)进 `pending`。64 位修正:`playerGetEmotionIconImage` 用 `Py_BuildPointer`,`PyDict_Next` 用 `Py_ssize_t`。根运动:Granny 运行时的 `GrannyUpdateModelMatrix` 原为直通,按 TrackGroups[0] 的 `AccumulationFlags`(AccumulationExtracted)/`LoopTranslation`(libgr2 新读出,战士 run = (0,-300,0),同 .msa `Accumulation`)按控制器本地时钟推进与权重累加位移(Delta × ModelMatrix);VDA 抽取未实现。`port.login_flow` 按 DIK_UP 经 `game.GameWindow` → `player.SetSingleDIKKeyState` 行走 >100 cm,假服解析 CG 包,收到 `CG_MOVE` FUNC_MOVE 后 FUNC_WAIT 且坐标变化;`port.login_live` 2026-09-23 对 192.168.21.203 走 132 cm 通过。(2V3-a 的待办见 2V3-b。) 2V3-b(2026-09-23):鼠标点地移动。`CScreen::SetCursorPosition`(GrpScreen.cpp:487)与 `CPythonGraphic::SetCursorPosition` 原样实现,`RenderGame` 每帧用光标建拾取射线;`CPythonBackground::GetPickingPoint`/`GetPickingPointWithRay`/`GetPickingPointWithRayOnlyTerrain` 按 `CMapOutdoor::__PickTerrainHeight` 原样沿射线步进,地形高度取 native `CMapManager::GetHeight`(`PR_FLOAT_TO_INT` 的 x87 取整按 floor),物件拾取随 `CMapOutdoor` 移植再接。`CMapManager::isAttrOn` 按 `CMapOutdoor::isAttrOn`+`CTerrain::isAttrOn` 读包内 `//attr.atr`(阻挡/水/禁 PK),`CheckAdvancing` 及两个碰撞检查器原样(地图物件未注册到 `CCullingManager` 前不会阻挡)。以上在 pending/platform 层,port-map 标 ADAPTED。`port.login_flow` 在按键行走后左键点击角色下方地面:`game.GameWindow.OnMouseLeftButtonDown` → `player.SetMouseState` → 角色走到拾取点(离线 334 cm),假服收到 FUNC_MOVE … FUNC_WAIT;另断言角色所在格不阻挡、所在地形块有阻挡格(离线 17814 格)。`port.login_live` 2026-09-23 对 192.168.21.203 通过(按键 133 cm、点地 296 cm、11406 阻挡格),`python_game_render_test.sh` 离线通过。`client_main` 的 `MT_TEST_MODE=python_ui` 加上 `python_3d_surface.gd`,新路径可手动登录进游戏走动。待办:默认路由切到 `port`(当前 `client_main` 默认仍走 GDScript `AppFlow`)后整体删除 legacy;攻击/拾取物品等 P1 战斗交互属批次 2 之后。 - 批次 2 P0 收尾(2026-09-24):`UserInterface/PythonCharacterManager.cpp`(54 函数)与 `InstanceBaseMovement.cpp`(32 函数)在 2V2-b 已原样拷入 `port/`,2V3 起即是运行路径(行走、点地移动、远程角色同步都经它们),本轮逐行比对 40250(仅 include 大小写、注释编码和两处 `// PORT:` 修正:`CreateInstance` 的 TraceError 传 `m_dwVID`,`NEW_SyncPixelPosition` 用 32 位 `LONG &`),确认 pending/platform 无重复定义后标 PORTED。P0 队列已清空;P1 飞行物(同日):`GameLib/FlyingData`、`FlyingInstance`、`FlyingObjectManager`、`FlyTrace` 与 Python 模块 `PythonEffectModule`(`effect`)、`PythonFlyModule`(`fly`)原样移植,删除 `pending/GameLib/FlyingObjectManager.cpp` 替身和两个模块的桩,`initeffect()`/`initfly()` 按 40250 顺序在 `initnet()` 后调用;`CFlyingManager::SetMapManagerPtr(&CPythonBackground)` 按 40250 构造函数接上;`FlyTrace.h` 加 `// PORT:` include 以过头文件门禁。`CMapManager::GetTerrainHeight`(飞行物落地判断用)在 pending 层按 native 地形高度实现,`GetHeight` 转发到它(地图物件高度待 `CMapOutdoor`)。`ActorInstanceData.cpp` 早已原样在 port/,一并标 PORTED。`port.login_flow` 断言 `playersettingmodule.py` 已经 `effect.RegisterIndexedFlyData` 注册并能解析 `.msf`。特效本体(`CEffectManager`)仍是平台桩,飞行物不可见;队列里 P0/P1 已清空,剩下 P2 网络单元(多数已在 2V1 原样拷入 port/,待逐个核对后标记)。 + 批次 2 P0 收尾(2026-09-24):`UserInterface/PythonCharacterManager.cpp`(54 函数)与 `InstanceBaseMovement.cpp`(32 函数)在 2V2-b 已原样拷入 `port/`,2V3 起即是运行路径(行走、点地移动、远程角色同步都经它们),本轮逐行比对 40250(仅 include 大小写、注释编码和两处 `// PORT:` 修正:`CreateInstance` 的 TraceError 传 `m_dwVID`,`NEW_SyncPixelPosition` 用 32 位 `LONG &`),确认 pending/platform 无重复定义后标 PORTED。P0 队列已清空;P1 飞行物(同日):`GameLib/FlyingData`、`FlyingInstance`、`FlyingObjectManager`、`FlyTrace` 与 Python 模块 `PythonEffectModule`(`effect`)、`PythonFlyModule`(`fly`)原样移植,删除 `pending/GameLib/FlyingObjectManager.cpp` 替身和两个模块的桩,`initeffect()`/`initfly()` 按 40250 顺序在 `initnet()` 后调用;`CFlyingManager::SetMapManagerPtr(&CPythonBackground)` 按 40250 构造函数接上;`FlyTrace.h` 加 `// PORT:` include 以过头文件门禁。`CMapManager::GetTerrainHeight`(飞行物落地判断用)在 pending 层按 native 地形高度实现,`GetHeight` 转发到它(地图物件高度待 `CMapOutdoor`)。`ActorInstanceData.cpp` 早已原样在 port/,一并标 PORTED。`port.login_flow` 断言 `playersettingmodule.py` 已经 `effect.RegisterIndexedFlyData` 注册并能解析 `.msf`。特效本体(`CEffectManager`)仍是平台桩,飞行物不可见;队列里 P0/P1 已清空,剩下 P2 网络单元(多数已在 2V1 原样拷入 port/,待逐个核对后标记)。同日核对:队列中 28 个早已拷入 port/ 的单元(网络流各阶段、`AccountConnector`、`NetStream`/`NetDevice`/`NetAddress`、`EterPack*`、`lzo`/`tea`/`cipher`/`Timer` 等,372 函数)用 `port_copy.py diff` 比对,23 个与机械拷贝完全一致,其余 5 个的手改全部带 `// PORT:`(CP949 转义、`e-` pp-number、32 位 `LONG`、包密钥外置、`lzo_uint` 宽度、`ActivateCipher` 解密同批已收密文),平台层无同名替身,标 PORTED;logic 层 54.8% → 67.9%。队列剩余 P2 仅 `ServerStateChecker`(`ServerStateChecker` 模块仍是桩),其后是 P3 物品/小地图/名牌。 每个切片都必须同时跑 legacy/port 双路回归;只有 2V3 稳定并把默认路由切到 `port` 后,才能删除总开关和剩余 legacy 宿主。