CECD Services: Difference between revisions
→CECD Service "cecd:s": Put in the proper header codes |
|||
(52 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Services]] | [[Category:Services]] | ||
Streetpass stuff. | |||
= CECD Service "cecd:u" = | = CECD Service "cecd:u" = | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 5: | Line 8: | ||
! Command Header | ! Command Header | ||
! Description | ! Description | ||
|- | |||
| 0x000100C2 | |||
| Open/[[CECDU:OpenRawFile|OpenRawFile]] | |||
|- | |||
| 0x00020042 | |||
| Read/[[CECDU:ReadRawFile|ReadRawFile]] | |||
|- | |||
| 0x00030104 | |||
| [[CECDU:ReadMessage|ReadMessage]] | |||
|- | |||
| 0x00040106 | |||
| [[CECDU:ReadMessageWithHMAC|ReadMessageWithHMAC]] | |||
|- | |||
| 0x00050042 | |||
| Write/[[CECDU:WriteRawFile|WriteRawFile]] | |||
|- | |||
| 0x00060104 | |||
| [[CECDU:WriteMessage|WriteMessage]] | |||
|- | |||
| 0x00070106 | |||
| [[CECDU:WriteMessageWithHMAC|WriteMessageWithHMAC]] | |||
|- | |||
| 0x00080102 | |||
| [[CECDU:Delete|Delete]] | |||
|- | |||
| 0x000900C2 | |||
| SetData (16*length+10 of CecMessageId buffer in cmdbuff[4] (always 16*8+10), CecMessageId* in cmdbuf[5]) | |||
|- | |||
| 0x000A00C4 | |||
| ReadData/[[CECDU:GetSystemInfo|GetSystemInfo]] | |||
|- | |||
| 0x000B0040 | |||
| [[CECDU:Start|Start]] | |||
|- | |||
| 0x000C0040 | |||
| [[CECDU:Stop|Stop]] | |||
|- | |||
| 0x000D0082 | |||
| GetCecInfoBuffer | |||
|- | |- | ||
| 0x000E0000 | | 0x000E0000 | ||
| GetCecdState (returns CecStateAbbreviated in cmdbuf[2]) | |||
|- | |||
| 0x000F0000 | |||
| GetCecInfoEventHandle (returns event handle in cmdbuf[3]) | |||
|- | |||
| 0x00100000 | |||
| GetChangeStateEventHandle (returns event handle in cmdbuf[3]) | |||
|- | |||
| 0x00110104 | |||
| [[CECDU:OpenAndWrite|OpenAndWrite]] | |||
|- | |||
| 0x00120104 | |||
| [[CECDU:OpenAndRead|OpenAndRead]] | |||
|- | |||
| 0x001E0082 | |||
| [[CECDU:GetEventLog|GetEventLog]] | |||
|- | |||
| 0x001F0000 | |||
| [[CECDU:GetEventLogStart|GetEventLogStart]] | |||
|- | |||
| 0x00200000 | |||
| [[CECDU:GetEventLogEntryCount|GetEventLogEntryCount]] | |||
|- | |||
| 0x0021.... | |||
| ? | |||
|- | |||
|} | |||
=== CecDataPathType === | |||
{| class="wikitable" border="1" | |||
! Name | |||
! Value | |||
! Notes | |||
|- | |||
| CEC_PATH_MBOX_LIST || 1 | |||
| data:/CEC/MBoxList____ | |||
|- | |||
| CEC_PATH_MBOX_INFO || 2 | |||
| data:/CEC/<id>/MBoxInfo____ | |||
|- | |||
| CEC_PATH_INBOX_INFO || 3 | |||
| data:/CEC/<id>/InBox___/BoxInfo_____ | |||
|- | |||
| CEC_PATH_OUTBOX_INFO || 4 | |||
| data:/CEC/<id>/OutBox__/BoxInfo_____ | |||
|- | |||
| CEC_PATH_OUTBOX_INDEX || 5 | |||
| data:/CEC/<id>/OutBox__/OBIndex_____ | |||
|- | |||
| CEC_PATH_INBOX_MSG || 6 | |||
| data:/CEC/<id>/InBox___/_<message_id> | |||
|- | |||
| CEC_PATH_OUTBOX_MSG || 7 | |||
| data:/CEC/<id>/OutBox__/_<message_id> | |||
|- | |||
| CEC_PATH_ROOT_DIR || 10 | |||
| data:/CEC | |||
|- | |||
| CEC_PATH_MBOX_DIR || 11 | |||
| data:/CEC/<id> | |||
|- | |||
| CEC_PATH_INBOX_DIR || 12 | |||
| data:/CEC/<id>/InBox___ | |||
|- | |||
| CEC_PATH_OUTBOX_DIR || 13 | |||
| data:/CEC/<id>/OutBox__ | |||
|- | |||
| || 101 thru 199 (inclusive) | |||
| data:/CEC/<id>/MBoxData.0<i-100> | |||
|- | |||
| CECMESSAGE_BOX_ICON || 101 | |||
| data:/CEC/<id>/MBoxData.001 | |||
|- | |||
| CECMESSAGE_BOX_TITLE || 110 | |||
| data:/CEC/<id>/MBoxData.010 | |||
|} | |||
=== CecCommand === | |||
{| class="wikitable" border="1" | |||
! Name | |||
! Value | |||
! Notes | |||
|- | |||
| CEC_COMMAND_NONE | |||
| 0 | |||
| | |||
|- | |||
| CEC_COMMAND_START | |||
| 1 | |||
| | |||
|- | |||
| CEC_COMMAND_RESET_START | |||
| 2 | |||
| | |||
|- | |||
| CEC_COMMAND_READYSCAN | |||
| 3 | |||
| | |||
|- | |||
| CEC_COMMAND_READYSCANWAIT | |||
| 4 | |||
| | |||
|- | |||
| CEC_COMMAND_STARTSCAN | |||
| 5 | |||
| | |||
|- | |||
| CEC_COMMAND_RESCAN | |||
| 6 | |||
| | |||
|- | |||
| CEC_COMMAND_NDM_RESUME | |||
| 7 | |||
| | |||
|- | |||
| CEC_COMMAND_NDM_SUSPEND | |||
| 8 | |||
| | |||
|- | |||
| CEC_COMMAND_NDM_SUSPEND_IMMEDIATE | |||
| 9 | |||
| | |||
|- | |||
| CEC_COMMAND_STOPWAIT | |||
| 0xA | |||
| | |||
|- | |||
| CEC_COMMAND_STOP | |||
| 0xB | |||
| | |||
|- | |||
| CEC_COMMAND_STOP_FORCE | |||
| 0xC | |||
| | |||
|- | |||
| CEC_COMMAND_STOP_FORCE_WAIT | |||
| 0xD | |||
| | |||
|- | |||
| CEC_COMMAND_RESET_FILTER | |||
| 0xE | |||
| | |||
|- | |||
| CEC_COMMAND_DAEMON_STOP | |||
| 0xF | |||
| | |||
|- | |||
| CEC_COMMAND_DAEMON_START | |||
| 0x10 | |||
| | |||
|- | |||
| CEC_COMMAND_EXIT | |||
| 0x11 | |||
| | |||
|- | |||
| CEC_COMMAND_OVER_BOSS | |||
| 0x12 | |||
| | |||
|- | |||
| CEC_COMMAND_OVER_BOSS_FORCE | |||
| 0x13 | |||
| | |||
|- | |||
| CEC_COMMAND_OVER_BOSS_FORCE_WAIT | |||
| 0x14 | |||
| | |||
|- | |||
| CEC_COMMAND_END | |||
| 0x15 | |||
| | |||
|- | |||
|} | |||
=== CecStateAbbreviated === | |||
{| class="wikitable" border="1" | |||
! Name | |||
! Value | |||
! Notes | |||
|- | |||
| CEC_STATE_ABBREV_IDLE | |||
| 1 | |||
| Corresponds to CEC_STATE_IDLE | |||
|- | |||
| CEC_STATE_ABBREV_INACTIVE | |||
| 2 | |||
| Corresponds to CEC_STATEs *FINISH*, *POST, and OVER_BOSS | |||
|- | |||
| CEC_STATE_ABBREV_SCANNING | |||
| 3 | |||
| Corresponds to CEC_STATE_SCANNING | |||
|- | |||
| CEC_STATE_ABBREV_WLREADY? | |||
| 4 | |||
| Corresponds to CEC_STATE_WIRELESS_READY when some unknown bool is true | |||
|- | |||
| CEC_STATE_ABBREV_OTHER | |||
| 5 | |||
| Corresponds to CEC_STATEs besides *FINISH*, *POST, and OVER_BOSS and those listed here | |||
|} | |||
=== CecMessageId === | |||
{| class="wikitable" border="1" | |||
! Type | |||
! Field | |||
|- | |||
| char[8] | |||
| data | |||
|- | |||
|} | |||
= CECD Service "cecd:s" = | |||
This contains a similar (probably the same) command handler from 0x0001.... to 0x0021.... as them in cecd:u. In addition, it also contains | |||
{| class="wikitable" border="1" | |||
|- | |||
! Command Header | |||
! Description | |||
|- | |||
| 0x0401.... | |||
| ? | | ? | ||
|- | |- | ||
| | | 0x04020002 | ||
| GetCecInfoEventHandleSys | |||
|- | |||
| 0x040A0000 | |||
| [[CECDS:SprCreate|SprCreate]] | |||
|- | |||
| 0x040B0000 | |||
| [[CECDS:SprInitialise|SprInitialise]] | |||
|- | |||
| 0x040C0042 | |||
| [[CECDS:SprGetSendSlotsMetadata|SprGetSendSlotsMetadata]] | |||
|- | |||
| 0x040D0082 | |||
| [[CECDS:SprGetSlot|SprGetSlot]] | |||
|- | |||
| 0x040E0080 | |||
| [[CECDS:SprSetTitleSent|SprSetTitleSent]] | |||
|- | |||
| 0x040F0000 | |||
| [[CECDS:SprFinaliseSend|SprFinaliseSend]] | |||
|- | |||
| 0x04100000 | |||
| [[CECDS:SprStartRecv|SprStartRecv]] | |||
|- | |||
| 0x04110042 | |||
| [[CECDS:SprSetRecvSlotsMetadata|SprSetRecvSlotsMetadata]] | |||
|- | |||
| 0x041200C2 | |||
| [[CECDS:SprAddSlot|SprAddSlot]] | |||
|- | |||
| 0x04130000 | |||
| [[CECDS:SprFinaliseRecv|SprFinaliseRecv]] | |||
|- | |||
| 0x04140040 | |||
| [[CECDS:SprDone|SprDone]] | |||
|- | |||
| 0x04150000 | |||
| [[CECDS:GenHashConsoleUnique|GenHashConsoleUnique]] | |||
|- | |||
| 0x04160002 | |||
| ? | | ? | ||
|- | |- | ||
| | | 0x0417.... | ||
| ? | | ? | ||
|- | |||
|} | |||
=== CecSprStatus === | |||
This enum is used internally of the cecd service to keep track of which state of an SPR exchange it is in currently. | |||
{| class="wikitable" border="1" | |||
! Name | |||
! Value | |||
! Notes | |||
|- | |||
| CEC_SPR_SEND_RECV_START | |||
| 0 | |||
| The internal objects were just created | |||
|- | |||
| CEC_SPR_SEND_RECV_INIT | |||
| 1 | |||
| The internal objects for sending and receiving have been initialised | |||
|- | |||
| CEC_SPR_SEND_READY | |||
| 2 | |||
| The sysmodule is ready for SPR Send, now it is possible to fetch the SPR data needed | |||
|- | |||
| CEC_SPR_SEND | |||
| 3 | |||
| The other program should be sending the SPR request now | |||
|- | |||
| CEC_SPR_RECEIVE_READY | |||
| 4 | |||
| The sysmodule is ready to receive SPR data now | |||
|- | |||
| CEC_SPR_RECEIVE | |||
| 5 | |||
| The sysmodule is done receiving SPR data | |||
|- | |||
| CEC_SPR_CONNECTION_FINISHED | |||
| 6 | |||
| | |||
|} | |||
= CECD Service "cecd:ndm" = | |||
{| class="wikitable" border="1" | |||
|- | |||
! Command Header | |||
! Description | |||
|- | |||
| 0x00010000 | |||
| Initialize | |||
|- | |||
| 0x00020000 | |||
| Deinitialize | |||
|- | |||
| 0x00030000 | |||
| ResumeDaemon | |||
|- | |||
| 0x00040040 | |||
| SuspendDaemon(bool immediately) | |||
|- | |||
| 0x00050000 | |||
| QueryStatus | |||
|- | |||
| 0x00060042 | |||
| GetNZoneInfo | |||
|- | |||
| 0x00070042 | |||
| SetNZoneSSIDList | |||
|- | |||
| 0x00080042 | |||
| SetNZoneMacFilter | |||
|- | |- | ||
|} | |} |