* On some systems/configurations, dahdi init script may kick in
during the time that hotplug scripts are configuring spans.
* It may lead to a race since the init script runs "dahdi_auto_assign_compat"
which calls "dahdi_registration" and that tries to run
"dahdi_span_assignments auto ..."
* Use the newly-added "dahdi_span_assignments" "unmatched" operation.
* Now the "dahdi_auto_assign_compat" script only runs "dahdi_registration"
if there are no "unmatched" Astribanks.
* This prevents the race in fully configured systems.
The race may still exist on partially-configured systems.
Add two new subcommands to dahdi_span_assignments:
* matched: list all spans that are in devices that have been registered
and are matched by span_assignments.conf lines.
* unmatched: list all such existing spans that have not been matched
by span_assignments.conf lines.
This adds an extra subcommand: compare: shows span that have been
configured (in /etc/dahdi/span_types.conf) to a different value than
the one currently active on the system.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* udevadm is being moved to /bin. /sbin/udevadm will remain as a
compatibility symlink.
* xpp_fxloader should also look for /bin/udevadm in addition to
/sbin/udevadm and /sbin/udevsettle
* Reverse the order: look for newer ones first.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Prevent an early load of the Astribank (xpp) drivers at initrd time, as
they require some files from the root filesystem.
This installs a file in the dracut configuration directory that will
take effect the next time dracut generates an initrd image.
This installs an configuration file for dracut which is ignored if
dracut is not installed and is a no-op if xpp_usb is not loaded on your
system.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
This was originally done in the init script after all Astribanks were
connected. But now there is no single point in the startup sequence
where we can guarantee all of them were loaded.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* When passing CFLAGS to ./configure, they are ignored.
* The reason is that in Makefile.am CFLAGS are clobbered.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
In file's output Perl scripts may be 'awk or perl script',
'/usr/bin/perl script' or 'Perl script' (with some minor variants). The
latter was not detected by current code and thus perld man pages were
not created.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Now we properly '-lm' to libtonezone itself.
Tools that link with libtonezone get it automatically without having
to individually link it.
- dahdi_cfg historically needed -lm, but no longer does.
* Also use "autoscan" to refresh "configure.ac":
- Added missing tests
- Move AC_CHECK_HEADERS() to their correct location (before testing
libraries).
* Fixes the following (on Ubuntu-14.04):
CCLD dahdi_cfg
./.libs/libtonezone.so: undefined reference to `sin'
./.libs/libtonezone.so: undefined reference to `cos'
./.libs/libtonezone.so: undefined reference to `pow'
collect2: error: ld returned 1 exit status
make[2]: *** [dahdi_cfg] Error 1
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* While technically Git can support $ID keywords, in practice they are not
used.
* GCC now give a warning about ''rcsid' defined but not used' for some
of those.
Let's just remove the unused rcsid.
* Otherwise, they pull compilation of xpp tools via implicit rules.
* This breaks build without libusb/libusbx
* To test this scenario:
./configure .... --without-libusb --without-libusbx
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Russ Meyerriecks <rmeyerriecks@digium.com>
dahdi_cfg's -S (apply only to a specific span) uses the array chan2span
to map channel numbers to span numbers.
The problem is that it assumes that channels first appear in system.conf
immediately after the span line of a specific span. Thus the following
configuration breaks it:
span=1,...
span=2,...
clear=1-2,4-5
dchan=3,6
The best fix for that is to require -C to be used when -S is used (which
is already the case in our udev hooks).
Fixes DAHTOOL-69.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* So they are always included in 'make dist' even if PBX_USB is false.
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* The file is defined as XTALK_OPTIONS_FILE (/etc/dahdi/xpp.conf):
- Lines beginning with '#' are skipped.
- Line beginning with "XTALK_OPTIONS" are used.
- Anything after whitespaces (with optional "=" characters) is part
of the value.
* An environment variable named "XTALK_OPTIONS" may override file contents.
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Fallback to old libusb-0.1 if libusbx isn't found.
* Can force either: --{with,without}-{libusb,libusbx}
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Build new libxtalk as local convenience library
* Have new mpptalk.[ch] and astribank.[ch] wrap the new API
* Modify all tools to use the new API
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Do not remove yet the old ones.
* So new files are built, but not used yet.
* Build as a "noinst_" convenience library.
* Also, compile with '-Wno-unknown-pragmas' because we use some pragmas.
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Use pkg-config
* For tight control have: --with-libusbx, --with-libusb
- For now, we choose libusb (AKA libusb-0.1)
- After committing support for libusbx (AKA libusb-1.0)
we'll change the default.
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Allow firmware loading to take much longer (up to 180 seconds) before
it is killed. The default timeout is 30 seconds.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
If we are based on a git tag with a name (such as 'upstream/2.10.2'),
remove everything up to the slash.
While we're at it, remove a leading '1%' that gets into the version
string as part of the version tag (a Debian version with an epoch: '1:'
is converted to '1%').
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Acked-by: Russ Meyerriecks <rmeyerriecks@digium.com>
In order to support a reproducable build, always run asciidoc with the
timezone UTC. This makes sure that the time shown in the file will be
the same, regardless of the location from which it is run.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
Exposed in twinstar setups where dahdi has auto_assign_spans=1:
* We start configuration with an empty /etc/dahdi/xpp_order
* If "XPP_HOTPLUG_DAHDI=yes", the astribank_hook removes
the asterisk_is_starting semaphore too early.
* There's no point in waiting for non-existant or empty /etc/dahdi/xpp_order
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
gcc 5 found this with the new -Werror=logical-not-parenthesis warning. Since we
have -Wall by default, it would also fail the compile.
Internal-Issue-ID: DAHLIN-347
Signed-off-by: Russ Meyerriecks <rmeyerriecks@digium.com>
Acked-by: Shaun Ruffell <sruffell@digium.com>
* Fix distcheck by having all the targets installed under $prefix
* But by default (no prefix or prefix=/usr), revert to older pathes:
- /etc/dahdi
- udev rules in /etc/udev/rules.d
- perl in perl sitelib
- man pages in /usr/share/man
* Add configure options:
--with-udevrules= (e.g.: /lib/udev/rules.d)
--with-perllib= (e.g.: `perl -V:vendorlib)
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Install to $datadir/dahdi and not $datadir/dahdi-tools
* Install to $includedir/dahdi and not $includedir/dahdi-tools
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Fix small compile warnings (which are now errors):
- hdlcgen.c
- hdlcstress.c (remove return value which isn't checked)
- patlooptest.c
* Also added dev-mode to xpp with relevant compile fixes.
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>
* Install via doc/Makefile.am
* Remove relevant code from Makefile.legacy
* For now, leave the conversion to HTML in Makefile.legacy
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>