- Add service start/stop to cmd -> then continue in cinit itself. cinit_svc_disable.c - remove malloc for paths use - cleanly define functions for cmd -------------------------------------------------------------------------------- - svc_stop_wait() => calls svc_stop() and waits until the process is finished => pay attention for child handler! => wait for that specific PID! => use global lock? - answer_svc_stop(char *svc, int method) => is called by the IPC methods => checks whether the service exists => returns the status of the service (NOT_EXISTS or the new one) => calls svc_stop_wait(), which returns => method = o including needed_by o including wanted_by o including needed_by and wanted_by o only the service - cinit blocking while shutting down => not good! => only needed when being in ipc! => otherwise tree_stop() catches that again. - - Documentate off exit codes: * 0: successfully stopped * 1: internal error: service status unknown * 2: ...? Done for pre14: - svc_stop() => stops an existing service => sets status => calls "off" - svc_stop_deps() => takes care about dependencies - Add comment about path_absolute in manpage of cmd => requires the directory to be there.