Generalize np::npid_to_string() use

This commit is contained in:
RipleyTom 2026-02-20 15:45:15 +01:00 committed by Elad
parent a29758de6e
commit a6b5c7e79f
9 changed files with 34 additions and 37 deletions

View file

@ -1199,7 +1199,7 @@ error_code _sceNpBasicSendMessage(vm::cptr<SceNpId> to, vm::cptr<void> data, u32
.msgFeatures = {},
.data = std::vector<u8>(static_cast<const u8*>(data.get_ptr()), static_cast<const u8*>(data.get_ptr()) + size)};
std::set<std::string> npids;
npids.insert(std::string(to->handle.data));
npids.insert(np::npid_to_string(*to));
nph.send_message(msg_data, npids);
@ -1228,7 +1228,7 @@ error_code sceNpBasicSendMessageGui(ppu_thread& ppu, vm::cptr<SceNpBasicMessageD
sceNp.notice("sceNpBasicSendMessageGui: msgId: %d, mainType: %d, subType: %d, msgFeatures: %d, count: %d, npids: *0x%x", msg->msgId, msg->mainType, msg->subType, msg->msgFeatures, msg->count, msg->npids);
for (u32 i = 0; i < msg->count && msg->npids; i++)
{
sceNp.trace("sceNpBasicSendMessageGui: NpId[%d] = %s", i, static_cast<char*>(&msg->npids[i].handle.data[0]));
sceNp.trace("sceNpBasicSendMessageGui: NpId[%d] = %s", i, np::npid_to_string(msg->npids[i]));
}
sceNp.notice("sceNpBasicSendMessageGui: subject: %s", msg->subject);
sceNp.notice("sceNpBasicSendMessageGui: body: %s", msg->body);
@ -1398,7 +1398,7 @@ error_code sceNpBasicSendMessageGui(ppu_thread& ppu, vm::cptr<SceNpBasicMessageD
{
for (u32 i = 0; i < msg->count; i++)
{
npids.insert(std::string(msg->npids[i].handle.data));
npids.insert(np::npid_to_string(msg->npids[i]));
}
}
@ -7144,7 +7144,7 @@ error_code sceNpUtilCanonicalizeNpIdForPsp(vm::ptr<SceNpId> npId)
error_code sceNpUtilCmpNpId(vm::ptr<SceNpId> id1, vm::ptr<SceNpId> id2)
{
sceNp.trace("sceNpUtilCmpNpId(id1=*0x%x(%s), id2=*0x%x(%s))", id1, id1 ? id1->handle.data : "", id2, id2 ? id2->handle.data : "");
sceNp.trace("sceNpUtilCmpNpId(id1=*0x%x(%s), id2=*0x%x(%s))", id1, id1 ? np::npid_to_string(*id1) : std::string(), id2, id2 ? np::npid_to_string(*id2) : std::string());
if (!id1 || !id2)
{

View file

@ -464,7 +464,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -656,7 +656,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -674,7 +674,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -832,7 +832,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -850,7 +850,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -868,7 +868,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -902,7 +902,7 @@ namespace clan
clan.append_child("id").text().set(clan_id);
pugi::xml_node role = clan.append_child("onlinename");
role.text().set(nph.get_npid().handle.data);
role.text().set(np::npid_to_string(nph.get_npid()).c_str());
pugi::xml_node description = clan.append_child("description");
description.text().set(info.description);
@ -990,7 +990,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_document response = pugi::xml_document();
@ -1008,7 +1008,7 @@ namespace clan
clan.append_child("ticket").text().set(ticket.c_str());
clan.append_child("id").text().set(clan_id);
const std::string jid_str = fmt::format(JID_FORMAT, np_id.handle.data);
const std::string jid_str = fmt::format(JID_FORMAT, np::npid_to_string(np_id));
clan.append_child("jid").text().set(jid_str.c_str());
pugi::xml_node role_node = clan.append_child("role");

View file

@ -1024,7 +1024,7 @@ namespace np
}
}
nph_log.notice("basic_event: event:%d, from:%s(%s), size:%d", *event, static_cast<char*>(from->userId.handle.data), static_cast<char*>(from->name.data), *size);
nph_log.notice("basic_event: event:%d, from:%s(%s), size:%d", *event, np::npid_to_string(from->userId), static_cast<char*>(from->name.data), *size);
return CELL_OK;
}

View file

@ -41,7 +41,7 @@ namespace np
return;
}
rpcn_log.notice("Received notification that user %s(%d) joined the room(%d)", notif_data->roomMemberDataInternal->userInfo.npId.handle.data, notif_data->roomMemberDataInternal->memberId, room_id);
rpcn_log.notice("Received notification that user %s(%d) joined the room(%d)", np::npid_to_string(notif_data->roomMemberDataInternal->userInfo.npId), notif_data->roomMemberDataInternal->memberId, room_id);
extra_nps::print_SceNpMatching2RoomMemberDataInternal(notif_data->roomMemberDataInternal.get_ptr());
// We initiate signaling if necessary
@ -98,7 +98,7 @@ namespace np
return;
}
rpcn_log.notice("Received notification that user %s(%d) left the room(%d)", notif_data->roomMemberDataInternal->userInfo.npId.handle.data, notif_data->roomMemberDataInternal->memberId, room_id);
rpcn_log.notice("Received notification that user %s(%d) left the room(%d)", np::npid_to_string(notif_data->roomMemberDataInternal->userInfo.npId), notif_data->roomMemberDataInternal->memberId, room_id);
extra_nps::print_SceNpMatching2RoomMemberDataInternal(notif_data->roomMemberDataInternal.get_ptr());
if (room_event_cb)
@ -204,7 +204,7 @@ namespace np
return;
}
rpcn_log.notice("Received notification that user's %s(%d) room (%d) data was updated", notif_data->newRoomMemberDataInternal->userInfo.npId.handle.data, notif_data->newRoomMemberDataInternal->memberId, room_id);
rpcn_log.notice("Received notification that user's %s(%d) room (%d) data was updated", np::npid_to_string(notif_data->newRoomMemberDataInternal->userInfo.npId), notif_data->newRoomMemberDataInternal->memberId, room_id);
extra_nps::print_SceNpMatching2RoomMemberDataInternal(notif_data->newRoomMemberDataInternal.get_ptr());
if (room_event_cb)

View file

@ -310,7 +310,7 @@ namespace np
if (npid_res != CELL_OK)
continue;
rpcn_log.notice("JoinRoomResult told to connect to member(%d=%s) of room(%d): %s:%d", member_id, reinterpret_cast<const char*>(npid_p2p->handle.data), room_id, ip_to_string(addr_p2p), port_p2p);
rpcn_log.notice("JoinRoomResult told to connect to member(%d=%s) of room(%d): %s:%d", member_id, np::npid_to_string(*npid_p2p), room_id, ip_to_string(addr_p2p), port_p2p);
// Attempt Signaling
auto& sigh = g_fxo->get<named_thread<signaling_handler>>();

View file

@ -2,6 +2,7 @@
#include "stdafx.h"
#include <span>
#include "np_structs_extra.h"
#include "np_helpers.h"
LOG_CHANNEL(sceNp);
LOG_CHANNEL(sceNp2);
@ -13,7 +14,7 @@ namespace extra_nps
void print_SceNpUserInfo2(const SceNpUserInfo2* user)
{
sceNp2.warning("SceNpUserInfo2:");
sceNp2.warning("npid: %s", static_cast<const char*>(user->npId.handle.data));
sceNp2.warning("npid: %s", np::npid_to_string(user->npId));
sceNp2.warning("onlineName: *0x%x(%s)", user->onlineName, user->onlineName ? static_cast<const char*>(user->onlineName->data) : "");
sceNp2.warning("avatarUrl: *0x%x(%s)", user->avatarUrl, user->avatarUrl ? static_cast<const char*>(user->avatarUrl->data) : "");
}
@ -208,7 +209,7 @@ namespace extra_nps
{
sceNp2.warning("SceNpMatching2RoomMemberDataInternal:");
sceNp2.warning("next: *0x%x", member->next);
sceNp2.warning("npId: %s", member->userInfo.npId.handle.data);
sceNp2.warning("npId: %s", np::npid_to_string(member->userInfo.npId));
sceNp2.warning("onlineName: %s", member->userInfo.onlineName ? member->userInfo.onlineName->data : "");
sceNp2.warning("avatarUrl: %s", member->userInfo.avatarUrl ? member->userInfo.avatarUrl->data : "");
sceNp2.warning("joinDate: %lld", member->joinDate.tick);
@ -460,7 +461,7 @@ namespace extra_nps
void print_SceNpScoreRankData(const SceNpScoreRankData* data)
{
sceNp.warning("sceNpScoreRankData:");
sceNp.warning("npId: %s", static_cast<const char*>(data->npId.handle.data));
sceNp.warning("npId: %s", np::npid_to_string(data->npId));
sceNp.warning("onlineName: %s", static_cast<const char*>(data->onlineName.data));
sceNp.warning("pcId: %d", data->pcId);
sceNp.warning("serialRank: %d", data->serialRank);
@ -474,7 +475,7 @@ namespace extra_nps
void print_SceNpScoreRankData_deprecated(const SceNpScoreRankData_deprecated* data)
{
sceNp.warning("sceNpScoreRankData_deprecated:");
sceNp.warning("npId: %s", static_cast<const char*>(data->npId.handle.data));
sceNp.warning("npId: %s", np::npid_to_string(data->npId));
sceNp.warning("onlineName: %s", static_cast<const char*>(data->onlineName.data));
sceNp.warning("serialRank: %d", data->serialRank);
sceNp.warning("rank: %d", data->rank);
@ -542,7 +543,7 @@ namespace extra_nps
void print_SceNpUserInfo(const SceNpUserInfo* data)
{
sceNp.warning("userId: %s", data->userId.handle.data);
sceNp.warning("userId: %s", np::npid_to_string(data->userId));
sceNp.warning("name: %s", data->name.data);
sceNp.warning("icon: %s", data->icon.data);
}
@ -576,7 +577,7 @@ namespace extra_nps
if (data->kick_actor)
{
sceNp.warning("kick_actor: %s", data->kick_actor->handle.data);
sceNp.warning("kick_actor: %s", np::npid_to_string(*data->kick_actor));
}
sceNp.warning("opt: 0x%x", data->kick_actor);

View file

@ -263,7 +263,7 @@ namespace np
for (u32 i = 0; i < room_info->memberList.membersNum; i++)
{
SceNpMatching2RoomMemberDataInternal* sce_member = &room_info->memberList.members[i];
if (strcmp(sce_member->userInfo.npId.handle.data, npid.handle.data) == 0)
if (strncmp(sce_member->userInfo.npId.handle.data, npid.handle.data, 16) == 0)
{
room_info->memberList.me = room_info->memberList.members + i;
edata.add_relocation<SceNpMatching2RoomMemberDataInternal>(room_info->memberList.me);

View file

@ -1756,7 +1756,7 @@ namespace rpcn
{
continue;
}
pb_req.add_alloweduser(req->allowedUser[i].handle.data);
pb_req.add_alloweduser(np::npid_to_string(req->allowedUser[i]));
}
}
@ -1768,7 +1768,7 @@ namespace rpcn
{
continue;
}
pb_req.add_blockeduser(req->blockedUser[i].handle.data);
pb_req.add_blockeduser(np::npid_to_string(req->blockedUser[i]));
}
}
@ -2267,7 +2267,7 @@ namespace rpcn
for (usz i = 0; i < npids.size(); i++)
{
auto* npid_entry = pb_req.add_npids();
npid_entry->set_npid(static_cast<const char*>(npids[i].first.handle.data));
npid_entry->set_npid(np::npid_to_string(npids[i].first));
npid_entry->set_pcid(npids[i].second);
}
@ -2414,7 +2414,7 @@ namespace rpcn
if (option->isLastChangedAuthorId)
{
pb_req.set_islastchangedauthorid(option->isLastChangedAuthorId->handle.data);
pb_req.set_islastchangedauthorid(np::npid_to_string(*option->isLastChangedAuthorId));
}
}
@ -2443,7 +2443,7 @@ namespace rpcn
if (option->isLastChangedAuthorId)
{
pb_req.set_islastchangedauthorid(option->isLastChangedAuthorId->handle.data);
pb_req.set_islastchangedauthorid(np::npid_to_string(*option->isLastChangedAuthorId));
}
if (option->compareValue)
@ -2499,7 +2499,7 @@ namespace rpcn
if (option->isLastChangedAuthorId)
{
pb_req.set_islastchangedauthorid(option->isLastChangedAuthorId->handle.data);
pb_req.set_islastchangedauthorid(np::npid_to_string(*option->isLastChangedAuthorId));
}
}

View file

@ -256,9 +256,7 @@ void signaling_handler::process_incoming_messages()
addr.s_addr = op_addr;
char ip_str[16];
inet_ntop(AF_INET, &addr, ip_str, sizeof(ip_str));
std::string_view npid(sp->npid.handle.data);
sign_log.trace("SP %s from %s:%d(npid: %s)", sp->command, ip_str, op_port, npid);
sign_log.trace("SP %s from %s:%d(npid: %s)", sp->command, ip_str, op_port, np::npid_to_string(sp->npid));
}
bool reply = false, schedule_repeat = false;
@ -675,9 +673,7 @@ std::shared_ptr<signaling_info> signaling_handler::get_signaling_ptr(const signa
{
u32 conn_id;
char npid_buf[17]{};
memcpy(npid_buf, sp->npid.handle.data, 16);
std::string npid(npid_buf);
std::string npid = np::npid_to_string(sp->npid);
if (!npid_to_conn_id.contains(npid))
return nullptr;