summaryrefslogtreecommitdiff
path: root/xpp/utils
diff options
context:
space:
mode:
Diffstat (limited to 'xpp/utils')
-rw-r--r--xpp/utils/Makefile1
-rwxr-xr-xxpp/utils/astribank_hook47
-rw-r--r--xpp/utils/xpp.rules3
-rw-r--r--xpp/utils/xpp_fxloader5
4 files changed, 55 insertions, 1 deletions
diff --git a/xpp/utils/Makefile b/xpp/utils/Makefile
index 3fd0900..7500246 100644
--- a/xpp/utils/Makefile
+++ b/xpp/utils/Makefile
@@ -82,6 +82,7 @@ install: all
$(INSTALL) -d $(DESTDIR)$(DATADIR)
$(INSTALL_DATA) $(XPD_INIT_DATA) $(DESTDIR)$(DATADIR)/
$(INSTALL) $(XPD_INIT) $(DESTDIR)$(DATADIR)/
+ $(INSTALL) astribank_hook $(DESTDIR)$(DATADIR)/
$(INSTALL) -d $(DESTDIR)$(MANDIR)
$(INSTALL_DATA) $(MAN_INSTALL) $(DESTDIR)$(MANDIR)/
$(INSTALL) -d $(DESTDIR)$(HOTPLUG_USB_DIR)
diff --git a/xpp/utils/astribank_hook b/xpp/utils/astribank_hook
new file mode 100755
index 0000000..53d42f9
--- /dev/null
+++ b/xpp/utils/astribank_hook
@@ -0,0 +1,47 @@
+#! /bin/sh
+
+set -e
+
+xpp_sync="/root/xortel/xpp_sync"
+
+me=`basename $0`
+INIT_DIR=`dirname $0`
+XPP_BASE=/proc/xpp
+export XPP_BASE
+LOGGER="logger -s -t $me"
+
+ZAPTEL_BOOT_DEBIAN=${ZAPTEL_BOOT_DEBIAN:-/etc/default/zaptel}
+ZAPTEL_BOOT_FEDORA=${ZAPTEL_BOOT_FEDORA:-/etc/sysconfig/zaptel}
+
+# read default configuration from /etc/default/zaptel
+if [ -r $ZAPTEL_BOOT_DEBIAN ]; then . $ZAPTEL_BOOT_DEBIAN; fi
+if [ -r $ZAPTEL_BOOT_FEDORA ]; then . $ZAPTEL_BOOT_FEDORA; fi
+
+if [ "$ASTRIBANK_HOOK_DISABLED" != '' ]; then
+ $LOGGER -p kern.info "Exiting... ASTRIBANK_HOOK_DISABLED"
+ exit 0
+fi
+
+# Always redirect stderr somewhere, otherwise the shell script will die
+# when it tries to do I/O related stuff on closed file descriptor.
+# Our default is to throw it down the bit-bucket.
+#exec 2> /dev/console
+## If you wish to trace this script:
+#exec 2> "/tmp/astribank_hook_$XBUS_NAME"
+
+$LOGGER -p kern.info "$ACTION: $*"
+
+$LOGGER -p kern.info "Change Sync"
+
+case "$ACTION" in
+add)
+ "$xpp_sync" auto
+ ;;
+remove)
+ "$xpp_sync" auto
+ ;;
+*)
+ ;;
+esac
+
+"$xpp_sync" | $LOGGER -p kern.info
diff --git a/xpp/utils/xpp.rules b/xpp/utils/xpp.rules
index a20acff..794a9f0 100644
--- a/xpp/utils/xpp.rules
+++ b/xpp/utils/xpp.rules
@@ -8,3 +8,6 @@ SYSFS{idVendor}=="e4e4", SYSFS{idProduct}=="11[345][01]", \
LABEL="xpp_usb_add_end"
+# Hotplug hook for Astribank up/down
+KERNEL=="xbus*" RUN+="/usr/share/zaptel/astribank_hook udev $kernel $sysfs{status} $sysfs{connector}"
+
diff --git a/xpp/utils/xpp_fxloader b/xpp/utils/xpp_fxloader
index 5584b5f..3000718 100644
--- a/xpp/utils/xpp_fxloader
+++ b/xpp/utils/xpp_fxloader
@@ -215,7 +215,10 @@ esac
##
# allow disabling automatic hotplugging:
-if [ "$XPP_HOTPLUG_DISABLED" != '' ]; then exit 0; fi
+if [ "$XPP_HOTPLUG_DISABLED" != '' ]; then
+ $LOGGER -p kern.info "Exiting... XPP_HOTPLUG_DISABLED"
+ exit 0
+fi
if [ "$ACTION" = "add" ] && [ -w "$DEVICE" ]
then