#!/bin/sh /etc/rc.common # Copyright (C) 2016 Aleksander Morgado USE_PROCD=1 START=70 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 they're all included as instance command # procd_open_instance procd_set_param command sh -c ". /usr/share/ModemManager/modemmanager.common; \ mkdir -m 0755 -p ${MODEMMANAGER_RUNDIR}; \ mm_cleanup_interfaces; \ ( mm_report_events_from_cache ) >/dev/null 2>&1 & \ /usr/sbin/ModemManager" procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}" procd_set_param pidfile "${MODEMMANAGER_PID_FILE}" procd_close_instance }