WARNING! Confidential
This bug report is only for internal use and shall only disclose to involved developer and clients. Disclosure can only be made after all the production systems has been patched or updated.
This bug was observed on Amazon LightSail VM environment with ArozOS v1.113 installation. User report that they cannot login to the ArozOS system.
The main router returned an panic error caused by line 79 of the routing logic. After investigation, the following logic was the root cause of the above system panic.
modileInfo := moduleHandler.GetModuleInfoByID(interfaceModule[0])
http.Redirect(w, r, modileInfo.StartDir, 307)
where the modileInfo returned nil for the interface module which caused the panic.
This can happens when the interface module is based on a subservice and the subservice has been shut down due to human error or the subservice is constantly crashing and killed by the core system. When the user with that subservice and interface module log-in to system, the panic occurs and freeze the whole system as the main router is stuck.
The issue has been resolved in the latest internal build of ArozOS by creating an additional handling logic for interface module not found.
modileInfo := moduleHandler.GetModuleInfoByID(interfaceModule[0])
if modileInfo == nil {
//The module is not found or not enabled
http.Redirect(w, r, "./SystemAO/boot/interface_disabled.html", 307)
return
}
http.Redirect(w, r, modileInfo.StartDir, 307)
ArozOS v1.118 (Nightly)
26 Nov 2021