summaryrefslogtreecommitdiff
path: root/xpp/perl_modules/Dahdi/Utils.pm
diff options
context:
space:
mode:
authorTzafrir Cohen <tzafrir.cohen@xorcom.com>2010-03-02 18:07:37 +0000
committerTzafrir Cohen <tzafrir.cohen@xorcom.com>2010-03-02 18:07:37 +0000
commitee0e06c99e2cf44c23984e84b592ff82af68b19b (patch)
treee3c8fc7310253671fcc7d1b77a4b308013da72dd /xpp/perl_modules/Dahdi/Utils.pm
parentff09b1ff474333d8f7e51a8f4ef84a2f9cd9e395 (diff)
DAHDI-perl: allow setting base of system files with DAHDI_VIRT_TOP
If the user set DAHDI_VIRT_TOP in the environment, consider it as a path under which to look for ProcFS and SysFS files. This allows running the DAHDI-perl tools on filesystem dumps generated by build_tools/dump_sys_state . To reduce the number of dependencies between various modules, the 'xpd' member of a Dahdi::Span is removed. Dahdi::Xpp::xpd_of_span() can be used if needed. git-svn-id: http://svn.asterisk.org/svn/dahdi/tools/trunk@8215 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'xpp/perl_modules/Dahdi/Utils.pm')
-rw-r--r--xpp/perl_modules/Dahdi/Utils.pm14
1 files changed, 14 insertions, 0 deletions
diff --git a/xpp/perl_modules/Dahdi/Utils.pm b/xpp/perl_modules/Dahdi/Utils.pm
index dcb7441..4ca468b 100644
--- a/xpp/perl_modules/Dahdi/Utils.pm
+++ b/xpp/perl_modules/Dahdi/Utils.pm
@@ -23,6 +23,20 @@ sub AUTOLOAD {
}
}
+# Initialize ProcFS and SysFS pathes, in case the user set
+# DAHDI_VIRT_TOP
+BEGIN {
+ if (exists $ENV{DAHDI_VIRT_TOP}) {
+ $Dahdi::virt_base = $ENV{DAHDI_VIRT_TOP};
+ } else {
+ $Dahdi::virt_base = '';
+ }
+ $Dahdi::proc_dahdi_base = "$Dahdi::virt_base/proc/dahdi";
+ $Dahdi::proc_xpp_base = "$Dahdi::virt_base/proc/xpp";
+ $Dahdi::proc_usb_base = "$Dahdi::virt_base/proc/bus/usb";
+ $Dahdi::sys_base = "$Dahdi::virt_base/sys";
+}
+
sub xpp_dump($) {
my $self = shift || die;
printf STDERR "Dump a %s\n", ref($self);