RO services: Difference between revisions
No edit summary |
|||
Line 26: | Line 26: | ||
== LoadModule == | == LoadModule == | ||
Takes a PID-descriptor, | Takes a PID-descriptor, 4 input u64s ('''nro_address''', '''nro_size''', '''bss_address''' and '''bss_size'''). Returns an output u64 ('''out_address'''). | ||
== UnloadModule == | == UnloadModule == | ||
Takes a PID-descriptor and | Takes a PID-descriptor and an input u64 ('''nro_address'''). | ||
== RegisterModuleInfo == | == RegisterModuleInfo == | ||
Takes a PID-descriptor and | Takes a PID-descriptor and 2 input u64s ('''nrr_address''' and '''nrr_size'''). | ||
[7.0.0+] [[NRR|NrrKind]] must be 0 (User) for this function to succeed. | [7.0.0+] [[NRR|NrrKind]] must be 0 (User) for this function to succeed. | ||
== UnregisterModuleInfo == | == UnregisterModuleInfo == | ||
Takes a PID-descriptor and | Takes a PID-descriptor and an input u64s ('''nrr_address'''). | ||
== Initialize == | == Initialize == | ||
Takes PID-descriptor | Takes PID-descriptor and a process handle. | ||
== RegisterModuleInfo2 == | == RegisterModuleInfo2 == | ||
Takes a PID-descriptor, a process handle and | Takes a PID-descriptor, a process handle and 2 input u64s ('''nrr_address''' and '''nrr_size'''). | ||
First, this validates that the pid descriptor matches the pid for the process handle sent to this->Initialize() earlier. Then, this calls the same function as LoadNrr, except using the passed process handle instead of the one sent to Initialize. | First, this validates that the pid descriptor matches the pid for the process handle sent to this->Initialize() earlier. Then, this calls the same function as LoadNrr, except using the passed process handle instead of the one sent to Initialize. |