|
#!/bin/sh /etc/rc.common
|
|
# Copyright (C) 2016 Aleksander Morgado <aleksander@aleksander.es>
|
|
|
|
USE_PROCD=1
|
|
START=70
|
|
|
|
LOG_LEVEL="INFO"
|
|
|
|
stop_service() {
|
|
# Load common utils
|
|
. /usr/share/ModemManager/modemmanager.common
|
|
# Set all configured interfaces as unavailable
|
|
mm_cleanup_interfaces
|
|
}
|
|
|
|
start_service() {
|
|
# Setup ModemManager service
|
|
#
|
|
# We will make sure that the rundir always exists, and we initially cleanup
|
|
# all interfaces flagging them as unavailable.
|
|
#
|
|
# The cached events processing will wait for MM to be available in DBus
|
|
# and will make sure all ports are re-notified to ModemManager every time
|
|
# it starts.
|
|
#
|
|
# All these commands need to be executed on every MM start, even after
|
|
# procd-triggered respawns, which is why this is wrapped in a startup
|
|
# wrapper script called '/usr/sbin/ModemManager-wrapper'.
|
|
#
|
|
. /usr/share/ModemManager/modemmanager.common
|
|
procd_open_instance
|
|
procd_set_param command /usr/sbin/ModemManager-wrapper
|
|
procd_append_param command --log-level="$LOG_LEVEL"
|
|
[ "$LOG_LEVEL" = "DEBUG" ] && procd_append_param command --debug
|
|
procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}"
|
|
procd_set_param pidfile "${MODEMMANAGER_PID_FILE}"
|
|
procd_close_instance
|
|
}
|