severity 609736 grave
retitle 609736 isdn device nodes are no longer created
tags 609736 patch
thanks
justification 609736 Renders package unusable

Sven Hartge wrote ...   *wave*

> In upload 1:3.9.20060704+dfsg.2-8 you removed the MAKEDEV call from
> init.d.functions but this causes isdnlog and vboxgetty to fail for me,
> complaining about missing /dev/isdnctrl0 and /dev/ttyI1.
> 
> Unfortunately "modprobe hisax isdn" does _not_ create the necessary
> isdnctrl0 and ttyI* nodes in /dev so the MAKEDEV call is still necessary.
> (Very crude, I know, but it seems the kernel code does not create the
> needed events for udev.)

Part two of ISDN breakage after wheezy upgrade (part one was #696532).
Sorry this took a while, had to find hardware for a fresh install 
and using the stock Debian kernel first, just to make sure. No change
in the behaviour, though.

So: Unfortunately, the core issue of Sven's bug report remained
undealt with: The /dev/isdn* and /dev/ippp* nodes are not created any
longer, rendering the entire ISDN subsystem unusable, severity raised
accordingly.

The patch below restores the behaviour of squeeze with updates
regarding recognizing udev. That's not a nice one but it works.
Applies on the wheezy version of isdnutils (1:3.25+dfsg1-3wheezy1).

During the holidays I'll prepare an NMU for both issues, let me know 
soon if you plan to do an upload on your own. 

    Christoph

commit 963e0f2bf35d4843dfa8c634f6c5b2a99060d007
Author: Christoph Biedl <debian.a...@manchmal.in-ulm.de>
Date:   Mon Dec 24 17:48:47 2012 +0100

    Re-add MAKEDEV calls to init.d.functions. Closes: #609736

diff --git a/debian/control b/debian/control
index 7b02d83..992d4f6 100644
--- a/debian/control
+++ b/debian/control
@@ -18,7 +18,7 @@ Package: isdnutils-base
 Priority: optional
 Architecture: linux-any
 Pre-Depends: debconf (>= 1.2.9) | debconf-2.0
-Depends: ${shlibs:Depends}, lsb-base (>= 1.3-9ubuntu3), ${misc:Depends}
+Depends: ${shlibs:Depends}, lsb-base (>= 1.3-9ubuntu3), makedev, 
${misc:Depends}
 Suggests: ipppd, isdnlog, isdnutils-doc, isdnutils-xtools, isdnvboxserver, 
isdnvboxclient
 Description: ISDN utilities - minimal set
  This package provides the basic set of ISDN utilities needed to make use
diff --git a/debian/init.d.functions b/debian/init.d.functions
index 1979cab..00d50cb 100644
--- a/debian/init.d.functions
+++ b/debian/init.d.functions
@@ -80,15 +80,26 @@ check_isdncards() {
     if $isdncards_unchecked; then
        isdncards_unchecked=false
 
-       # see discussion in bug 609736 regarding use of if and ln in the next 
three lines
-       if [ ! -e /dev/isdnctrl -a -e /dev/isdnctrl0 ]; then
-               ln -sf /dev/isdnctrl0 /dev/isdnctrl
-       fi
-
        if [ -e /dev/isdninfo ]; then
                ISDNINFO=/dev/isdninfo
        elif [ -e /dev/isdn/isdninfo ]; then
                ISDNINFO=/dev/isdn/isdninfo
+       elif [ -d /dev/.udev/ ] || [ -d /run/udev/ ] ; then
+               # udev is running
+               old_pwd=$(pwd)
+               cd /dev
+               WRITE_ON_UDEV=1 /sbin/MAKEDEV isdnmodem isdnbri dcbri isdn-io 
isdn-tty isdn-ippp
+               cd $old_pwd
+               if [ -e /dev/isdninfo ]; then
+                       ISDNINFO=/dev/isdninfo
+               elif [ -e /dev/isdn/isdninfo ]; then
+                       ISDNINFO=/dev/isdn/isdninfo
+               fi
+        fi
+
+       # see discussion in bug 609736 regarding use of if and ln in the next 
three lines
+       if [ ! -e /dev/isdnctrl -a -e /dev/isdnctrl0 ]; then
+               ln -sf /dev/isdnctrl0 /dev/isdnctrl
        fi
 
         if [ -z "$ISDNINFO" ]; then

Attachment: signature.asc
Description: Digital signature

Reply via email to