MCPcopy Create free account
hub / github.com/devkitPro/libctru / FSUSER_ControlArchive

Function FSUSER_ControlArchive

libctru/source/services/fs.c:402–421  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

400}
401
402Result FSUSER_ControlArchive(FS_Archive archive, FS_ArchiveAction action, void* input, u32 inputSize, void* output, u32 outputSize)
403{
404 u32 *cmdbuf = getThreadCommandBuffer();
405
406 cmdbuf[0] = IPC_MakeHeader(0x80D,5,4); // 0x80D0144
407 cmdbuf[1] = (u32) archive;
408 cmdbuf[2] = (u32) (archive >> 32);
409 cmdbuf[3] = action;
410 cmdbuf[4] = inputSize;
411 cmdbuf[5] = outputSize;
412 cmdbuf[6] = IPC_Desc_Buffer(inputSize, IPC_BUFFER_R);
413 cmdbuf[7] = (u32) input;
414 cmdbuf[8] = IPC_Desc_Buffer(outputSize, IPC_BUFFER_W);
415 cmdbuf[9] = (u32) output;
416
417 Result ret = 0;
418 if(R_FAILED(ret = svcSendSyncRequest(fsSessionForArchive(archive)))) return ret;
419
420 return cmdbuf[1];
421}
422
423Result FSUSER_CloseArchive(FS_Archive archive)
424{

Callers 2

archiveCommitSaveDataFunction · 0.85
archive_getmtimeFunction · 0.85

Calls 4

getThreadCommandBufferFunction · 0.85
IPC_MakeHeaderFunction · 0.85
IPC_Desc_BufferFunction · 0.85
fsSessionForArchiveFunction · 0.85

Tested by

no test coverage detected