data: add example connection dispatcher
Just a minimal example that prints the events in syslog
This commit is contained in:
@@ -577,6 +577,7 @@ Makefile
|
|||||||
data/Makefile
|
data/Makefile
|
||||||
data/ModemManager.pc
|
data/ModemManager.pc
|
||||||
data/mm-glib.pc
|
data/mm-glib.pc
|
||||||
|
data/dispatcher-connection/Makefile
|
||||||
data/dispatcher-fcc-unlock/Makefile
|
data/dispatcher-fcc-unlock/Makefile
|
||||||
data/tests/Makefile
|
data/tests/Makefile
|
||||||
data/tests/org.freedesktop.ModemManager1.service
|
data/tests/org.freedesktop.ModemManager1.service
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
SUBDIRS = . dispatcher-fcc-unlock tests
|
SUBDIRS = . dispatcher-connection dispatcher-fcc-unlock tests
|
||||||
|
|
||||||
edit = @sed \
|
edit = @sed \
|
||||||
-e 's|@sbindir[@]|$(sbindir)|g' \
|
-e 's|@sbindir[@]|$(sbindir)|g' \
|
||||||
|
22
data/dispatcher-connection/99-log-event
Normal file
22
data/dispatcher-connection/99-log-event
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
# 2022 Aleksander Morgado <aleksander@aleksander.es>
|
||||||
|
#
|
||||||
|
# Example connection info dispatcher script
|
||||||
|
#
|
||||||
|
|
||||||
|
# require program name and at least 4 arguments
|
||||||
|
[ $# -lt 4 ] && exit 1
|
||||||
|
|
||||||
|
MODEM_PATH="$1"
|
||||||
|
BEARER_PATH="$2"
|
||||||
|
INTERFACE="$3"
|
||||||
|
STATE="$4"
|
||||||
|
|
||||||
|
MODEM_ID=$(basename ${MODEM_PATH})
|
||||||
|
BEARER_ID=$(basename ${BEARER_PATH})
|
||||||
|
|
||||||
|
# report in syslog the event
|
||||||
|
logger -t "connection-dispatch" "modem${MODEM_ID}: bearer${BEARER_ID}: interface ${INTERFACE} ${STATE}"
|
||||||
|
exit $?
|
21
data/dispatcher-connection/Makefile.am
Normal file
21
data/dispatcher-connection/Makefile.am
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
# Directory for user-enabled tools
|
||||||
|
connectionuser = $(pkgsysconfdir)/connection.d
|
||||||
|
|
||||||
|
# Directory for package-enabled tools
|
||||||
|
connectionpackage = $(pkglibdir)/connection.d
|
||||||
|
|
||||||
|
# Shipped but disabled FCC unlock tools
|
||||||
|
connectionavailabledir = $(pkgdatadir)/connection.available.d
|
||||||
|
connectionavailable_SCRIPTS = \
|
||||||
|
99-log-event \
|
||||||
|
$(NULL)
|
||||||
|
|
||||||
|
EXTRA_DIST = $(connectionavailable_SCRIPTS)
|
||||||
|
|
||||||
|
install-data-hook:
|
||||||
|
$(MKDIR_P) $(DESTDIR)$(connectionuser); \
|
||||||
|
$(MKDIR_P) $(DESTDIR)$(connectionpackage); \
|
||||||
|
cd $(DESTDIR)$(connectionavailabledir); \
|
||||||
|
chmod go-rwx *; \
|
||||||
|
$(NULL)
|
25
data/dispatcher-connection/meson.build
Normal file
25
data/dispatcher-connection/meson.build
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
# Copyright (C) 2021 Aleksander Morgado <aleksander@aleksander.es>
|
||||||
|
|
||||||
|
# Shipped example connection info dispatcher
|
||||||
|
mm_connectiondiravailable = mm_pkgdatadir / 'connection.available.d'
|
||||||
|
|
||||||
|
# Directory for user-enabled scripts
|
||||||
|
mm_connectiondiruser = mm_pkgsysconfdir / 'connection.d'
|
||||||
|
|
||||||
|
# Directory for package-enabled tools
|
||||||
|
mm_connectiondirpackage = mm_pkglibdir / 'connection.d'
|
||||||
|
|
||||||
|
examples = files(
|
||||||
|
'99-log-event',
|
||||||
|
)
|
||||||
|
|
||||||
|
install_data(
|
||||||
|
examples,
|
||||||
|
install_mode: 'rwx------',
|
||||||
|
install_dir: mm_connectiondiravailable,
|
||||||
|
)
|
||||||
|
|
||||||
|
mkdir_cmd = 'mkdir -p ${DESTDIR}@0@'
|
||||||
|
meson.add_install_script('sh', '-c', mkdir_cmd.format(mm_prefix / mm_connectiondiruser))
|
||||||
|
meson.add_install_script('sh', '-c', mkdir_cmd.format(mm_prefix / mm_connectiondirpackage))
|
@@ -367,6 +367,7 @@ version_conf = {
|
|||||||
|
|
||||||
subdir('po')
|
subdir('po')
|
||||||
subdir('data')
|
subdir('data')
|
||||||
|
subdir('data/dispatcher-connection')
|
||||||
subdir('data/dispatcher-fcc-unlock')
|
subdir('data/dispatcher-fcc-unlock')
|
||||||
subdir('introspection')
|
subdir('introspection')
|
||||||
subdir('include')
|
subdir('include')
|
||||||
|
Reference in New Issue
Block a user