- #!/bin/sh
-
- trap_with_arg() {
- func="$1" ; shift
- for sig ; do
- # shellcheck disable=SC2064
- trap "$func $sig" "$sig"
- done
- }
-
- func_trap() {
- logger "ModemManager-wrapper[$$]" "Sending signal ${1}..."
- kill "-${1}" "$CHILD" 2>/dev/null
- }
-
- main() {
- . /usr/share/ModemManager/modemmanager.common
-
- trap_with_arg func_trap INT TERM KILL
-
- mkdir -p "${MODEMMANAGER_RUNDIR}"
- chmod 0755 "${MODEMMANAGER_RUNDIR}"
- mm_cleanup_interfaces
-
- /usr/sbin/ModemManager "$@" 1>/dev/null 2>/dev/null &
- CHILD="$!"
-
- mm_report_events_from_cache
-
- wait "$CHILD"
- }
-
- main "$@"
|