MCPcopy Create free account
hub / github.com/FEX-Emu/FEX / RequestRootFSPath

Function RequestRootFSPath

Source/Common/FEXServerClient.cpp:342–364  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

340}
341
342fextl::string RequestRootFSPath(int ServerSocket) {
343 FEXServerRequestPacket Req {
344 .Header {
345 .Type = PacketType::TYPE_GET_ROOTFS_PATH,
346 },
347 };
348
349 int Result = write(ServerSocket, &Req, sizeof(Req.BasicRequest));
350 if (Result != -1) {
351 // Wait for success response with data
352 fextl::vector<char> Data(PATH_MAX + sizeof(FEXServerResultPacket));
353
354 ssize_t DataResult = recv(ServerSocket, Data.data(), Data.size(), 0);
355 if (DataResult >= sizeof(FEXServerResultPacket)) {
356 FEXServerResultPacket* ResultPacket = reinterpret_cast<FEXServerResultPacket*>(Data.data());
357 if (ResultPacket->Header.Type == PacketType::TYPE_GET_ROOTFS_PATH && ResultPacket->MountPath.Length > 0) {
358 return fextl::string(ResultPacket->MountPath.Mount);
359 }
360 }
361 }
362
363 return {};
364}
365
366int RequestPIDFD(int ServerSocket) {
367 return RequestPIDFDPacket(ServerSocket, PacketType::TYPE_GET_PID_FD);

Callers 2

SetupClientFunction · 0.85
mainFunction · 0.85

Calls 2

writeFunction · 0.70
sizeMethod · 0.45

Tested by

no test coverage detected