Changes

1,397 bytes added ,  22:00, 18 January 2023
no edit summary
Line 840: Line 840:  
|}
 
|}
   −
= Contents Delivery =
+
= Notes =
 +
nnMain calls two funcs only when when [[Process_Manager_services|pm:bm]] GetBootMode output is 0 or 1 (Normal/Maintenance), which are: [[ETicket_services|es]] service init, and [[Account_services|acc:e:u1]] service init.
 +
 
 +
nnMain only handles [[PSC_services|ovln:snd]] initialization/deinit when the output from [[Process_Manager_services|pm:bm]] GetBootMode is 0 (Normal).
 +
 
 +
When initializing [[SSL_services|ssl]], when the input flag is 0 it uses SslVersion = {ApiVersion | Auto}, while when flag is set it uses {ApiVersion | <each flag bit for TLS 1.0-1.2>}. The input flag is set when [[Process_Manager_services|pm:bm]] GetBootMode output is 1 or 2 (Maintenance/SafeMode), otherwise it's 0.
 +
 
 +
nnMain calls a savedata init func with an input flag determined with the output from [[Process_Manager_services|pm:bm]] GetBootMode. flag=0 for BootMode Normal, flag=1 for BootMode non-Normal. When flag is set, it deletes the savedata for savedata [[Flash_Filesystem|nim_sys]], returning the error on failure. Regardless of flag, it then calls a func which handles mounting savedata nim_sys (and creating it if needed). After checking error and calling another func (with error check), if flag is clear it proceeds with handling other savedata etc, otherwise it calls a func (also called with flag=0 once finished) then returns.
 +
 
 +
Various hosted services require BootMode Normal, see above.
 +
 
 +
== Contents Delivery ==
 
Content can be transferred with a custom protocol over the network. This is intended for use with local [[LDN_services|ldn]] networks, however the used IP addresses can be arbitrary. This can be used for SystemUpdates via the above Send/Receive commands (which are then used via [[NS_Services#ns:su|ns:su]]). Application Patch content can also be transferred with this.
 
Content can be transferred with a custom protocol over the network. This is intended for use with local [[LDN_services|ldn]] networks, however the used IP addresses can be arbitrary. This can be used for SystemUpdates via the above Send/Receive commands (which are then used via [[NS_Services#ns:su|ns:su]]). Application Patch content can also be transferred with this.