aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile1
-rw-r--r--README2
-rw-r--r--apps/app_chanisavail.c2
-rw-r--r--apps/app_chanspy.c5
-rw-r--r--apps/app_dahdibarge.c (renamed from apps/app_zapbarge.c)88
-rw-r--r--apps/app_dahdiras.c (renamed from apps/app_zapras.c)56
-rw-r--r--apps/app_dahdiscan.c (renamed from apps/app_zapscan.c)97
-rw-r--r--apps/app_dial.c10
-rw-r--r--apps/app_fax.c741
-rw-r--r--apps/app_flash.c38
-rw-r--r--apps/app_getcpeid.c2
-rw-r--r--apps/app_meetme.c186
-rw-r--r--apps/app_page.c2
-rw-r--r--apps/app_queue.c114
-rw-r--r--apps/app_rpt.c402
-rw-r--r--build_tools/menuselect-deps.in4
-rw-r--r--cdr/cdr_csv.c2
-rw-r--r--channels/chan_dahdi.c (renamed from channels/chan_zap.c)2606
-rw-r--r--channels/chan_iax2.c32
-rw-r--r--channels/chan_mgcp.c34
-rw-r--r--codecs/codec_dahdi.c (renamed from codecs/codec_zap.c)133
-rw-r--r--configs/extensions.ael.sample16
-rw-r--r--configs/extensions.conf.sample16
-rw-r--r--configs/extensions.lua.sample10
-rw-r--r--configs/meetme.conf.sample2
-rw-r--r--configs/muted.conf.sample4
-rw-r--r--configs/queues.conf.sample6
-rw-r--r--configs/rpt.conf.sample12
-rw-r--r--configs/sla.conf.sample10
-rw-r--r--configs/smdi.conf.sample2
-rw-r--r--configs/users.conf.sample2
-rw-r--r--configs/vpb.conf.sample2
-rw-r--r--configs/zapata.conf.sample68
-rwxr-xr-xconfigure3261
-rw-r--r--configure.ac49
-rwxr-xr-xcontrib/init.d/rc.mandrake.asterisk4
-rwxr-xr-xcontrib/init.d/rc.mandrake.zaptel12
-rwxr-xr-xcontrib/init.d/rc.suse.asterisk4
-rw-r--r--contrib/scripts/autosupport9
-rw-r--r--contrib/scripts/loadtest.tcl6
-rw-r--r--contrib/utils/zones2indications.c20
-rw-r--r--doc/asterisk.84
-rw-r--r--doc/asterisk.sgml4
-rw-r--r--doc/backtrace.txt6
-rw-r--r--doc/janitor-projects.txt2
-rw-r--r--doc/manager_1_1.txt8
-rw-r--r--doc/osp.txt4
-rw-r--r--doc/sms.txt2
-rw-r--r--doc/ss7.txt1
-rw-r--r--doc/tex/ael.tex6
-rw-r--r--doc/tex/app-sms.tex2
-rw-r--r--doc/tex/backtrace.tex6
-rw-r--r--doc/tex/channelvariables.tex4
-rw-r--r--doc/tex/configuration.tex2
-rw-r--r--doc/tex/enum.tex10
-rw-r--r--doc/tex/hardware.tex10
-rw-r--r--doc/tex/localchannel.tex4
-rw-r--r--doc/tex/manager.tex4
-rw-r--r--doc/tex/privacy.tex6
-rw-r--r--doc/tex/queues-with-callback-members.tex2
-rw-r--r--doc/tex/security.tex6
-rw-r--r--doc/tex/sla.tex26
-rw-r--r--include/asterisk/autoconfig.h.in54
-rw-r--r--include/asterisk/channel.h12
-rw-r--r--include/asterisk/dahdi.h (renamed from include/asterisk/zapata.h)32
-rw-r--r--include/asterisk/doxyref.h10
-rw-r--r--include/asterisk/dsp.h2
-rw-r--r--include/asterisk/options.h5
-rw-r--r--main/asterisk.c31
-rw-r--r--main/channel.c39
-rw-r--r--main/features.c2
-rw-r--r--main/file.c8
-rw-r--r--main/loader.c33
-rw-r--r--makeopts.in2
-rw-r--r--pbx/pbx_config.c28
-rw-r--r--res/res_musiconhold.c24
-rw-r--r--utils/extconf.c2
77 files changed, 2425 insertions, 6050 deletions
diff --git a/Makefile b/Makefile
index 65e0a5ffd..639ffbbd6 100644
--- a/Makefile
+++ b/Makefile
@@ -680,6 +680,7 @@ samples: adsi
echo ";transcode_via_sln = yes ; Build transcode paths via SLINEAR, instead of directly" ; \
echo ";runuser = asterisk ; The user to run as" ; \
echo ";rungroup = asterisk ; The group to run as" ; \
+ echo "dahdichanname = yes" ; Set channel name as DAHDI\
echo "" ; \
echo "; Changing the following lines may compromise your security." ; \
echo ";[files]" ; \
diff --git a/README b/README
index aa2b2486f..e132db86e 100644
--- a/README
+++ b/README
@@ -175,7 +175,7 @@ they're used only to help make the configuration file easier to
understand, and do not affect how it is actually parsed.
Entries of the form 'variable=value' set the value of some parameter in
-asterisk. For example, in zapata.conf, one might specify:
+asterisk. For example, in dahdi.conf, one might specify:
switchtype=national
diff --git a/apps/app_chanisavail.c b/apps/app_chanisavail.c
index 6a9cd8128..68cab31aa 100644
--- a/apps/app_chanisavail.c
+++ b/apps/app_chanisavail.c
@@ -75,7 +75,7 @@ static int chanavail_exec(struct ast_channel *chan, void *data)
);
if (ast_strlen_zero(data)) {
- ast_log(LOG_WARNING, "ChanIsAvail requires an argument (Zap/1&Zap/2)\n");
+ ast_log(LOG_WARNING, "ChanIsAvail requires an argument (DAHDI/1&DAHDI/2)\n");
return -1;
}
diff --git a/apps/app_chanspy.c b/apps/app_chanspy.c
index cd00a25e8..2f5a997d9 100644
--- a/apps/app_chanspy.c
+++ b/apps/app_chanspy.c
@@ -47,6 +47,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/translate.h"
#include "asterisk/module.h"
#include "asterisk/lock.h"
+#include "asterisk/options.h"
#define AST_NAME_STRLEN 256
#define NUM_SPYGROUPS 128
@@ -587,6 +588,7 @@ static struct chanspy_ds *next_channel(struct ast_channel *chan,
const char *exten, const char *context, struct chanspy_ds *chanspy_ds)
{
struct ast_channel *next;
+ char channel_name[AST_CHANNEL_NAME];
redo:
if (!ast_strlen_zero(spec))
@@ -599,7 +601,8 @@ redo:
if (!next)
return NULL;
- if (!strncmp(next->name, "Zap/pseudo", 10)) {
+ snprintf(channel_name, AST_CHANNEL_NAME, "%s/pseudo", dahdi_chan_name);
+ if (!strncmp(next->name, channel_name, 10)) {
ast_channel_unlock(next);
goto redo;
} else if (next == chan) {
diff --git a/apps/app_zapbarge.c b/apps/app_dahdibarge.c
index 892dd1ec0..b70b57b30 100644
--- a/apps/app_zapbarge.c
+++ b/apps/app_dahdibarge.c
@@ -21,7 +21,7 @@
/*! \file
*
- * \brief Zap Barge support
+ * \brief DAHDI Barge support
*
* \author Mark Spencer <markster@digium.com>
*
@@ -32,14 +32,14 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -52,12 +52,13 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/say.h"
#include "asterisk/utils.h"
-static char *app = "ZapBarge";
+static char *app = "DAHDIBarge";
+static char *deprecated_app = "ZapBarge";
-static char *synopsis = "Barge in (monitor) Zap channel";
+static char *synopsis = "Barge in (monitor) DAHDI channel";
static char *descrip =
-" ZapBarge([channel]): Barges in on a specified zap\n"
+" DAHDIBarge([channel]): Barges in on a specified DAHDI\n"
"channel or prompts if one is not specified. Returns\n"
"-1 when caller user hangs up and is independent of the\n"
"state of the channel being monitored.";
@@ -86,7 +87,7 @@ static int careful_write(int fd, unsigned char *data, int len)
static int conf_run(struct ast_channel *chan, int confno, int confflags)
{
int fd;
- struct zt_confinfo ztc;
+ struct dahdi_confinfo dahdic;
struct ast_frame *f;
struct ast_channel *c;
struct ast_frame fr;
@@ -95,11 +96,11 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
int nfds;
int res;
int flags;
- int retryzap;
+ int retrydahdi;
int origfd;
int ret = -1;
- ZT_BUFFERINFO bi;
+ DAHDI_BUFFERINFO bi;
char __buf[CONF_SIZE + AST_FRIENDLY_OFFSET];
char *buf = __buf + AST_FRIENDLY_OFFSET;
@@ -115,11 +116,11 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
goto outrun;
}
ast_indicate(chan, -1);
- retryzap = strcasecmp(chan->tech->type, "Zap");
-zapretry:
+ retrydahdi = strcasecmp(chan->tech->type, "DAHDI");
+dahdiretry:
origfd = chan->fds[0];
- if (retryzap) {
- fd = open("/dev/zap/pseudo", O_RDWR);
+ if (retrydahdi) {
+ fd = open("/dev/dahdi/pseudo", O_RDWR);
if (fd < 0) {
ast_log(LOG_WARNING, "Unable to open pseudo channel: %s\n", strerror(errno));
goto outrun;
@@ -139,10 +140,10 @@ zapretry:
/* Setup buffering information */
memset(&bi, 0, sizeof(bi));
bi.bufsize = CONF_SIZE;
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = 4;
- if (ioctl(fd, ZT_SET_BUFINFO, &bi)) {
+ if (ioctl(fd, DAHDI_SET_BUFINFO, &bi)) {
ast_log(LOG_WARNING, "Unable to set buffering information: %s\n", strerror(errno));
close(fd);
goto outrun;
@@ -153,34 +154,34 @@ zapretry:
fd = chan->fds[0];
nfds = 0;
}
- memset(&ztc, 0, sizeof(ztc));
+ memset(&dahdic, 0, sizeof(dahdic));
/* Check to see if we're in a conference... */
- ztc.chan = 0;
- if (ioctl(fd, ZT_GETCONF, &ztc)) {
+ dahdic.chan = 0;
+ if (ioctl(fd, DAHDI_GETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error getting conference\n");
close(fd);
goto outrun;
}
- if (ztc.confmode) {
+ if (dahdic.confmode) {
/* Whoa, already in a conference... Retry... */
- if (!retryzap) {
- ast_debug(1, "Zap channel is in a conference already, retrying with pseudo\n");
- retryzap = 1;
- goto zapretry;
+ if (!retrydahdi) {
+ ast_debug(1, "DAHDI channel is in a conference already, retrying with pseudo\n");
+ retrydahdi = 1;
+ goto dahdiretry;
}
}
- memset(&ztc, 0, sizeof(ztc));
+ memset(&dahdic, 0, sizeof(dahdic));
/* Add us to the conference */
- ztc.chan = 0;
- ztc.confno = confno;
- ztc.confmode = ZT_CONF_MONITORBOTH;
+ dahdic.chan = 0;
+ dahdic.confno = confno;
+ dahdic.confmode = DAHDI_CONF_MONITORBOTH;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
goto outrun;
}
- ast_debug(1, "Placed channel %s in ZAP channel %d monitor\n", chan->name, confno);
+ ast_debug(1, "Placed channel %s in DAHDI channel %d monitor\n", chan->name, confno);
for(;;) {
outfd = -1;
@@ -188,13 +189,13 @@ zapretry:
c = ast_waitfor_nandfds(&chan, 1, &fd, nfds, NULL, &outfd, &ms);
if (c) {
if (c->fds[0] != origfd) {
- if (retryzap) {
+ if (retrydahdi) {
/* Kill old pseudo */
close(fd);
}
ast_debug(1, "Ooh, something swapped out under us, starting over\n");
- retryzap = 0;
- goto zapretry;
+ retrydahdi = 0;
+ goto dahdiretry;
}
f = ast_read(c);
if (!f)
@@ -236,10 +237,10 @@ zapretry:
else {
/* Take out of conference */
/* Add us to the conference */
- ztc.chan = 0;
- ztc.confno = 0;
- ztc.confmode = 0;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ dahdic.chan = 0;
+ dahdic.confno = 0;
+ dahdic.confmode = 0;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
}
}
@@ -258,9 +259,9 @@ static int conf_exec(struct ast_channel *chan, void *data)
char confstr[80] = "";
if (!ast_strlen_zero(data)) {
- if ((sscanf(data, "Zap/%d", &confno) != 1) &&
+ if ((sscanf(data, "DAHDI/%d", &confno) != 1) &&
(sscanf(data, "%d", &confno) != 1)) {
- ast_log(LOG_WARNING, "ZapBarge Argument (if specified) must be a channel number, not '%s'\n", (char *)data);
+ ast_log(LOG_WARNING, "DAHDIBarge Argument (if specified) must be a channel number, not '%s'\n", (char *)data);
return 0;
}
}
@@ -286,6 +287,12 @@ out:
return res;
}
+static int conf_exec_warn(struct ast_channel *chan, void *data)
+{
+ ast_log(LOG_WARNING, "Use of the command %s is deprecated, please use %s instead.\n", deprecated_app, app);
+ return conf_exec(chan, data);
+}
+
static int unload_module(void)
{
return ast_unregister_application(app);
@@ -293,7 +300,8 @@ static int unload_module(void)
static int load_module(void)
{
+ ast_register_application(deprecated_app, conf_exec_warn, synopsis, descrip);
return ((ast_register_application(app, conf_exec, synopsis, descrip)) ? AST_MODULE_LOAD_FAILURE : AST_MODULE_LOAD_SUCCESS);
}
-AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Barge in on Zap channel application");
+AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Barge in on DAHDI channel application");
diff --git a/apps/app_zapras.c b/apps/app_dahdiras.c
index 6e079e32d..384607d98 100644
--- a/apps/app_zapras.c
+++ b/apps/app_dahdiras.c
@@ -26,7 +26,7 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
@@ -43,7 +43,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <fcntl.h>
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -52,15 +52,16 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/module.h"
#include "asterisk/app.h"
-static char *app = "ZapRAS";
+static char *app = "DAHDIRAS";
+static char *deprecated_app = "ZapRAS";
-static char *synopsis = "Executes Zaptel ISDN RAS application";
+static char *synopsis = "Executes DAHDI ISDN RAS application";
static char *descrip =
-" ZapRAS(args): Executes a RAS server using pppd on the given channel.\n"
-"The channel must be a clear channel (i.e. PRI source) and a Zaptel\n"
+" DAHDIRAS(args): Executes a RAS server using pppd on the given channel.\n"
+"The channel must be a clear channel (i.e. PRI source) and a DAHDI\n"
"channel to be able to use this function (No modem emulation is included).\n"
-"Your pppd must be patched to be zaptel aware. Arguments should be\n"
+"Your pppd must be patched to be DAHDI aware. Arguments should be\n"
"separated by , characters.\n";
@@ -96,7 +97,7 @@ static pid_t spawn_ras(struct ast_channel *chan, char *args)
memset(argv, 0, sizeof(argv));
/* First argument is executable, followed by standard
- arguments for zaptel PPP */
+ arguments for DAHDI PPP */
argv[argc++] = PPP_EXEC;
argv[argc++] = "nodetach";
@@ -109,7 +110,7 @@ static pid_t spawn_ras(struct ast_channel *chan, char *args)
}
argv[argc++] = "plugin";
- argv[argc++] = "zaptel.so";
+ argv[argc++] = "dahdi.so";
argv[argc++] = "stdin";
/* Finally launch PPP */
@@ -124,10 +125,10 @@ static void run_ras(struct ast_channel *chan, char *args)
int status;
int res;
int signalled = 0;
- struct zt_bufferinfo savebi;
+ struct dahdi_bufferinfo savebi;
int x;
- res = ioctl(chan->fds[0], ZT_GET_BUFINFO, &savebi);
+ res = ioctl(chan->fds[0], DAHDI_GET_BUFINFO, &savebi);
if(res) {
ast_log(LOG_WARNING, "Unable to check buffer policy on channel %s\n", chan->name);
return;
@@ -163,10 +164,10 @@ static void run_ras(struct ast_channel *chan, char *args)
}
/* Throw back into audio mode */
x = 1;
- ioctl(chan->fds[0], ZT_AUDIOMODE, &x);
+ ioctl(chan->fds[0], DAHDI_AUDIOMODE, &x);
/* Restore saved values */
- res = ioctl(chan->fds[0], ZT_SET_BUFINFO, &savebi);
+ res = ioctl(chan->fds[0], DAHDI_SET_BUFINFO, &savebi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on channel %s\n", chan->name);
}
@@ -176,11 +177,11 @@ static void run_ras(struct ast_channel *chan, char *args)
ast_safe_fork_cleanup();
}
-static int zapras_exec(struct ast_channel *chan, void *data)
+static int dahdiras_exec(struct ast_channel *chan, void *data)
{
int res=-1;
char *args;
- ZT_PARAMS ztp;
+ DAHDI_PARAMS dahdip;
if (!data)
data = "";
@@ -190,16 +191,16 @@ static int zapras_exec(struct ast_channel *chan, void *data)
/* Answer the channel if it's not up */
if (chan->_state != AST_STATE_UP)
ast_answer(chan);
- if (strcasecmp(chan->tech->type, "Zap")) {
- /* If it's not a zap channel, we're done. Wait a couple of
+ if (strcasecmp(chan->tech->type, "DAHDI")) {
+ /* If it's not a DAHDI channel, we're done. Wait a couple of
seconds and then hangup... */
- ast_verb(2, "Channel %s is not a Zap channel\n", chan->name);
+ ast_verb(2, "Channel %s is not a DAHDI channel\n", chan->name);
sleep(2);
} else {
- memset(&ztp, 0, sizeof(ztp));
- if (ioctl(chan->fds[0], ZT_GET_PARAMS, &ztp)) {
- ast_log(LOG_WARNING, "Unable to get zaptel parameters\n");
- } else if (ztp.sigtype != ZT_SIG_CLEAR) {
+ memset(&dahdip, 0, sizeof(dahdip));
+ if (ioctl(chan->fds[0], DAHDI_GET_PARAMS, &dahdip)) {
+ ast_log(LOG_WARNING, "Unable to get DAHDI parameters\n");
+ } else if (dahdip.sigtype != DAHDI_SIG_CLEAR) {
ast_verb(2, "Channel %s is not a clear channel\n", chan->name);
} else {
/* Everything should be okay. Run PPP. */
@@ -211,6 +212,12 @@ static int zapras_exec(struct ast_channel *chan, void *data)
return res;
}
+static int dahdiras_exec_warn(struct ast_channel *chan, void *data)
+{
+ ast_log(LOG_WARNING, "Use of the command %s is deprecated, please use %s instead.\n", deprecated_app, app);
+ return dahdiras_exec(chan, data);
+}
+
static int unload_module(void)
{
return ast_unregister_application(app);
@@ -218,8 +225,9 @@ static int unload_module(void)
static int load_module(void)
{
- return ((ast_register_application(app, zapras_exec, synopsis, descrip)) ? AST_MODULE_LOAD_FAILURE : AST_MODULE_LOAD_SUCCESS);
+ ast_register_application(deprecated_app, dahdiras_exec_warn, synopsis, descrip);
+ return ((ast_register_application(app, dahdiras_exec, synopsis, descrip)) ? AST_MODULE_LOAD_FAILURE : AST_MODULE_LOAD_SUCCESS);
}
-AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Zaptel ISDN Remote Access Server");
+AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "DAHDI ISDN Remote Access Server");
diff --git a/apps/app_zapscan.c b/apps/app_dahdiscan.c
index 372467572..b76061395 100644
--- a/apps/app_zapscan.c
+++ b/apps/app_dahdiscan.c
@@ -23,7 +23,7 @@
/*! \file
*
- * \brief Zap Scanner
+ * \brief DAHDI Scanner
*
* \author Mark Spencer <markster@digium.com>
*
@@ -31,14 +31,14 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -50,23 +50,25 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/utils.h"
#include "asterisk/cli.h"
#include "asterisk/say.h"
+#include "asterisk/options.h"
-static char *app = "ZapScan";
+static char *app = "DAHDIScan";
+static char *deprecated_app = "ZapScan";
-static char *synopsis = "Scan Zap channels to monitor calls";
+static char *synopsis = "Scan DAHDI channels to monitor calls";
static char *descrip =
-" ZapScan([group]) allows a call center manager to monitor Zap channels in\n"
+" DAHDIScan([group]) allows a call center manager to monitor DAHDI channels in\n"
"a convenient way. Use '#' to select the next channel and use '*' to exit\n"
"Limit scanning to a channel GROUP by setting the option group argument.\n";
#define CONF_SIZE 160
-static struct ast_channel *get_zap_channel_locked(int num) {
+static struct ast_channel *get_dahdi_channel_locked(int num) {
char name[80];
- snprintf(name, sizeof(name), "Zap/%d-1", num);
+ snprintf(name, sizeof(name), "%s/%d-1", dahdi_chan_name, num);
return ast_get_channel_by_name_locked(name);
}
@@ -92,7 +94,7 @@ static int careful_write(int fd, unsigned char *data, int len)
static int conf_run(struct ast_channel *chan, int confno, int confflags)
{
int fd;
- struct zt_confinfo ztc;
+ struct dahdi_confinfo dahdic;
struct ast_frame *f;
struct ast_channel *c;
struct ast_frame fr;
@@ -101,13 +103,13 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
int nfds;
int res;
int flags;
- int retryzap;
+ int retrydahdi;
int origfd;
int ret = -1;
char input[4];
int ic = 0;
- ZT_BUFFERINFO bi;
+ DAHDI_BUFFERINFO bi;
char __buf[CONF_SIZE + AST_FRIENDLY_OFFSET];
char *buf = __buf + AST_FRIENDLY_OFFSET;
@@ -123,11 +125,11 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
goto outrun;
}
ast_indicate(chan, -1);
- retryzap = strcasecmp(chan->tech->type, "Zap");
- zapretry:
+ retrydahdi = strcasecmp(chan->tech->type, "DAHDI");
+ dahdiretry:
origfd = chan->fds[0];
- if (retryzap) {
- fd = open("/dev/zap/pseudo", O_RDWR);
+ if (retrydahdi) {
+ fd = open("/dev/dahdi/pseudo", O_RDWR);
if (fd < 0) {
ast_log(LOG_WARNING, "Unable to open pseudo channel: %s\n", strerror(errno));
goto outrun;
@@ -147,10 +149,10 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
/* Setup buffering information */
memset(&bi, 0, sizeof(bi));
bi.bufsize = CONF_SIZE;
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = 4;
- if (ioctl(fd, ZT_SET_BUFINFO, &bi)) {
+ if (ioctl(fd, DAHDI_SET_BUFINFO, &bi)) {
ast_log(LOG_WARNING, "Unable to set buffering information: %s\n", strerror(errno));
close(fd);
goto outrun;
@@ -161,34 +163,34 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
fd = chan->fds[0];
nfds = 0;
}
- memset(&ztc, 0, sizeof(ztc));
+ memset(&dahdic, 0, sizeof(dahdic));
/* Check to see if we're in a conference... */
- ztc.chan = 0;
- if (ioctl(fd, ZT_GETCONF, &ztc)) {
+ dahdic.chan = 0;
+ if (ioctl(fd, DAHDI_GETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error getting conference\n");
close(fd);
goto outrun;
}
- if (ztc.confmode) {
+ if (dahdic.confmode) {
/* Whoa, already in a conference... Retry... */
- if (!retryzap) {
- ast_debug(1, "Zap channel is in a conference already, retrying with pseudo\n");
- retryzap = 1;
- goto zapretry;
+ if (!retrydahdi) {
+ ast_debug(1, "DAHDI channel is in a conference already, retrying with pseudo\n");
+ retrydahdi = 1;
+ goto dahdiretry;
}
}
- memset(&ztc, 0, sizeof(ztc));
+ memset(&dahdic, 0, sizeof(dahdic));
/* Add us to the conference */
- ztc.chan = 0;
- ztc.confno = confno;
- ztc.confmode = ZT_CONF_MONITORBOTH;
+ dahdic.chan = 0;
+ dahdic.confno = confno;
+ dahdic.confmode = DAHDI_CONF_MONITORBOTH;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
goto outrun;
}
- ast_debug(1, "Placed channel %s in ZAP channel %d monitor\n", chan->name, confno);
+ ast_debug(1, "Placed channel %s in DAHDI channel %d monitor\n", chan->name, confno);
for (;;) {
outfd = -1;
@@ -196,13 +198,13 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
c = ast_waitfor_nandfds(&chan, 1, &fd, nfds, NULL, &outfd, &ms);
if (c) {
if (c->fds[0] != origfd) {
- if (retryzap) {
+ if (retrydahdi) {
/* Kill old pseudo */
close(fd);
}
ast_debug(1, "Ooh, something swapped out under us, starting over\n");
- retryzap = 0;
- goto zapretry;
+ retrydahdi = 0;
+ goto dahdiretry;
}
f = ast_read(c);
if (!f) {
@@ -222,7 +224,7 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
input[ic++] = '\0';
ic = 0;
ret = atoi(input);
- ast_verb(3, "Zapscan: change channel to %d\n", ret);
+ ast_verb(3, "DAHDIScan: change channel to %d\n", ret);
break;
}
}
@@ -265,10 +267,10 @@ static int conf_run(struct ast_channel *chan, int confno, int confflags)
} else {
/* Take out of conference */
/* Add us to the conference */
- ztc.chan = 0;
- ztc.confno = 0;
- ztc.confmode = 0;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ dahdic.chan = 0;
+ dahdic.confno = 0;
+ dahdic.confmode = 0;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
}
}
@@ -312,7 +314,7 @@ static int conf_exec(struct ast_channel *chan, void *data)
ast_frfree(f);
ichan = NULL;
if(input) {
- ichan = get_zap_channel_locked(input);
+ ichan = get_dahdi_channel_locked(input);
input = 0;
}
@@ -332,8 +334,8 @@ static int conf_exec(struct ast_channel *chan, void *data)
continue;
}
}
- if (tempchan && (!strcmp(tempchan->tech->type, "Zap")) && (tempchan != chan)) {
- ast_verb(3, "Zap channel %s is in-use, monitoring...\n", tempchan->name);
+ if (tempchan && (!strcmp(tempchan->tech->type, "DAHDI")) && (tempchan != chan)) {
+ ast_verb(3, "DAHDI channel %s is in-use, monitoring...\n", tempchan->name);
ast_copy_string(confstr, tempchan->name, sizeof(confstr));
ast_channel_unlock(tempchan);
if ((tmp = strchr(confstr, '-'))) {
@@ -355,6 +357,12 @@ static int conf_exec(struct ast_channel *chan, void *data)
return res;
}
+static int conf_exec_warn(struct ast_channel *chan, void *data)
+{
+ ast_log(LOG_WARNING, "Use of the command %s is deprecated, please use %s instead.\n", deprecated_app, app);
+ return conf_exec(chan, data);
+}
+
static int unload_module(void)
{
return ast_unregister_application(app);
@@ -362,8 +370,9 @@ static int unload_module(void)
static int load_module(void)
{
+ ast_register_application(deprecated_app, conf_exec_warn, synopsis, descrip);
return ((ast_register_application(app, conf_exec, synopsis, descrip)) ? AST_MODULE_LOAD_FAILURE : AST_MODULE_LOAD_SUCCESS);
}
-AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Scan Zap channels application");
+AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Scan DAHDI channels application");
diff --git a/apps/app_dial.c b/apps/app_dial.c
index d3a2aedd9..490fa3414 100644
--- a/apps/app_dial.c
+++ b/apps/app_dial.c
@@ -171,8 +171,8 @@ static char *descrip =
" o - Specify that the CallerID that was present on the *calling* channel\n"
" be set as the CallerID on the *called* channel. This was the\n"
" behavior of Asterisk 1.0 and earlier.\n"
-" O([x]) - \"Operator Services\" mode (Zaptel channel to Zaptel channel\n"
-" only, if specified on non-Zaptel interface, it will be ignored).\n"
+" O([x]) - \"Operator Services\" mode (DAHDI channel to DAHDI channel\n"
+" only, if specified on non-DAHDI interface, it will be ignored).\n"
" When the destination answers (presumably an operator services\n"
" station), the originator no longer has control of their line.\n"
" They may hang up, but the switch will not release their line\n"
@@ -1895,9 +1895,9 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
res = -1;
goto done;
}
- if (opermode && !strncmp(chan->name, "Zap", 3) && !strncmp(peer->name, "Zap", 3)) {
- /* what's this special handling for Zap <-> Zap ?
- * A: Zap to Zap calls are natively bridged at the kernel driver
+ if (opermode && !strncmp(chan->tech->type, "DAHDI", 3) && !strncmp(peer->name, "DAHDI", 3)) {
+ /* what's this special handling for dahdi <-> dahdi ?
+ * A: dahdi to dahdi calls are natively bridged at the kernel driver
* level, so we need to ensure that this mode gets propagated
* all the way down. */
struct oprmode oprmode;
diff --git a/apps/app_fax.c b/apps/app_fax.c
deleted file mode 100644
index cf98cc9a8..000000000
--- a/apps/app_fax.c
+++ /dev/null
@@ -1,741 +0,0 @@
-/*
- * Asterisk -- A telephony toolkit for Linux.
- *
- * Simple fax applications
- *
- * 2007-2008, Dmitry Andrianov <asterisk@dima.spb.ru>
- *
- * Code based on original implementation by Steve Underwood <steveu@coppice.org>
- *
- * This program is free software, distributed under the terms of
- * the GNU General Public License
- *
- */
-
-/*** MODULEINFO
- <depend>spandsp</depend>
-***/
-
-#include "asterisk.h"
-
-ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
-
-#include <string.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <inttypes.h>
-#include <pthread.h>
-#include <errno.h>
-#include <tiffio.h>
-
-#include <spandsp.h>
-
-#include "asterisk/lock.h"
-#include "asterisk/file.h"
-#include "asterisk/logger.h"
-#include "asterisk/channel.h"
-#include "asterisk/pbx.h"
-#include "asterisk/app.h"
-#include "asterisk/dsp.h"
-#include "asterisk/module.h"
-#include "asterisk/manager.h"
-
-static char *app_sndfax_name = "SendFAX";
-static char *app_sndfax_synopsis = "Send a FAX";
-static char *app_sndfax_desc =
-" SendFAX(filename[|options]):\n"
-"Send a given TIFF file to the channel as a FAX.\n"
-"The option string may contain zero or more of the following characters:\n"
-" 'a' -- makes the application behave as an answering machine\n"
-" The default behaviour is to behave as a calling machine.\n"
-"\n"
-"This application uses following variables:\n"
-" LOCALSTATIONID to identify itself to the remote end.\n"
-" LOCALHEADERINFO to generate a header line on each page.\n"
-"\n"
-"This application sets the following channel variables upon completion:\n"
-" FAXSTATUS - status of operation:\n"
-" SUCCESS | FAILED\n"
-" FAXERROR - Error when FAILED\n"
-" REMOTESTATIONID - CSID of the remote side.\n"
-" FAXPAGES - number of pages sent.\n"
-" FAXBITRATE - transmition rate.\n"
-" FAXRESOLUTION - resolution.\n"
-"\n"
-"Returns -1 in case of user hang up or any channel error.\n"
-"Returns 0 on success.\n";
-
-static char *app_rcvfax_name = "ReceiveFAX";
-static char *app_rcvfax_synopsis = "Receive a FAX";
-static char *app_rcvfax_desc =
-" ReceiveFAX(filename[|options]):\n"
-"Receives a fax from the channel into the given filename overwriting\n"
-"the file if it already exists. File created will have TIFF format.\n"
-"The option string may contain zero or more of the following characters:\n"
-" 'c' -- makes the application behave as a calling machine\n"
-" The default behaviour is to behave as an answering machine.\n"
-"\n"
-"This application uses following variables:\n"
-" LOCALSTATIONID to identify itself to the remote end.\n"
-" LOCALHEADERINFO to generate a header line on each page.\n"
-"\n"
-"This application sets the following channel variables upon completion:\n"
-" FAXSTATUS - status of operation:\n"
-" SUCCESS | FAILED\n"
-" FAXERROR - Error when FAILED\n"
-" REMOTESTATIONID - CSID of the remote side.\n"
-" FAXPAGES - number of pages sent.\n"
-" FAXBITRATE - transmition rate.\n"
-" FAXRESOLUTION - resolution.\n"
-"\n"
-"Returns -1 in case of user hang up or any channel error.\n"
-"Returns 0 on success.\n";
-
-#define MAX_SAMPLES 240
-
-/* Watchdog. I have seen situations when remote fax disconnects (because of poor line
- quality) while SpanDSP continues staying in T30_STATE_IV_CTC state forever.
- To avoid this, we terminate when we see that T30 state does not change for 5 minutes.
- We also terminate application when more than 30 minutes passed regardless of
- state changes. This is just a precaution measure - no fax should take that long */
-
-#define WATCHDOG_TOTAL_TIMEOUT 30 * 60
-#define WATCHDOG_STATE_TIMEOUT 5 * 60
-
-typedef struct {
- struct ast_channel *chan;
- enum ast_t38_state t38state; /* T38 state of the channel */
- int direction; /* Fax direction: 0 - receiving, 1 - sending */
- int caller_mode;
- char *file_name;
-
- volatile int finished;
-} fax_session;
-
-static void span_message(int level, const char *msg)
-{
- if (level == SPAN_LOG_ERROR) {
- ast_log(LOG_ERROR, "%s", msg);
- } else if (level == SPAN_LOG_WARNING) {
- ast_log(LOG_WARNING, "%s", msg);
- } else {
- ast_log(LOG_DEBUG, "%s", msg);
- }
-}
-
-static int t38_tx_packet_handler(t38_core_state_t *s, void *user_data, const uint8_t *buf, int len, int count)
-{
- struct ast_channel *chan = (struct ast_channel *) user_data;
-
- struct ast_frame outf = {
- .frametype = AST_FRAME_MODEM,
- .subclass = AST_MODEM_T38,
- .src = __FUNCTION__,
- };
-
- /* TODO: Asterisk does not provide means of resending the same packet multiple
- times so count is ignored at the moment */
-
- AST_FRAME_SET_BUFFER(&outf, buf, 0, len);
-
- if (ast_write(chan, &outf) < 0) {
- ast_log(LOG_WARNING, "Unable to write frame to channel; %s\n", strerror(errno));
- return -1;
- }
-
- return 0;
-}
-
-static void phase_e_handler(t30_state_t *f, void *user_data, int result)
-{
- const char *local_ident;
- const char *far_ident;
- char buf[20];
- fax_session *s = (fax_session *) user_data;
- t30_stats_t stat;
-
- ast_debug(1, "Fax phase E handler. result=%d\n", result);
-
- t30_get_transfer_statistics(f, &stat);
-
- s = (fax_session *) user_data;
-
- if (result != T30_ERR_OK) {
- s->finished = -1;
-
- /* FAXSTATUS is already set to FAILED */
- pbx_builtin_setvar_helper(s->chan, "FAXERROR", t30_completion_code_to_str(result));
-
- ast_log(LOG_WARNING, "Error transmitting fax. result=%d: %s.\n", result, t30_completion_code_to_str(result));
-
- return;
- }
-
- s->finished = 1;
-
- local_ident = t30_get_tx_ident(f);
- far_ident = t30_get_rx_ident(f);
- pbx_builtin_setvar_helper(s->chan, "FAXSTATUS", "SUCCESS");
- pbx_builtin_setvar_helper(s->chan, "FAXERROR", NULL);
- pbx_builtin_setvar_helper(s->chan, "REMOTESTATIONID", far_ident);
- snprintf(buf, sizeof(buf), "%d", stat.pages_transferred);
- pbx_builtin_setvar_helper(s->chan, "FAXPAGES", buf);
- snprintf(buf, sizeof(buf), "%d", stat.y_resolution);
- pbx_builtin_setvar_helper(s->chan, "FAXRESOLUTION", buf);
- snprintf(buf, sizeof(buf), "%d", stat.bit_rate);
- pbx_builtin_setvar_helper(s->chan, "FAXBITRATE", buf);
-
- ast_debug(1, "Fax transmitted successfully.\n");
- ast_debug(1, " Remote station ID: %s\n", far_ident);
- ast_debug(1, " Pages transferred: %d\n", stat.pages_transferred);
- ast_debug(1, " Image resolution: %d x %d\n", stat.x_resolution, stat.y_resolution);
- ast_debug(1, " Transfer Rate: %d\n", stat.bit_rate);
-
- manager_event(EVENT_FLAG_CALL,
- s->direction ? "FaxSent" : "FaxReceived",
- "Channel: %s\r\n"
- "Exten: %s\r\n"
- "CallerID: %s\r\n"
- "RemoteStationID: %s\r\n"
- "LocalStationID: %s\r\n"
- "PagesTransferred: %d\r\n"
- "Resolution: %d\r\n"
- "TransferRate: %d\r\n"
- "FileName: %s\r\n",
- s->chan->name,
- s->chan->exten,
- S_OR(s->chan->cid.cid_num, ""),
- far_ident,
- local_ident,
- stat.pages_transferred,
- stat.y_resolution,
- stat.bit_rate,
- s->file_name);
-}
-
-/* === Helper functions to configure fax === */
-
-/* Setup SPAN logging according to Asterisk debug level */
-static int set_logging(logging_state_t *state)
-{
- int level = SPAN_LOG_WARNING + option_debug;
-
- span_log_set_message_handler(state, span_message);
- span_log_set_level(state, SPAN_LOG_SHOW_SEVERITY | SPAN_LOG_SHOW_PROTOCOL | level);
-
- return 0;
-}
-
-static void set_local_info(t30_state_t *state, fax_session *s)
-{
- const char *x;
-
- x = pbx_builtin_getvar_helper(s->chan, "LOCALSTATIONID");
- if (!ast_strlen_zero(x))
- t30_set_tx_ident(state, x);
-
- x = pbx_builtin_getvar_helper(s->chan, "LOCALHEADERINFO");
- if (!ast_strlen_zero(x))
- t30_set_tx_page_header_info(state, x);
-}
-
-static void set_file(t30_state_t *state, fax_session *s)
-{
- if (s->direction)
- t30_set_tx_file(state, s->file_name, -1, -1);
- else
- t30_set_rx_file(state, s->file_name, -1);
-}
-
-static void set_ecm(t30_state_t *state, int ecm)
-{
- t30_set_ecm_capability(state, ecm);
- t30_set_supported_compressions(state, T30_SUPPORT_T4_1D_COMPRESSION | T30_SUPPORT_T4_2D_COMPRESSION | T30_SUPPORT_T6_COMPRESSION);
-}
-
-/* === Generator === */
-
-/* This function is only needed to return passed params so
- generator_activate will save it to channel's generatordata */
-static void *fax_generator_alloc(struct ast_channel *chan, void *params)
-{
- return params;
-}
-
-static int fax_generator_generate(struct ast_channel *chan, void *data, int len, int samples)
-{
- fax_state_t *fax = (fax_state_t*) data;
- uint8_t buffer[AST_FRIENDLY_OFFSET + MAX_SAMPLES * sizeof(uint16_t)];
- int16_t *buf = (int16_t *) (buffer + AST_FRIENDLY_OFFSET);
-
- struct ast_frame outf = {
- .frametype = AST_FRAME_VOICE,
- .subclass = AST_FORMAT_SLINEAR,
- .src = __FUNCTION__,
- };
-
- if (samples > MAX_SAMPLES) {
- ast_log(LOG_WARNING, "Only generating %d samples, where %d requested\n", MAX_SAMPLES, samples);
- samples = MAX_SAMPLES;
- }
-
- if ((len = fax_tx(fax, buf, samples)) > 0) {
- outf.samples = len;
- AST_FRAME_SET_BUFFER(&outf, buffer, AST_FRIENDLY_OFFSET, len * sizeof(int16_t));
-
- if (ast_write(chan, &outf) < 0) {
- ast_log(LOG_WARNING, "Failed to write frame to '%s': %s\n", chan->name, strerror(errno));
- return -1;
- }
- }
-
- return 0;
-}
-
-struct ast_generator generator = {
- alloc: fax_generator_alloc,
- generate: fax_generator_generate,
-};
-
-
-/* === Transmission === */
-
-static int transmit_audio(fax_session *s)
-{
- int res = -1;
- int original_read_fmt = AST_FORMAT_SLINEAR;
- int original_write_fmt = AST_FORMAT_SLINEAR;
- fax_state_t fax;
- struct ast_dsp *dsp = NULL;
- int detect_tone = 0;
- struct ast_frame *inf = NULL;
- struct ast_frame *fr;
- int last_state = 0;
- struct timeval now, start, state_change;
- enum ast_control_t38 t38control;
-
- original_read_fmt = s->chan->readformat;
- if (original_read_fmt != AST_FORMAT_SLINEAR) {
- res = ast_set_read_format(s->chan, AST_FORMAT_SLINEAR);
- if (res < 0) {
- ast_log(LOG_WARNING, "Unable to set to linear read mode, giving up\n");
- goto done;
- }
- }
-
- original_write_fmt = s->chan->writeformat;
- if (original_write_fmt != AST_FORMAT_SLINEAR) {
- res = ast_set_write_format(s->chan, AST_FORMAT_SLINEAR);
- if (res < 0) {
- ast_log(LOG_WARNING, "Unable to set to linear write mode, giving up\n");
- goto done;
- }
- }
-
- /* Initialize T30 terminal */
- fax_init(&fax, s->caller_mode);
-
- /* Setup logging */
- set_logging(&fax.logging);
- set_logging(&fax.t30_state.logging);
-
- /* Configure terminal */
- set_local_info(&fax.t30_state, s);
- set_file(&fax.t30_state, s);
- set_ecm(&fax.t30_state, TRUE);
-
- fax_set_transmit_on_idle(&fax, TRUE);
-
- t30_set_phase_e_handler(&fax.t30_state, phase_e_handler, s);
-
- if (s->t38state == T38_STATE_UNAVAILABLE) {
- ast_debug(1, "T38 is unavailable on %s\n", s->chan->name);
- } else if (!s->direction) {
- /* We are receiving side and this means we are the side which should
- request T38 when the fax is detected. Use DSP to detect fax tone */
- ast_debug(1, "Setting up CNG detection on %s\n", s->chan->name);
- dsp = ast_dsp_new();
- ast_dsp_set_features(dsp, DSP_FEATURE_FAX_DETECT);
- ast_dsp_set_faxmode(dsp, DSP_FAXMODE_DETECT_CNG);
- detect_tone = 1;
- }
-
- start = state_change = ast_tvnow();
-
- ast_activate_generator(s->chan, &generator, &fax);
-
- while (!s->finished) {
- res = ast_waitfor(s->chan, 20);
- if (res < 0)
- break;
- else if (res > 0)
- res = 0;
-
- inf = ast_read(s->chan);
- if (inf == NULL) {
- ast_debug(1, "Channel hangup\n");
- res = -1;
- break;
- }
-
- ast_debug(10, "frame %d/%d, len=%d\n", inf->frametype, inf->subclass, inf->datalen);
-
- /* Detect fax tone */
- if (detect_tone && inf->frametype == AST_FRAME_VOICE) {
- /* Duplicate frame because ast_dsp_process may free the frame passed */
- fr = ast_frdup(inf);
-
- /* Do not pass channel to ast_dsp_process otherwise it may queue modified audio frame back */
- fr = ast_dsp_process(NULL, dsp, fr);
- if (fr && fr->frametype == AST_FRAME_DTMF && fr->subclass == 'f') {
- ast_debug(1, "Fax tone detected. Requesting T38\n");
- t38control = AST_T38_REQUEST_NEGOTIATE;
- ast_indicate_data(s->chan, AST_CONTROL_T38, &t38control, sizeof(t38control));
- detect_tone = 0;
- }
-
- ast_frfree(fr);
- }
-
-
- /* Check the frame type. Format also must be checked because there is a chance
- that a frame in old format was already queued before we set chanel format
- to slinear so it will still be received by ast_read */
- if (inf->frametype == AST_FRAME_VOICE && inf->subclass == AST_FORMAT_SLINEAR) {
-
- if (fax_rx(&fax, inf->data.ptr, inf->samples) < 0) {
- /* I know fax_rx never returns errors. The check here is for good style only */
- ast_log(LOG_WARNING, "fax_rx returned error\n");
- res = -1;
- break;
- }
-
- /* Watchdog */
- if (last_state != fax.t30_state.state) {
- state_change = ast_tvnow();
- last_state = fax.t30_state.state;
- }
- } else if (inf->frametype == AST_FRAME_CONTROL && inf->subclass == AST_CONTROL_T38 &&
- inf->datalen == sizeof(enum ast_control_t38)) {
- t38control =*((enum ast_control_t38 *) inf->data.ptr);
- if (t38control == AST_T38_NEGOTIATED) {
- /* T38 switchover completed */
- ast_debug(1, "T38 negotiated, finishing audio loop\n");
- res = 1;
- break;
- }
- }
-
- ast_frfree(inf);
- inf = NULL;
-
- /* Watchdog */
- now = ast_tvnow();
- if (ast_tvdiff_sec(now, start) > WATCHDOG_TOTAL_TIMEOUT || ast_tvdiff_sec(now, state_change) > WATCHDOG_STATE_TIMEOUT) {
- ast_log(LOG_WARNING, "It looks like we hung. Aborting.\n");
- res = -1;
- break;
- }
- }
-
- ast_debug(1, "Loop finished, res=%d\n", res);
-
- if (inf)
- ast_frfree(inf);
-
- if (dsp)
- ast_dsp_free(dsp);
-
- ast_deactivate_generator(s->chan);
-
- /* Remove phase E handler because we do not want it to be executed
- only because we called t30_terminate */
- t30_set_phase_e_handler(&fax.t30_state, NULL, NULL);
-
- t30_terminate(&fax.t30_state);
- fax_release(&fax);
-
-done:
- if (original_write_fmt != AST_FORMAT_SLINEAR) {
- if (ast_set_write_format(s->chan, original_write_fmt) < 0)
- ast_log(LOG_WARNING, "Unable to restore write format on '%s'\n", s->chan->name);
- }
-
- if (original_read_fmt != AST_FORMAT_SLINEAR) {
- if (ast_set_read_format(s->chan, original_read_fmt) < 0)
- ast_log(LOG_WARNING, "Unable to restore read format on '%s'\n", s->chan->name);
- }
-
- return res;
-
-}
-
-static int transmit_t38(fax_session *s)
-{
- int res = 0;
- t38_terminal_state_t t38;
- struct ast_frame *inf = NULL;
- int last_state = 0;
- struct timeval now, start, state_change, last_frame;
- enum ast_control_t38 t38control;
-
- /* Initialize terminal */
- memset(&t38, 0, sizeof(t38));
- if (t38_terminal_init(&t38, s->caller_mode, t38_tx_packet_handler, s->chan) == NULL) {
- ast_log(LOG_WARNING, "Unable to start T.38 termination.\n");
- return -1;
- }
-
- /* Setup logging */
- set_logging(&t38.logging);
- set_logging(&t38.t30_state.logging);
- set_logging(&t38.t38.logging);
-
- /* Configure terminal */
- set_local_info(&t38.t30_state, s);
- set_file(&t38.t30_state, s);
- set_ecm(&t38.t30_state, TRUE);
-
- t30_set_phase_e_handler(&t38.t30_state, phase_e_handler, s);
-
- now = start = state_change = ast_tvnow();
-
- while (!s->finished) {
-
- res = ast_waitfor(s->chan, 20);
- if (res < 0)
- break;
- else if (res > 0)
- res = 0;
-
- last_frame = now;
- now = ast_tvnow();
- t38_terminal_send_timeout(&t38, ast_tvdiff_us(now, last_frame) / (1000000 / 8000));
-
- inf = ast_read(s->chan);
- if (inf == NULL) {
- ast_debug(1, "Channel hangup\n");
- res = -1;
- break;
- }
-
- ast_debug(10, "frame %d/%d, len=%d\n", inf->frametype, inf->subclass, inf->datalen);
-
- if (inf->frametype == AST_FRAME_MODEM && inf->subclass == AST_MODEM_T38) {
- t38_core_rx_ifp_packet(&t38.t38, inf->data.ptr, inf->datalen, inf->seqno);
-
- /* Watchdog */
- if (last_state != t38.t30_state.state) {
- state_change = ast_tvnow();
- last_state = t38.t30_state.state;
- }
- } else if (inf->frametype == AST_FRAME_CONTROL && inf->subclass == AST_CONTROL_T38 &&
- inf->datalen == sizeof(enum ast_control_t38)) {
-
- t38control = *((enum ast_control_t38 *) inf->data.ptr);
-
- if (t38control == AST_T38_TERMINATED || t38control == AST_T38_REFUSED) {
- ast_debug(1, "T38 down, terminating\n");
- res = -1;
- break;
- }
- }
-
- ast_frfree(inf);
- inf = NULL;
-
- /* Watchdog */
- if (ast_tvdiff_sec(now, start) > WATCHDOG_TOTAL_TIMEOUT || ast_tvdiff_sec(now, state_change) > WATCHDOG_STATE_TIMEOUT) {
- ast_log(LOG_WARNING, "It looks like we hung. Aborting.\n");
- res = -1;
- break;
- }
- }
-
- ast_debug(1, "Loop finished, res=%d\n", res);
-
- if (inf)
- ast_frfree(inf);
-
- /* Remove phase E handler because we do not want it to be executed
- only because we called t30_terminate */
- t30_set_phase_e_handler(&t38.t30_state, NULL, NULL);
-
- t30_terminate(&t38.t30_state);
-
- return res;
-}
-
-static int transmit(fax_session *s)
-{
- int res = 0;
-
- /* Clear all channel variables which to be set by the application.
- Pre-set status to error so in case of any problems we can just leave */
- pbx_builtin_setvar_helper(s->chan, "FAXSTATUS", "FAILED");
- pbx_builtin_setvar_helper(s->chan, "FAXERROR", "Channel problems");
-
- pbx_builtin_setvar_helper(s->chan, "REMOTESTATIONID", NULL);
- pbx_builtin_setvar_helper(s->chan, "FAXPAGES", NULL);
- pbx_builtin_setvar_helper(s->chan, "FAXRESOLUTION", NULL);
- pbx_builtin_setvar_helper(s->chan, "FAXBITRATE", NULL);
-
- if (s->chan->_state != AST_STATE_UP) {
- /* Shouldn't need this, but checking to see if channel is already answered
- * Theoretically asterisk should already have answered before running the app */
- res = ast_answer(s->chan);
- if (res) {
- ast_log(LOG_WARNING, "Could not answer channel '%s'\n", s->chan->name);
- return res;
- }
- }
-
- s->t38state = ast_channel_get_t38_state(s->chan);
- if (s->t38state != T38_STATE_NEGOTIATED) {
- /* T38 is not negotiated on the channel yet. First start regular transmission. If it switches to T38, follow */
- res = transmit_audio(s);
- if (res > 0) {
- /* transmit_audio reports switchover to T38. Update t38state */
- s->t38state = ast_channel_get_t38_state(s->chan);
- if (s->t38state != T38_STATE_NEGOTIATED) {
- ast_log(LOG_ERROR, "Audio loop reports T38 switchover but t38state != T38_STATE_NEGOTIATED\n");
- }
- }
- }
-
- if (s->t38state == T38_STATE_NEGOTIATED) {
- res = transmit_t38(s);
- }
-
- if (res) {
- ast_log(LOG_WARNING, "Transmission error\n");
- res = -1;
- } else if (s->finished < 0) {
- ast_log(LOG_WARNING, "Transmission failed\n");
- } else if (s->finished > 0) {
- ast_debug(1, "Transmission finished Ok\n");
- }
-
- return res;
-}
-
-/* === Application functions === */
-
-static int sndfax_exec(struct ast_channel *chan, void *data)
-{
- int res = 0;
- char *parse;
- fax_session session;
-
- AST_DECLARE_APP_ARGS(args,
- AST_APP_ARG(file_name);
- AST_APP_ARG(options);
- );
-
- if (chan == NULL) {
- ast_log(LOG_ERROR, "Fax channel is NULL. Giving up.\n");
- return -1;
- }
-
- /* The next few lines of code parse out the filename and header from the input string */
- if (ast_strlen_zero(data)) {
- /* No data implies no filename or anything is present */
- ast_log(LOG_ERROR, "SendFAX requires an argument (filename)\n");
- return -1;
- }
-
- parse = ast_strdupa(data);
- AST_STANDARD_APP_ARGS(args, parse);
-
- session.caller_mode = TRUE;
-
- if (args.options) {
- if (strchr(args.options, 'a'))
- session.caller_mode = FALSE;
- }
-
- /* Done parsing */
- session.direction = 1;
- session.file_name = args.file_name;
- session.chan = chan;
- session.finished = 0;
-
- res = transmit(&session);
-
- return res;
-}
-
-static int rcvfax_exec(struct ast_channel *chan, void *data)
-{
- int res = 0;
- char *parse;
- fax_session session;
-
- AST_DECLARE_APP_ARGS(args,
- AST_APP_ARG(file_name);
- AST_APP_ARG(options);
- );
-
- if (chan == NULL) {
- ast_log(LOG_ERROR, "Fax channel is NULL. Giving up.\n");
- return -1;
- }
-
- /* The next few lines of code parse out the filename and header from the input string */
- if (ast_strlen_zero(data)) {
- /* No data implies no filename or anything is present */
- ast_log(LOG_ERROR, "ReceiveFAX requires an argument (filename)\n");
- return -1;
- }
-
- parse = ast_strdupa(data);
- AST_STANDARD_APP_ARGS(args, parse);
-
- session.caller_mode = FALSE;
-
- if (args.options) {
- if (strchr(args.options, 'c'))
- session.caller_mode = TRUE;
- }
-
- /* Done parsing */
- session.direction = 0;
- session.file_name = args.file_name;
- session.chan = chan;
- session.finished = 0;
-
- res = transmit(&session);
-
- return res;
-}
-
-static int unload_module(void)
-{
- int res;
-
- res = ast_unregister_application(app_sndfax_name);
- res |= ast_unregister_application(app_rcvfax_name);
-
- return res;
-}
-
-static int load_module(void)
-{
- int res ;
-
- res = ast_register_application(app_sndfax_name, sndfax_exec, app_sndfax_synopsis, app_sndfax_desc);
- res |= ast_register_application(app_rcvfax_name, rcvfax_exec, app_rcvfax_synopsis, app_rcvfax_desc);
-
- /* The default SPAN message handler prints to stderr. It is something we do not want */
- span_set_message_handler(NULL);
-
- return res;
-}
-
-
-AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Simple FAX Application",
- .load = load_module,
- .unload = unload_module,
- );
-
-
diff --git a/apps/app_flash.c b/apps/app_flash.c
index d57feeb91..dd13f414f 100644
--- a/apps/app_flash.c
+++ b/apps/app_flash.c
@@ -18,7 +18,7 @@
/*! \file
*
- * \brief App to flash a zap trunk
+ * \brief App to flash a DAHDI trunk
*
* \author Mark Spencer <markster@digium.com>
*
@@ -26,14 +26,14 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -45,22 +45,22 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
static char *app = "Flash";
-static char *synopsis = "Flashes a Zap Trunk";
+static char *synopsis = "Flashes a DAHDI Trunk";
static char *descrip =
-"Performs a flash on a zap trunk. This can be used\n"
+"Performs a flash on a DAHDI trunk. This can be used\n"
"to access features provided on an incoming analogue circuit\n"
"such as conference and call waiting. Use with SendDTMF() to\n"
"perform external transfers\n";
-static inline int zt_wait_event(int fd)
+static inline int dahdi_wait_event(int fd)
{
- /* Avoid the silly zt_waitevent which ignores a bunch of events */
+ /* Avoid the silly dahdi_waitevent which ignores a bunch of events */
int i,j=0;
- i = ZT_IOMUX_SIGEVENT;
- if (ioctl(fd, ZT_IOMUX, &i) == -1) return -1;
- if (ioctl(fd, ZT_GETEVENT, &j) == -1) return -1;
+ i = DAHDI_IOMUX_SIGEVENT;
+ if (ioctl(fd, DAHDI_IOMUX, &i) == -1) return -1;
+ if (ioctl(fd, DAHDI_GETEVENT, &j) == -1) return -1;
return j;
}
@@ -68,23 +68,23 @@ static int flash_exec(struct ast_channel *chan, void *data)
{
int res = -1;
int x;
- struct zt_params ztp;
+ struct dahdi_params dahdip;
- if (strcasecmp(chan->tech->type, "Zap")) {
- ast_log(LOG_WARNING, "%s is not a Zap channel\n", chan->name);
+ if (strcasecmp(chan->tech->type, "DAHDI")) {
+ ast_log(LOG_WARNING, "%s is not a DAHDI channel\n", chan->name);
return -1;
}
- memset(&ztp, 0, sizeof(ztp));
- res = ioctl(chan->fds[0], ZT_GET_PARAMS, &ztp);
+ memset(&dahdip, 0, sizeof(dahdip));
+ res = ioctl(chan->fds[0], DAHDI_GET_PARAMS, &dahdip);
if (!res) {
- if (ztp.sigtype & __ZT_SIG_FXS) {
- x = ZT_FLASH;
- res = ioctl(chan->fds[0], ZT_HOOK, &x);
+ if (dahdip.sigtype & __DAHDI_SIG_FXS) {
+ x = DAHDI_FLASH;
+ res = ioctl(chan->fds[0], DAHDI_HOOK, &x);
if (!res || (errno == EINPROGRESS)) {
if (res) {
/* Wait for the event to finish */
- zt_wait_event(chan->fds[0]);
+ dahdi_wait_event(chan->fds[0]);
}
res = ast_safe_sleep(chan, 1000);
ast_verb(3, "Flashed channel %s\n", chan->name);
diff --git a/apps/app_getcpeid.c b/apps/app_getcpeid.c
index 1bab819b7..6ff051899 100644
--- a/apps/app_getcpeid.c
+++ b/apps/app_getcpeid.c
@@ -42,7 +42,7 @@ static char *synopsis = "Get ADSI CPE ID";
static char *descrip =
" GetCPEID(): Obtains and displays ADSI CPE ID and other information in order\n"
-"to properly setup zapata.conf for on-hook operations.\n";
+"to properly setup dahdi.conf for on-hook operations.\n";
static int cpeid_setstatus(struct ast_channel *chan, char *stuff[], int voice)
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index 8b017ffda..fc0a08ae0 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -30,14 +30,14 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -228,15 +228,15 @@ static const char *descrip =
"conference. If the conference number is omitted, the user will be prompted\n"
"to enter one. User can exit the conference by hangup, or if the 'p' option\n"
"is specified, by pressing '#'.\n"
-"Please note: The Zaptel kernel modules and at least one hardware driver (or ztdummy)\n"
-" must be present for conferencing to operate properly. In addition, the chan_zap\n"
+"Please note: The DAHDI kernel modules and at least one hardware driver (or dahdi_dummy)\n"
+" must be present for conferencing to operate properly. In addition, the chan_dahdi\n"
" channel driver must be loaded for the 'i' and 'r' options to operate at all.\n\n"
"The option string may contain zero or more of the following characters:\n"
" 'a' -- set admin mode\n"
" 'A' -- set marked mode\n"
" 'b' -- run AGI script specified in ${MEETME_AGI_BACKGROUND}\n"
" Default: conf-background.agi (Note: This does not work with\n"
-" non-Zap channels in the same conference)\n"
+" non-DAHDI channels in the same conference)\n"
" 'c' -- announce user(s) count on joining a conference\n"
" 'C' -- continue in dialplan when kicked out of conference\n"
" 'd' -- dynamically add conference\n"
@@ -361,7 +361,7 @@ struct ast_conference {
struct ast_channel *chan; /*!< Announcements channel */
struct ast_channel *lchan; /*!< Listen/Record channel */
int fd; /*!< Announcements fd */
- int zapconf; /*!< Zaptel Conf # */
+ int dahdiconf; /*!< DAHDI Conf # */
int users; /*!< Number of active users */
int markedusers; /*!< Number of marked users */
int maxusers; /*!< Participant limit if scheduled */
@@ -403,7 +403,7 @@ struct ast_conf_user {
int adminflags; /*!< Flags set by the Admin */
struct ast_channel *chan; /*!< Connected channel */
int talking; /*!< Is user talking */
- int zapchannel; /*!< Is a Zaptel channel */
+ int dahdichannel; /*!< Is a DAHDI channel */
char usrvalue[50]; /*!< Custom User Value */
char namerecloc[PATH_MAX]; /*!< Name Recorded file Location */
time_t jointime; /*!< Time the user joined the conference */
@@ -639,8 +639,8 @@ static int careful_write(int fd, unsigned char *data, int len, int block)
while (len) {
if (block) {
- x = ZT_IOMUX_WRITE | ZT_IOMUX_SIGEVENT;
- res = ioctl(fd, ZT_IOMUX, &x);
+ x = DAHDI_IOMUX_WRITE | DAHDI_IOMUX_SIGEVENT;
+ res = ioctl(fd, DAHDI_IOMUX, &x);
} else
res = 0;
if (res >= 0)
@@ -801,7 +801,7 @@ static void conf_play(struct ast_channel *chan, struct ast_conference *conf, enu
static struct ast_conference *build_conf(char *confno, char *pin, char *pinadmin, int make, int dynamic, int refcount, const struct ast_channel *chan)
{
struct ast_conference *cnf;
- struct zt_confinfo ztc = { 0, };
+ struct dahdi_confinfo dahdic = { 0, };
int confno_int = 0;
AST_LIST_LOCK(&confs);
@@ -827,11 +827,11 @@ static struct ast_conference *build_conf(char *confno, char *pin, char *pinadmin
ast_copy_string(cnf->pinadmin, pinadmin, sizeof(cnf->pinadmin));
ast_copy_string(cnf->uniqueid, chan->uniqueid, sizeof(cnf->uniqueid));
- /* Setup a new zap conference */
- ztc.confno = -1;
- ztc.confmode = ZT_CONF_CONFANN | ZT_CONF_CONFANNMON;
- cnf->fd = open("/dev/zap/pseudo", O_RDWR);
- if (cnf->fd < 0 || ioctl(cnf->fd, ZT_SETCONF, &ztc)) {
+ /* Setup a new dahdi conference */
+ dahdic.confno = -1;
+ dahdic.confmode = DAHDI_CONF_CONFANN | DAHDI_CONF_CONFANNMON;
+ cnf->fd = open("/dev/dahdi/pseudo", O_RDWR);
+ if (cnf->fd < 0 || ioctl(cnf->fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Unable to open pseudo device\n");
if (cnf->fd >= 0)
close(cnf->fd);
@@ -840,17 +840,17 @@ static struct ast_conference *build_conf(char *confno, char *pin, char *pinadmin
goto cnfout;
}
- cnf->zapconf = ztc.confno;
+ cnf->dahdiconf = dahdic.confno;
/* Setup a new channel for playback of audio files */
- cnf->chan = ast_request("zap", AST_FORMAT_SLINEAR, "pseudo", NULL);
+ cnf->chan = ast_request("DAHDI", AST_FORMAT_SLINEAR, "pseudo", NULL);
if (cnf->chan) {
ast_set_read_format(cnf->chan, AST_FORMAT_SLINEAR);
ast_set_write_format(cnf->chan, AST_FORMAT_SLINEAR);
- ztc.chan = 0;
- ztc.confno = cnf->zapconf;
- ztc.confmode = ZT_CONF_CONFANN | ZT_CONF_CONFANNMON;
- if (ioctl(cnf->chan->fds[0], ZT_SETCONF, &ztc)) {
+ dahdic.chan = 0;
+ dahdic.confno = cnf->dahdiconf;
+ dahdic.confmode = DAHDI_CONF_CONFANN | DAHDI_CONF_CONFANNMON;
+ if (ioctl(cnf->chan->fds[0], DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
if (cnf->chan)
ast_hangup(cnf->chan);
@@ -867,7 +867,7 @@ static struct ast_conference *build_conf(char *confno, char *pin, char *pinadmin
cnf->start = time(NULL);
cnf->maxusers = 0x7fffffff;
cnf->isdynamic = dynamic ? 1 : 0;
- ast_verb(3, "Created MeetMe conference %d for conference '%s'\n", cnf->zapconf, cnf->confno);
+ ast_verb(3, "Created MeetMe conference %d for conference '%s'\n", cnf->dahdiconf, cnf->confno);
AST_LIST_INSERT_HEAD(&confs, cnf, list);
/* Reserve conference number in map */
@@ -1309,8 +1309,8 @@ static void conf_flush(int fd, struct ast_channel *chan)
}
/* flush any data sitting in the pseudo channel */
- x = ZT_FLUSH_ALL;
- if (ioctl(fd, ZT_FLUSH, &x))
+ x = DAHDI_FLUSH_ALL;
+ if (ioctl(fd, DAHDI_FLUSH, &x))
ast_log(LOG_WARNING, "Error flushing channel\n");
}
@@ -1484,7 +1484,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
struct ast_conf_user *user = NULL;
struct ast_conf_user *usr = NULL;
int fd;
- struct zt_confinfo ztc, ztc_empty;
+ struct dahdi_confinfo dahdic, dahdic_empty;
struct ast_frame *f;
struct ast_channel *c;
struct ast_frame fr;
@@ -1493,7 +1493,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
int nfds;
int res;
int flags;
- int retryzap;
+ int retrydahdi;
int origfd;
int musiconhold = 0;
int firstpass = 0;
@@ -1520,7 +1520,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
char members[10] = "";
int dtmf, opt_waitmarked_timeout = 0;
time_t timeout = 0;
- ZT_BUFFERINFO bi;
+ DAHDI_BUFFERINFO bi;
char __buf[CONF_SIZE + AST_FRIENDLY_OFFSET];
char *buf = __buf + AST_FRIENDLY_OFFSET;
char *exitkeys = NULL;
@@ -1645,13 +1645,13 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
}
ast_mutex_lock(&conf->recordthreadlock);
- if ((conf->recordthread == AST_PTHREADT_NULL) && (confflags & CONFFLAG_RECORDCONF) && ((conf->lchan = ast_request("zap", AST_FORMAT_SLINEAR, "pseudo", NULL)))) {
+ if ((conf->recordthread == AST_PTHREADT_NULL) && (confflags & CONFFLAG_RECORDCONF) && ((conf->lchan = ast_request("DAHDI", AST_FORMAT_SLINEAR, "pseudo", NULL)))) {
ast_set_read_format(conf->lchan, AST_FORMAT_SLINEAR);
ast_set_write_format(conf->lchan, AST_FORMAT_SLINEAR);
- ztc.chan = 0;
- ztc.confno = conf->zapconf;
- ztc.confmode = ZT_CONF_CONFANN | ZT_CONF_CONFANNMON;
- if (ioctl(conf->lchan->fds[0], ZT_SETCONF, &ztc)) {
+ dahdic.chan = 0;
+ dahdic.confno = conf->dahdiconf;
+ dahdic.confmode = DAHDI_CONF_CONFANN | DAHDI_CONF_CONFANNMON;
+ if (ioctl(conf->lchan->fds[0], DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error starting listen channel\n");
ast_hangup(conf->lchan);
conf->lchan = NULL;
@@ -1832,13 +1832,13 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
goto outrun;
}
- retryzap = (strcasecmp(chan->tech->type, "Zap") || (chan->audiohooks || chan->monitor) ? 1 : 0);
- user->zapchannel = !retryzap;
+ retrydahdi = (strcasecmp(chan->tech->type, "DAHDI") || (chan->audiohooks || chan->monitor) ? 1 : 0);
+ user->dahdichannel = !retrydahdi;
- zapretry:
+ dahdiretry:
origfd = chan->fds[0];
- if (retryzap) {
- fd = open("/dev/zap/pseudo", O_RDWR);
+ if (retrydahdi) {
+ fd = open("/dev/dahdi/pseudo", O_RDWR);
if (fd < 0) {
ast_log(LOG_WARNING, "Unable to open pseudo channel: %s\n", strerror(errno));
goto outrun;
@@ -1859,16 +1859,16 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
/* Setup buffering information */
memset(&bi, 0, sizeof(bi));
bi.bufsize = CONF_SIZE / 2;
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = audio_buffers;
- if (ioctl(fd, ZT_SET_BUFINFO, &bi)) {
+ if (ioctl(fd, DAHDI_SET_BUFINFO, &bi)) {
ast_log(LOG_WARNING, "Unable to set buffering information: %s\n", strerror(errno));
close(fd);
goto outrun;
}
x = 1;
- if (ioctl(fd, ZT_SETLINEAR, &x)) {
+ if (ioctl(fd, DAHDI_SETLINEAR, &x)) {
ast_log(LOG_WARNING, "Unable to set linear mode: %s\n", strerror(errno));
close(fd);
goto outrun;
@@ -1879,27 +1879,27 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
fd = chan->fds[0];
nfds = 0;
}
- memset(&ztc, 0, sizeof(ztc));
- memset(&ztc_empty, 0, sizeof(ztc_empty));
+ memset(&dahdic, 0, sizeof(dahdic));
+ memset(&dahdic_empty, 0, sizeof(dahdic_empty));
/* Check to see if we're in a conference... */
- ztc.chan = 0;
- if (ioctl(fd, ZT_GETCONF, &ztc)) {
+ dahdic.chan = 0;
+ if (ioctl(fd, DAHDI_GETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error getting conference\n");
close(fd);
goto outrun;
}
- if (ztc.confmode) {
+ if (dahdic.confmode) {
/* Whoa, already in a conference... Retry... */
- if (!retryzap) {
- ast_debug(1, "Zap channel is in a conference already, retrying with pseudo\n");
- retryzap = 1;
- goto zapretry;
+ if (!retrydahdi) {
+ ast_debug(1, "DAHDI channel is in a conference already, retrying with pseudo\n");
+ retrydahdi = 1;
+ goto dahdiretry;
}
}
- memset(&ztc, 0, sizeof(ztc));
+ memset(&dahdic, 0, sizeof(dahdic));
/* Add us to the conference */
- ztc.chan = 0;
- ztc.confno = conf->zapconf;
+ dahdic.chan = 0;
+ dahdic.confno = conf->dahdiconf;
ast_mutex_lock(&conf->playlock);
@@ -1913,21 +1913,21 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
}
if (confflags & CONFFLAG_WAITMARKED && !conf->markedusers)
- ztc.confmode = ZT_CONF_CONF;
+ dahdic.confmode = DAHDI_CONF_CONF;
else if (confflags & CONFFLAG_MONITOR)
- ztc.confmode = ZT_CONF_CONFMON | ZT_CONF_LISTENER;
+ dahdic.confmode = DAHDI_CONF_CONFMON | DAHDI_CONF_LISTENER;
else if (confflags & CONFFLAG_TALKER)
- ztc.confmode = ZT_CONF_CONF | ZT_CONF_TALKER;
+ dahdic.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER;
else
- ztc.confmode = ZT_CONF_CONF | ZT_CONF_TALKER | ZT_CONF_LISTENER;
+ dahdic.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
ast_mutex_unlock(&conf->playlock);
goto outrun;
}
- ast_debug(1, "Placed channel %s in ZAP conf %d\n", chan->name, conf->zapconf);
+ ast_debug(1, "Placed channel %s in ZAP conf %d\n", chan->name, conf->dahdiconf);
if (!sent_event) {
manager_event(EVENT_FLAG_CALL, "MeetmeJoin",
@@ -1968,8 +1968,8 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
}
ast_channel_unlock(chan);
- if (user->zapchannel) {
- /* Set CONFMUTE mode on Zap channel to mute DTMF tones */
+ if (user->dahdichannel) {
+ /* Set CONFMUTE mode on DAHDI channel to mute DTMF tones */
x = 1;
ast_channel_setoption(chan, AST_OPTION_TONE_VERIFY, &x, sizeof(char), 0);
}
@@ -1981,14 +1981,14 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
ast_log(LOG_WARNING, "Could not find application (agi)\n");
ret = -2;
}
- if (user->zapchannel) {
- /* Remove CONFMUTE mode on Zap channel */
+ if (user->dahdichannel) {
+ /* Remove CONFMUTE mode on DAHDI channel */
x = 0;
ast_channel_setoption(chan, AST_OPTION_TONE_VERIFY, &x, sizeof(char), 0);
}
} else {
- if (user->zapchannel && (confflags & CONFFLAG_STARMENU)) {
- /* Set CONFMUTE mode on Zap channel to mute DTMF tones when the menu is enabled */
+ if (user->dahdichannel && (confflags & CONFFLAG_STARMENU)) {
+ /* Set CONFMUTE mode on DAHDI channel to mute DTMF tones when the menu is enabled */
x = 1;
ast_channel_setoption(chan, AST_OPTION_TONE_VERIFY, &x, sizeof(char), 0);
}
@@ -2139,8 +2139,8 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
ret = 0;
break;
} else {
- ztc.confmode = ZT_CONF_CONF;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ dahdic.confmode = DAHDI_CONF_CONF;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
goto outrun;
@@ -2155,12 +2155,12 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
/* Marked user entered, so cancel timeout */
timeout = 0;
if (confflags & CONFFLAG_MONITOR)
- ztc.confmode = ZT_CONF_CONFMON | ZT_CONF_LISTENER;
+ dahdic.confmode = DAHDI_CONF_CONFMON | DAHDI_CONF_LISTENER;
else if (confflags & CONFFLAG_TALKER)
- ztc.confmode = ZT_CONF_CONF | ZT_CONF_TALKER;
+ dahdic.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER;
else
- ztc.confmode = ZT_CONF_CONF | ZT_CONF_TALKER | ZT_CONF_LISTENER;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ dahdic.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
goto outrun;
@@ -2204,9 +2204,9 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
/* Check if my modes have changed */
/* If I should be muted but am still talker, mute me */
- if ((user->adminflags & (ADMINFLAG_MUTED | ADMINFLAG_SELFMUTED)) && (ztc.confmode & ZT_CONF_TALKER)) {
- ztc.confmode ^= ZT_CONF_TALKER;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if ((user->adminflags & (ADMINFLAG_MUTED | ADMINFLAG_SELFMUTED)) && (dahdic.confmode & DAHDI_CONF_TALKER)) {
+ dahdic.confmode ^= DAHDI_CONF_TALKER;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference - Un/Mute \n");
ret = -1;
break;
@@ -2222,9 +2222,9 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
}
/* If I should be un-muted but am not talker, un-mute me */
- if (!(user->adminflags & (ADMINFLAG_MUTED | ADMINFLAG_SELFMUTED)) && !(confflags & CONFFLAG_MONITOR) && !(ztc.confmode & ZT_CONF_TALKER)) {
- ztc.confmode |= ZT_CONF_TALKER;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if (!(user->adminflags & (ADMINFLAG_MUTED | ADMINFLAG_SELFMUTED)) && !(confflags & CONFFLAG_MONITOR) && !(dahdic.confmode & DAHDI_CONF_TALKER)) {
+ dahdic.confmode |= DAHDI_CONF_TALKER;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference - Un/Mute \n");
ret = -1;
break;
@@ -2283,16 +2283,16 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
if (c) {
char dtmfstr[2] = "";
- if (c->fds[0] != origfd || (user->zapchannel && (c->audiohooks || c->monitor))) {
+ if (c->fds[0] != origfd || (user->dahdichannel && (c->audiohooks || c->monitor))) {
if (using_pseudo) {
/* Kill old pseudo */
close(fd);
using_pseudo = 0;
}
ast_debug(1, "Ooh, something swapped out under us, starting over\n");
- retryzap = (strcasecmp(c->tech->type, "Zap") || (c->audiohooks || c->monitor) ? 1 : 0);
- user->zapchannel = !retryzap;
- goto zapretry;
+ retrydahdi = (strcasecmp(c->tech->type, "DAHDI") || (c->audiohooks || c->monitor) ? 1 : 0);
+ user->dahdichannel = !retrydahdi;
+ goto dahdiretry;
}
if ((confflags & CONFFLAG_MONITOR) || (user->adminflags & (ADMINFLAG_MUTED | ADMINFLAG_SELFMUTED)))
f = ast_read_noaudio(c);
@@ -2358,7 +2358,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
} else if (((f->frametype == AST_FRAME_DTMF) && (f->subclass == '*') && (confflags & CONFFLAG_STARMENU)) || ((f->frametype == AST_FRAME_DTMF) && menu_active)) {
if (confflags & CONFFLAG_PASS_DTMF)
conf_queue_dtmf(conf, user, f);
- if (ioctl(fd, ZT_SETCONF, &ztc_empty)) {
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic_empty)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
ast_frfree(f);
@@ -2513,7 +2513,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
if (musiconhold)
conf_start_moh(chan, optargs[OPT_ARG_MOH_CLASS]);
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
close(fd);
ast_frfree(f);
@@ -2625,10 +2625,10 @@ bailoutandtrynormal:
close(fd);
else {
/* Take out of conference */
- ztc.chan = 0;
- ztc.confno = 0;
- ztc.confmode = 0;
- if (ioctl(fd, ZT_SETCONF, &ztc)) {
+ dahdic.chan = 0;
+ dahdic.confno = 0;
+ dahdic.confmode = 0;
+ if (ioctl(fd, DAHDI_SETCONF, &dahdic)) {
ast_log(LOG_WARNING, "Error setting conference\n");
}
}
@@ -2834,13 +2834,13 @@ static struct ast_conference *find_conf_realtime(struct ast_channel *chan, char
if (confflags && !cnf->chan &&
!ast_test_flag(confflags, CONFFLAG_QUIET) &&
ast_test_flag(confflags, CONFFLAG_INTROUSER)) {
- ast_log(LOG_WARNING, "No Zap channel available for conference, user introduction disabled (is chan_zap loaded?)\n");
+ ast_log(LOG_WARNING, "No DAHDI channel available for conference, user introduction disabled (is chan_dahdi loaded?)\n");
ast_clear_flag(confflags, CONFFLAG_INTROUSER);
}
if (confflags && !cnf->chan &&
ast_test_flag(confflags, CONFFLAG_RECORDCONF)) {
- ast_log(LOG_WARNING, "No Zap channel available for conference, conference recording disabled (is chan_zap loaded?)\n");
+ ast_log(LOG_WARNING, "No DAHDI channel available for conference, conference recording disabled (is chan_dahdi loaded?)\n");
ast_clear_flag(confflags, CONFFLAG_RECORDCONF);
}
}
@@ -2932,13 +2932,13 @@ static struct ast_conference *find_conf(struct ast_channel *chan, char *confno,
if (confflags && !cnf->chan &&
!ast_test_flag(confflags, CONFFLAG_QUIET) &&
ast_test_flag(confflags, CONFFLAG_INTROUSER)) {
- ast_log(LOG_WARNING, "No Zap channel available for conference, user introduction disabled (is chan_zap loaded?)\n");
+ ast_log(LOG_WARNING, "No DAHDI channel available for conference, user introduction disabled (is chan_dahdi loaded?)\n");
ast_clear_flag(confflags, CONFFLAG_INTROUSER);
}
if (confflags && !cnf->chan &&
ast_test_flag(confflags, CONFFLAG_RECORDCONF)) {
- ast_log(LOG_WARNING, "No Zap channel available for conference, conference recording disabled (is chan_zap loaded?)\n");
+ ast_log(LOG_WARNING, "No DAHDI channel available for conference, conference recording disabled (is chan_dahdi loaded?)\n");
ast_clear_flag(confflags, CONFFLAG_RECORDCONF);
}
}
@@ -3722,9 +3722,9 @@ static void load_config_meetme(void)
if ((sscanf(val, "%d", &audio_buffers) != 1)) {
ast_log(LOG_WARNING, "audiobuffers setting must be a number, not '%s'\n", val);
audio_buffers = DEFAULT_AUDIO_BUFFERS;
- } else if ((audio_buffers < ZT_DEFAULT_NUM_BUFS) || (audio_buffers > ZT_MAX_NUM_BUFS)) {
+ } else if ((audio_buffers < DAHDI_DEFAULT_NUM_BUFS) || (audio_buffers > DAHDI_MAX_NUM_BUFS)) {
ast_log(LOG_WARNING, "audiobuffers setting must be between %d and %d\n",
- ZT_DEFAULT_NUM_BUFS, ZT_MAX_NUM_BUFS);
+ DAHDI_DEFAULT_NUM_BUFS, DAHDI_MAX_NUM_BUFS);
audio_buffers = DEFAULT_AUDIO_BUFFERS;
}
if (audio_buffers != DEFAULT_AUDIO_BUFFERS)
diff --git a/apps/app_page.c b/apps/app_page.c
index 5db858ce9..9f94b491d 100644
--- a/apps/app_page.c
+++ b/apps/app_page.c
@@ -26,7 +26,7 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
<depend>app_meetme</depend>
***/
diff --git a/apps/app_queue.c b/apps/app_queue.c
index fef86f318..d8471a1a1 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -529,7 +529,6 @@ static struct ao2_container *queues;
static void update_realtime_members(struct call_queue *q);
static int set_member_paused(const char *queuename, const char *interface, const char *reason, int paused);
-static void queue_transfer_fixup(void *data, struct ast_channel *old_chan, struct ast_channel *new_chan);
/*! \brief sets the QUEUESTATUS channel variable */
static void set_queue_result(struct ast_channel *chan, enum queue_result res)
{
@@ -3043,82 +3042,6 @@ static void send_agent_complete(const struct queue_ent *qe, const char *queuenam
qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, vars_len) : "");
}
-struct queue_transfer_ds {
- struct queue_ent *qe;
- struct member *member;
- int starttime;
-};
-
-/*! \brief a datastore used to help correctly log attended transfers of queue callers
- */
-static const struct ast_datastore_info queue_transfer_info = {
- .type = "queue_transfer",
- .chan_fixup = queue_transfer_fixup,
-};
-
-/*! \brief Log an attended transfer when a queue caller channel is masqueraded
- *
- * When a caller is masqueraded, we want to log a transfer. Fixup time is the closest we can come to when
- * the actual transfer occurs. This happens during the masquerade after datastores are moved from old_chan
- * to new_chan. This is why new_chan is referenced for exten, context, and datastore information.
- *
- * At the end of this, we want to remove the datastore so that this fixup function is not called on any
- * future masquerades of the caller during the current call.
- */
-static void queue_transfer_fixup(void *data, struct ast_channel *old_chan, struct ast_channel *new_chan)
-{
- struct queue_transfer_ds *qtds = data;
- struct queue_ent *qe = qtds->qe;
- struct member *member = qtds->member;
- int callstart = qtds->starttime;
- struct ast_datastore *datastore;
-
- ast_queue_log(qe->parent->name, qe->chan->uniqueid, member->membername, "TRANSFER", "%s|%s|%ld|%ld",
- new_chan->exten, new_chan->context, (long) (callstart - qe->start),
- (long) (time(NULL) - callstart));
-
- if (!(datastore = ast_channel_datastore_find(new_chan, &queue_transfer_info, NULL))) {
- ast_log(LOG_WARNING, "Can't find the queue_transfer datastore.\n");
- return;
- }
-
- ast_channel_datastore_remove(new_chan, datastore);
-}
-
-/*! \brief mechanism to tell if a queue caller was atxferred by a queue member.
- *
- * When a caller is atxferred, then the queue_transfer_info datastore
- * is removed from the channel. If it's still there after the bridge is
- * broken, then the caller was not atxferred.
- */
-static int attended_transfer_occurred(struct ast_channel *chan)
-{
- return ast_channel_datastore_find(chan, &queue_transfer_info, NULL) ? 0 : 1;
-}
-
-/*! \brief create a datastore for storing relevant info to log attended transfers in the queue_log
- */
-static void setup_transfer_datastore(struct queue_ent *qe, struct member *member, int starttime)
-{
- struct ast_datastore *ds;
- struct queue_transfer_ds qtds;
-
- ast_channel_lock(qe->chan);
- if (!(ds = ast_channel_datastore_alloc(&queue_transfer_info, NULL))) {
- ast_channel_unlock(qe->chan);
- ast_log(LOG_WARNING, "Unable to create transfer datastore. queue_log will not show attended transfer\n");
- return;
- }
-
- qtds.qe = qe;
- /* This member is refcounted in try_calling, so no need to add it here, too */
- qtds.member = member;
- qtds.starttime = starttime;
- ds->data = &qtds;
- ast_channel_datastore_add(qe->chan, ds);
- ast_channel_unlock(qe->chan);
-}
-
/*! \brief A large function which calls members, updates statistics, and bridges the caller and a member
*
* Here is the process of this function
@@ -3396,9 +3319,9 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
/* Ah ha! Someone answered within the desired timeframe. Of course after this
we will always return with -1 so that it is hung up properly after the
conversation. */
- if (!strcmp(qe->chan->tech->type, "Zap"))
+ if (!strcmp(qe->chan->tech->type, "DAHDI"))
ast_channel_setoption(qe->chan, AST_OPTION_TONE_VERIFY, &nondataquality, sizeof(nondataquality), 0);
- if (!strcmp(peer->tech->type, "Zap"))
+ if (!strcmp(peer->tech->type, "DAHDI"))
ast_channel_setoption(peer, AST_OPTION_TONE_VERIFY, &nondataquality, sizeof(nondataquality), 0);
/* Update parameters for the queue */
time(&now);
@@ -3758,27 +3681,22 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
ast_copy_string(oldcontext, qe->chan->context, sizeof(oldcontext));
ast_copy_string(oldexten, qe->chan->exten, sizeof(oldexten));
time(&callstart);
- setup_transfer_datastore(qe, member, callstart);
+
bridge = ast_bridge_call(qe->chan,peer, &bridge_config);
- /* If the queue member did an attended transfer, then the TRANSFER already was logged in the queue_log
- * when the masquerade occurred. These other "ending" queue_log messages are unnecessary
- */
- if (!attended_transfer_occurred(qe->chan)) {
- if (strcasecmp(oldcontext, qe->chan->context) || strcasecmp(oldexten, qe->chan->exten)) {
- ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "TRANSFER", "%s|%s|%ld|%ld",
- qe->chan->exten, qe->chan->context, (long) (callstart - qe->start),
- (long) (time(NULL) - callstart));
- send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), TRANSFER);
- } else if (ast_check_hangup(qe->chan)) {
- ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "COMPLETECALLER", "%ld|%ld|%d",
- (long) (callstart - qe->start), (long) (time(NULL) - callstart), qe->opos);
- send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), CALLER);
- } else {
- ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "COMPLETEAGENT", "%ld|%ld|%d",
- (long) (callstart - qe->start), (long) (time(NULL) - callstart), qe->opos);
- send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), AGENT);
- }
+ if (strcasecmp(oldcontext, qe->chan->context) || strcasecmp(oldexten, qe->chan->exten)) {
+ ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "TRANSFER", "%s|%s|%ld|%ld",
+ qe->chan->exten, qe->chan->context, (long) (callstart - qe->start),
+ (long) (time(NULL) - callstart));
+ send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), TRANSFER);
+ } else if (ast_check_hangup(qe->chan)) {
+ ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "COMPLETECALLER", "%ld|%ld|%d",
+ (long) (callstart - qe->start), (long) (time(NULL) - callstart), qe->opos);
+ send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), CALLER);
+ } else {
+ ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "COMPLETEAGENT", "%ld|%ld|%d",
+ (long) (callstart - qe->start), (long) (time(NULL) - callstart), qe->opos);
+ send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), AGENT);
}
if (bridge != AST_PBX_NO_HANGUP_PEER)
diff --git a/apps/app_rpt.c b/apps/app_rpt.c
index d34abd4f2..0a8ee0053 100644
--- a/apps/app_rpt.c
+++ b/apps/app_rpt.c
@@ -152,7 +152,7 @@
*/
/*** MODULEINFO
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
<depend>tonezone</depend>
<defaultenabled>no</defaultenabled>
***/
@@ -763,7 +763,7 @@ static struct rpt
int parrottimer;
unsigned int parrotcnt;
struct ast_channel *rxchannel,*txchannel, *monchannel, *parrotchannel;
- struct ast_channel *pchannel,*txpchannel, *zaprxchannel, *zaptxchannel;
+ struct ast_channel *pchannel,*txpchannel, *dahdirxchannel, *dahditxchannel;
struct ast_channel *voxchannel;
struct ast_frame *lastf1,*lastf2;
struct rpt_tele tele;
@@ -3601,13 +3601,13 @@ static struct morse_bits mbits[] = {
ast_stopstream(chan);
/*
- * Wait for the zaptel driver to physically write the tone blocks to the hardware
+ * Wait for the DAHDI driver to physically write the tone blocks to the hardware
*/
for(i = 0; i < 20 ; i++){
- flags = ZT_IOMUX_WRITEEMPTY | ZT_IOMUX_NOWAIT;
- res = ioctl(chan->fds[0], ZT_IOMUX, &flags);
- if(flags & ZT_IOMUX_WRITEEMPTY)
+ flags = DAHDI_IOMUX_WRITEEMPTY | DAHDI_IOMUX_NOWAIT;
+ res = ioctl(chan->fds[0], DAHDI_IOMUX, &flags);
+ if(flags & DAHDI_IOMUX_WRITEEMPTY)
break;
if( ast_safe_sleep(chan, 50)){
res = -1;
@@ -3658,13 +3658,13 @@ static int send_tone_telemetry(struct ast_channel *chan, char *tonestring)
ast_stopstream(chan);
/*
- * Wait for the zaptel driver to physically write the tone blocks to the hardware
+ * Wait for the DAHDI driver to physically write the tone blocks to the hardware
*/
for(i = 0; i < 20 ; i++){
- flags = ZT_IOMUX_WRITEEMPTY | ZT_IOMUX_NOWAIT;
- res = ioctl(chan->fds[0], ZT_IOMUX, &flags);
- if(flags & ZT_IOMUX_WRITEEMPTY)
+ flags = DAHDI_IOMUX_WRITEEMPTY | DAHDI_IOMUX_NOWAIT;
+ res = ioctl(chan->fds[0], DAHDI_IOMUX, &flags);
+ if(flags & DAHDI_IOMUX_WRITEEMPTY)
break;
if( ast_safe_sleep(chan, 50)){
res = -1;
@@ -3934,7 +3934,7 @@ static int split_freq(char *mhz, char *decimals, char *freq);
static void *rpt_tele_thread(void *this)
{
-ZT_CONFINFO ci; /* conference info */
+DAHDI_CONFINFO ci; /* conference info */
int res = 0,haslink,hastx,hasremote,imdone = 0, unkeys_queued, x;
struct rpt_tele *mytele = (struct rpt_tele *)this;
struct rpt_tele *tlist;
@@ -3954,7 +3954,7 @@ int i,ns,rbimode;
char mhz[MAXREMSTR];
char decimals[MAXREMSTR];
char mystr[200];
-struct zt_params par;
+struct dahdi_params par;
/* get a pointer to myrpt */
@@ -4002,7 +4002,7 @@ struct zt_params par;
/* allocate a pseudo-channel thru asterisk */
- mychannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ mychannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!mychannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -4047,9 +4047,9 @@ struct zt_params par;
(mytele->mode == TAILMSG) || (mytele->mode == LINKUNKEY) || (mytele->mode == TIMEOUT) ||
(mytele->mode == PARROT) || (mytele->mode == STATS_TIME_LOCAL)) ?
myrpt->txconf : myrpt->conf);
- ci.confmode = ZT_CONF_CONFANN;
+ ci.confmode = DAHDI_CONF_CONFANN;
/* first put the channel on the conference in announce mode */
- if (ioctl(mychannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(mychannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_lock(&myrpt->lock);
@@ -4242,9 +4242,9 @@ struct zt_params par;
/* set for all to hear */
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = ZT_CONF_CONFANN;
+ ci.confmode = DAHDI_CONF_CONFANN;
/* first put the channel on the conference in announce mode */
- if (ioctl(mychannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(mychannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_lock(&myrpt->lock);
@@ -4283,9 +4283,9 @@ struct zt_params par;
/* set for all to hear */
ci.chan = 0;
ci.confno = myrpt->txconf;
- ci.confmode = ZT_CONF_CONFANN;
+ ci.confmode = DAHDI_CONF_CONFANN;
/* first put the channel on the conference in announce mode */
- if (ioctl(mychannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(mychannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_lock(&myrpt->lock);
@@ -4512,15 +4512,15 @@ struct zt_params par;
}
if (myrpt->iofd < 0)
{
- i = ZT_FLUSH_EVENT;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_FLUSH,&i) == -1)
+ i = DAHDI_FLUSH_EVENT;
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_FLUSH,&i) == -1)
{
ast_mutex_unlock(&myrpt->remlock);
ast_log(LOG_ERROR,"Cant flush events");
res = -1;
break;
}
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_GET_PARAMS,&par) == -1)
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_GET_PARAMS,&par) == -1)
{
ast_mutex_unlock(&myrpt->remlock);
ast_log(LOG_ERROR,"Cant get params");
@@ -5285,7 +5285,7 @@ char *v1, *v2;
static void *rpt_call(void *this)
{
-ZT_CONFINFO ci; /* conference info */
+DAHDI_CONFINFO ci; /* conference info */
struct rpt *myrpt = (struct rpt *)this;
int res;
int stopped,congstarted,dialtimer,lastcidx,aborted;
@@ -5293,7 +5293,7 @@ struct ast_channel *mychannel,*genchannel;
myrpt->mydtmf = 0;
/* allocate a pseudo-channel thru asterisk */
- mychannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ mychannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!mychannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -5306,12 +5306,12 @@ struct ast_channel *mychannel,*genchannel;
ci.chan = 0;
ci.confno = myrpt->conf; /* use the pseudo conference */
#if 0
- ci.confmode = ZT_CONF_REALANDPSEUDO | ZT_CONF_TALKER | ZT_CONF_LISTENER
- | ZT_CONF_PSEUDO_TALKER | ZT_CONF_PSEUDO_LISTENER;
+ ci.confmode = DAHDI_CONF_REALANDPSEUDO | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER
+ | DAHDI_CONF_PSEUDO_TALKER | DAHDI_CONF_PSEUDO_LISTENER;
#endif
- ci.confmode = ZT_CONF_CONF | ZT_CONF_TALKER | ZT_CONF_LISTENER;
+ ci.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER;
/* first put the channel on the conference */
- if (ioctl(mychannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(mychannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
ast_hangup(mychannel);
@@ -5319,7 +5319,7 @@ struct ast_channel *mychannel,*genchannel;
pthread_exit(NULL);
}
/* allocate a pseudo-channel thru asterisk */
- genchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ genchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!genchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -5332,10 +5332,10 @@ struct ast_channel *mychannel,*genchannel;
#endif
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = ZT_CONF_REALANDPSEUDO | ZT_CONF_TALKER | ZT_CONF_LISTENER
- | ZT_CONF_PSEUDO_TALKER | ZT_CONF_PSEUDO_LISTENER;
+ ci.confmode = DAHDI_CONF_REALANDPSEUDO | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER
+ | DAHDI_CONF_PSEUDO_TALKER | DAHDI_CONF_PSEUDO_LISTENER;
/* first put the channel on the conference */
- if (ioctl(genchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(genchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
ast_hangup(mychannel);
@@ -5360,7 +5360,7 @@ struct ast_channel *mychannel,*genchannel;
pthread_exit(NULL);
}
/* start dialtone if patchquiet is 0. Special patch modes don't send dial tone */
- if ((!myrpt->patchquiet) && (tone_zone_play_tone(genchannel->fds[0],ZT_TONE_DIALTONE) < 0))
+ if ((!myrpt->patchquiet) && (tone_zone_play_tone(genchannel->fds[0],DAHDI_TONE_DIALTONE) < 0))
{
ast_log(LOG_WARNING, "Cannot start dialtone\n");
ast_hangup(mychannel);
@@ -5414,7 +5414,7 @@ struct ast_channel *mychannel,*genchannel;
if(!congstarted){
congstarted = 1;
/* start congestion tone */
- tone_zone_play_tone(genchannel->fds[0],ZT_TONE_CONGESTION);
+ tone_zone_play_tone(genchannel->fds[0],DAHDI_TONE_CONGESTION);
}
}
res = ast_safe_sleep(mychannel, MSWAIT);
@@ -5492,10 +5492,10 @@ struct ast_channel *mychannel,*genchannel;
/* set appropriate conference for the pseudo */
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = (myrpt->p.duplex == 2) ? ZT_CONF_CONFANNMON :
- (ZT_CONF_CONF | ZT_CONF_LISTENER | ZT_CONF_TALKER);
+ ci.confmode = (myrpt->p.duplex == 2) ? DAHDI_CONF_CONFANNMON :
+ (DAHDI_CONF_CONF | DAHDI_CONF_LISTENER | DAHDI_CONF_TALKER);
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->pchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->pchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
ast_hangup(mychannel);
@@ -5504,7 +5504,7 @@ struct ast_channel *mychannel,*genchannel;
pthread_exit(NULL);
}
/* get its channel number */
- if (ioctl(mychannel->fds[0],ZT_CHANNO,&res) == -1)
+ if (ioctl(mychannel->fds[0],DAHDI_CHANNO,&res) == -1)
{
ast_log(LOG_WARNING, "Unable to get autopatch channel number\n");
ast_hangup(mychannel);
@@ -5513,9 +5513,9 @@ struct ast_channel *mychannel,*genchannel;
}
ci.chan = 0;
ci.confno = res;
- ci.confmode = ZT_CONF_MONITOR;
+ ci.confmode = DAHDI_CONF_MONITOR;
/* put vox channel monitoring on the channel */
- if (ioctl(myrpt->voxchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->voxchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
ast_hangup(mychannel);
@@ -5542,7 +5542,7 @@ struct ast_channel *mychannel,*genchannel;
myrpt->callmode = 4;
rpt_mutex_unlock(&myrpt->lock);
/* start congestion tone */
- tone_zone_play_tone(genchannel->fds[0],ZT_TONE_CONGESTION);
+ tone_zone_play_tone(genchannel->fds[0],DAHDI_TONE_CONGESTION);
rpt_mutex_lock(&myrpt->lock);
}
}
@@ -5578,10 +5578,10 @@ struct ast_channel *mychannel,*genchannel;
/* set appropriate conference for the pseudo */
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = ((myrpt->p.duplex == 2) || (myrpt->p.duplex == 4)) ? ZT_CONF_CONFANNMON :
- (ZT_CONF_CONF | ZT_CONF_LISTENER | ZT_CONF_TALKER);
+ ci.confmode = ((myrpt->p.duplex == 2) || (myrpt->p.duplex == 4)) ? DAHDI_CONF_CONFANNMON :
+ (DAHDI_CONF_CONF | DAHDI_CONF_LISTENER | DAHDI_CONF_TALKER);
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->pchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->pchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
}
@@ -5690,7 +5690,7 @@ static int connect_link(struct rpt *myrpt, char* node, int mode, int perma)
struct rpt_link *l;
int reconnects = 0;
int i,n;
- ZT_CONFINFO ci; /* conference info */
+ DAHDI_CONFINFO ci; /* conference info */
val = node_lookup(myrpt,node);
if (!val){
@@ -5829,7 +5829,7 @@ static int connect_link(struct rpt *myrpt, char* node, int mode, int perma)
return -1;
}
/* allocate a pseudo-channel thru asterisk */
- l->pchan = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ l->pchan = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!l->pchan){
ast_log(LOG_WARNING,"rpt connect: Sorry unable to obtain pseudo channel\n");
ast_hangup(l->chan);
@@ -5845,9 +5845,9 @@ static int connect_link(struct rpt *myrpt, char* node, int mode, int perma)
/* make a conference for the tx */
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = ZT_CONF_CONF | ZT_CONF_LISTENER | ZT_CONF_TALKER;
+ ci.confmode = DAHDI_CONF_CONF | DAHDI_CONF_LISTENER | DAHDI_CONF_TALKER;
/* first put the channel on the conference in proper mode */
- if (ioctl(l->pchan->fds[0], ZT_SETCONF, &ci) == -1)
+ if (ioctl(l->pchan->fds[0], DAHDI_SETCONF, &ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
ast_hangup(l->chan);
@@ -7384,22 +7384,22 @@ static void rbi_out_parallel(struct rpt *myrpt,unsigned char *data)
static void rbi_out(struct rpt *myrpt,unsigned char *data)
{
-struct zt_radio_param r;
+struct dahdi_radio_param r;
- memset(&r,0,sizeof(struct zt_radio_param));
- r.radpar = ZT_RADPAR_REMMODE;
- r.data = ZT_RADPAR_REM_RBI1;
+ memset(&r,0,sizeof(struct dahdi_radio_param));
+ r.radpar = DAHDI_RADPAR_REMMODE;
+ r.data = DAHDI_RADPAR_REM_RBI1;
/* if setparam ioctl fails, its probably not a pciradio card */
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&r) == -1)
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&r) == -1)
{
rbi_out_parallel(myrpt,data);
return;
}
- r.radpar = ZT_RADPAR_REMCOMMAND;
+ r.radpar = DAHDI_RADPAR_REMCOMMAND;
memcpy(&r.data,data,5);
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&r) == -1)
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&r) == -1)
{
- ast_log(LOG_WARNING,"Cannot send RBI command for channel %s\n",myrpt->zaprxchannel->name);
+ ast_log(LOG_WARNING,"Cannot send RBI command for channel %s\n",myrpt->dahdirxchannel->name);
return;
}
}
@@ -7408,7 +7408,7 @@ static int serial_remote_io(struct rpt *myrpt, unsigned char *txbuf, int txbytes
unsigned char *rxbuf, int rxmaxbytes, int asciiflag)
{
int i,j,index,oldmode,olddata;
- struct zt_radio_param prm;
+ struct dahdi_radio_param prm;
char c;
if(debug) {
@@ -7453,50 +7453,50 @@ static int serial_remote_io(struct rpt *myrpt, unsigned char *txbuf, int txbytes
return(i);
}
- /* if not a zap channel, cant use pciradio stuff */
- if (myrpt->rxchannel != myrpt->zaprxchannel) return -1;
+ /* if not a DAHDI channel, cant use pciradio stuff */
+ if (myrpt->rxchannel != myrpt->dahdirxchannel) return -1;
- prm.radpar = ZT_RADPAR_UIOMODE;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_GETPARAM,&prm) == -1) return -1;
+ prm.radpar = DAHDI_RADPAR_UIOMODE;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_GETPARAM,&prm) == -1) return -1;
oldmode = prm.data;
- prm.radpar = ZT_RADPAR_UIODATA;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_GETPARAM,&prm) == -1) return -1;
+ prm.radpar = DAHDI_RADPAR_UIODATA;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_GETPARAM,&prm) == -1) return -1;
olddata = prm.data;
- prm.radpar = ZT_RADPAR_REMMODE;
- if (asciiflag & 1) prm.data = ZT_RADPAR_REM_SERIAL_ASCII;
- else prm.data = ZT_RADPAR_REM_SERIAL;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&prm) == -1) return -1;
+ prm.radpar = DAHDI_RADPAR_REMMODE;
+ if (asciiflag & 1) prm.data = DAHDI_RADPAR_REM_SERIAL_ASCII;
+ else prm.data = DAHDI_RADPAR_REM_SERIAL;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&prm) == -1) return -1;
if (asciiflag & 2)
{
- i = ZT_ONHOOK;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_HOOK,&i) == -1) return -1;
+ i = DAHDI_ONHOOK;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_HOOK,&i) == -1) return -1;
usleep(100000);
}
- prm.radpar = ZT_RADPAR_REMCOMMAND;
+ prm.radpar = DAHDI_RADPAR_REMCOMMAND;
prm.data = rxmaxbytes;
memcpy(prm.buf,txbuf,txbytes);
prm.index = txbytes;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&prm) == -1) return -1;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&prm) == -1) return -1;
if (rxbuf)
{
*rxbuf = 0;
memcpy(rxbuf,prm.buf,prm.index);
}
index = prm.index;
- prm.radpar = ZT_RADPAR_REMMODE;
- prm.data = ZT_RADPAR_REM_NONE;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&prm) == -1) return -1;
+ prm.radpar = DAHDI_RADPAR_REMMODE;
+ prm.data = DAHDI_RADPAR_REM_NONE;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&prm) == -1) return -1;
if (asciiflag & 2)
{
- i = ZT_OFFHOOK;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_HOOK,&i) == -1) return -1;
+ i = DAHDI_OFFHOOK;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_HOOK,&i) == -1) return -1;
}
- prm.radpar = ZT_RADPAR_UIOMODE;
+ prm.radpar = DAHDI_RADPAR_UIOMODE;
prm.data = oldmode;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&prm) == -1) return -1;
- prm.radpar = ZT_RADPAR_UIODATA;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&prm) == -1) return -1;
+ prm.radpar = DAHDI_RADPAR_UIODATA;
prm.data = olddata;
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_RADIO_SETPARAM,&prm) == -1) return -1;
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_RADIO_SETPARAM,&prm) == -1) return -1;
return(index);
}
@@ -10726,7 +10726,7 @@ char *tele,*idtalkover,c,myfirst,*p;
int ms = MSWAIT,i,lasttx=0,val,remrx=0,identqueued,othertelemqueued;
int tailmessagequeued,ctqueued,dtmfed,lastmyrx,localmsgqueued;
struct ast_channel *who;
-ZT_CONFINFO ci; /* conference info */
+DAHDI_CONFINFO ci; /* conference info */
time_t t;
struct rpt_link *l,*m;
struct rpt_tele *telem;
@@ -10782,9 +10782,9 @@ char tmpstr[300],lstr[MAXLINKLIST];
}
*tele++ = 0;
myrpt->rxchannel = ast_request(tmpstr,AST_FORMAT_SLINEAR,tele,NULL);
- myrpt->zaprxchannel = NULL;
- if (!strcasecmp(tmpstr,"Zap"))
- myrpt->zaprxchannel = myrpt->rxchannel;
+ myrpt->dahdirxchannel = NULL;
+ if (!strcasecmp(tmpstr,"DAHDI"))
+ myrpt->dahdirxchannel = myrpt->rxchannel;
if (myrpt->rxchannel)
{
if (myrpt->rxchannel->_state == AST_STATE_BUSY)
@@ -10825,7 +10825,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
myrpt->rpt_thread = AST_PTHREADT_STOP;
pthread_exit(NULL);
}
- myrpt->zaptxchannel = NULL;
+ myrpt->dahditxchannel = NULL;
if (myrpt->txchanname)
{
strncpy(tmpstr,myrpt->txchanname,sizeof(tmpstr) - 1);
@@ -10840,8 +10840,8 @@ char tmpstr[300],lstr[MAXLINKLIST];
}
*tele++ = 0;
myrpt->txchannel = ast_request(tmpstr,AST_FORMAT_SLINEAR,tele,NULL);
- if (!strcasecmp(tmpstr,"Zap"))
- myrpt->zaptxchannel = myrpt->txchannel;
+ if (!strcasecmp(tmpstr,"DAHDI"))
+ myrpt->dahditxchannel = myrpt->txchannel;
if (myrpt->txchannel)
{
if (myrpt->txchannel->_state == AST_STATE_BUSY)
@@ -10889,13 +10889,13 @@ char tmpstr[300],lstr[MAXLINKLIST];
else
{
myrpt->txchannel = myrpt->rxchannel;
- if (!strncasecmp(myrpt->rxchanname,"Zap",3))
- myrpt->zaptxchannel = myrpt->txchannel;
+ if (!strncasecmp(myrpt->rxchanname,"DAHDI",3))
+ myrpt->dahditxchannel = myrpt->txchannel;
}
ast_indicate(myrpt->txchannel,AST_CONTROL_RADIO_KEY);
ast_indicate(myrpt->txchannel,AST_CONTROL_RADIO_UNKEY);
/* allocate a pseudo-channel thru asterisk */
- myrpt->pchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->pchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->pchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -10910,12 +10910,12 @@ char tmpstr[300],lstr[MAXLINKLIST];
if (myrpt->pchannel->cdr)
ast_set_flag(myrpt->pchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
#endif
- if (!myrpt->zaprxchannel) myrpt->zaprxchannel = myrpt->pchannel;
- if (!myrpt->zaptxchannel)
+ if (!myrpt->dahdirxchannel) myrpt->dahdirxchannel = myrpt->pchannel;
+ if (!myrpt->dahditxchannel)
{
/* allocate a pseudo-channel thru asterisk */
- myrpt->zaptxchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
- if (!myrpt->zaptxchannel)
+ myrpt->dahditxchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ if (!myrpt->dahditxchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -10925,15 +10925,15 @@ char tmpstr[300],lstr[MAXLINKLIST];
myrpt->rpt_thread = AST_PTHREADT_STOP;
pthread_exit(NULL);
}
- ast_set_read_format(myrpt->zaptxchannel,AST_FORMAT_SLINEAR);
- ast_set_write_format(myrpt->zaptxchannel,AST_FORMAT_SLINEAR);
+ ast_set_read_format(myrpt->dahditxchannel,AST_FORMAT_SLINEAR);
+ ast_set_write_format(myrpt->dahditxchannel,AST_FORMAT_SLINEAR);
#ifdef AST_CDR_FLAG_POST_DISABLED
- if (myrpt->zaptxchannel->cdr)
- ast_set_flag(myrpt->zaptxchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
+ if (myrpt->dahditxchannel->cdr)
+ ast_set_flag(myrpt->dahditxchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
#endif
}
/* allocate a pseudo-channel thru asterisk */
- myrpt->monchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->monchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->monchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -10953,9 +10953,9 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* make a conference for the tx */
ci.chan = 0;
ci.confno = -1; /* make a new conf */
- ci.confmode = ZT_CONF_CONF | ZT_CONF_LISTENER;
+ ci.confmode = DAHDI_CONF_CONF | DAHDI_CONF_LISTENER;
/* first put the channel on the conference in proper mode */
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -10972,10 +10972,10 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* make a conference for the pseudo */
ci.chan = 0;
ci.confno = -1; /* make a new conf */
- ci.confmode = ((myrpt->p.duplex == 2) || (myrpt->p.duplex == 4)) ? ZT_CONF_CONFANNMON :
- (ZT_CONF_CONF | ZT_CONF_LISTENER | ZT_CONF_TALKER);
+ ci.confmode = ((myrpt->p.duplex == 2) || (myrpt->p.duplex == 4)) ? DAHDI_CONF_CONFANNMON :
+ (DAHDI_CONF_CONF | DAHDI_CONF_LISTENER | DAHDI_CONF_TALKER);
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->pchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->pchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -10992,10 +10992,10 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* make a conference for the pseudo */
ci.chan = 0;
if ((strstr(myrpt->txchannel->name,"pseudo") == NULL) &&
- (myrpt->zaptxchannel == myrpt->txchannel))
+ (myrpt->dahditxchannel == myrpt->txchannel))
{
/* get tx channel's port number */
- if (ioctl(myrpt->txchannel->fds[0],ZT_CHANNO,&ci.confno) == -1)
+ if (ioctl(myrpt->txchannel->fds[0],DAHDI_CHANNO,&ci.confno) == -1)
{
ast_log(LOG_WARNING, "Unable to set tx channel's chan number\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -11007,15 +11007,15 @@ char tmpstr[300],lstr[MAXLINKLIST];
myrpt->rpt_thread = AST_PTHREADT_STOP;
pthread_exit(NULL);
}
- ci.confmode = ZT_CONF_MONITORTX;
+ ci.confmode = DAHDI_CONF_MONITORTX;
}
else
{
ci.confno = myrpt->txconf;
- ci.confmode = ZT_CONF_CONFANNMON;
+ ci.confmode = DAHDI_CONF_CONFANNMON;
}
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->monchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->monchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode for monitor\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -11028,7 +11028,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
pthread_exit(NULL);
}
/* allocate a pseudo-channel thru asterisk */
- myrpt->parrotchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->parrotchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->parrotchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -11046,7 +11046,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
ast_set_flag(myrpt->parrotchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
#endif
/* allocate a pseudo-channel thru asterisk */
- myrpt->voxchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->voxchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->voxchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -11064,7 +11064,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
ast_set_flag(myrpt->voxchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
#endif
/* allocate a pseudo-channel thru asterisk */
- myrpt->txpchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->txpchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->txpchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -11084,9 +11084,9 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* make a conference for the tx */
ci.chan = 0;
ci.confno = myrpt->txconf;
- ci.confmode = ZT_CONF_CONF | ZT_CONF_TALKER ;
+ ci.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER ;
/* first put the channel on the conference in proper mode */
- if (ioctl(myrpt->txpchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->txpchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -11179,8 +11179,8 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* DEBUG Dump */
if((myrpt->disgorgetime) && (time(NULL) >= myrpt->disgorgetime)){
- struct rpt_link *zl;
- struct rpt_tele *zt;
+ struct rpt_link *dl;
+ struct rpt_tele *dt;
myrpt->disgorgetime = 0;
ast_log(LOG_NOTICE,"********** Variable Dump Start (app_rpt) **********\n");
@@ -11201,30 +11201,30 @@ char tmpstr[300],lstr[MAXLINKLIST];
ast_log(LOG_NOTICE,"myrpt->tailtimer = %d\n",myrpt->tailtimer);
ast_log(LOG_NOTICE,"myrpt->tailevent = %d\n",myrpt->tailevent);
- zl = myrpt->links.next;
- while(zl != &myrpt->links){
- ast_log(LOG_NOTICE,"*** Link Name: %s ***\n",zl->name);
- ast_log(LOG_NOTICE," link->lasttx %d\n",zl->lasttx);
- ast_log(LOG_NOTICE," link->lastrx %d\n",zl->lastrx);
- ast_log(LOG_NOTICE," link->connected %d\n",zl->connected);
- ast_log(LOG_NOTICE," link->hasconnected %d\n",zl->hasconnected);
- ast_log(LOG_NOTICE," link->outbound %d\n",zl->outbound);
- ast_log(LOG_NOTICE," link->disced %d\n",zl->disced);
- ast_log(LOG_NOTICE," link->killme %d\n",zl->killme);
- ast_log(LOG_NOTICE," link->disctime %ld\n",zl->disctime);
- ast_log(LOG_NOTICE," link->retrytimer %ld\n",zl->retrytimer);
- ast_log(LOG_NOTICE," link->retries = %d\n",zl->retries);
- ast_log(LOG_NOTICE," link->reconnects = %d\n",zl->reconnects);
- ast_log(LOG_NOTICE," link->newkey = %d\n",zl->newkey);
- zl = zl->next;
+ dl = myrpt->links.next;
+ while(dl != &myrpt->links){
+ ast_log(LOG_NOTICE,"*** Link Name: %s ***\n",dl->name);
+ ast_log(LOG_NOTICE," link->lasttx %d\n",dl->lasttx);
+ ast_log(LOG_NOTICE," link->lastrx %d\n",dl->lastrx);
+ ast_log(LOG_NOTICE," link->connected %d\n",dl->connected);
+ ast_log(LOG_NOTICE," link->hasconnected %d\n",dl->hasconnected);
+ ast_log(LOG_NOTICE," link->outbound %d\n",dl->outbound);
+ ast_log(LOG_NOTICE," link->disced %d\n",dl->disced);
+ ast_log(LOG_NOTICE," link->killme %d\n",dl->killme);
+ ast_log(LOG_NOTICE," link->disctime %ld\n",dl->disctime);
+ ast_log(LOG_NOTICE," link->retrytimer %ld\n",dl->retrytimer);
+ ast_log(LOG_NOTICE," link->retries = %d\n",dl->retries);
+ ast_log(LOG_NOTICE," link->reconnects = %d\n",dl->reconnects);
+ ast_log(LOG_NOTICE," link->newkey = %d\n",dl->newkey);
+ dl = dl->next;
}
- zt = myrpt->tele.next;
- if(zt != &myrpt->tele)
+ dt = myrpt->tele.next;
+ if(dt != &myrpt->tele)
ast_log(LOG_NOTICE,"*** Telemetry Queue ***\n");
- while(zt != &myrpt->tele){
- ast_log(LOG_NOTICE," Telemetry mode: %d\n",zt->mode);
- zt = zt->next;
+ while(dt != &myrpt->tele){
+ ast_log(LOG_NOTICE," Telemetry mode: %d\n",dt->mode);
+ dt = dt->next;
}
ast_log(LOG_NOTICE,"******* Variable Dump End (app_rpt) *******\n");
@@ -11266,7 +11266,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
if (myrpt->voxchannel &&
ast_check_hangup(myrpt->voxchannel)) break;
if (ast_check_hangup(myrpt->txpchannel)) break;
- if (myrpt->zaptxchannel && ast_check_hangup(myrpt->zaptxchannel)) break;
+ if (myrpt->dahditxchannel && ast_check_hangup(myrpt->dahditxchannel)) break;
/* Set local tx with keyed */
myrpt->localtx = myrpt->keyed;
@@ -11547,11 +11547,11 @@ char tmpstr[300],lstr[MAXLINKLIST];
char myfname[300];
ci.confno = myrpt->conf;
- ci.confmode = ZT_CONF_CONFANNMON;
+ ci.confmode = DAHDI_CONF_CONFANNMON;
ci.chan = 0;
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->parrotchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->parrotchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode for parrot\n");
break;
@@ -11601,8 +11601,8 @@ char tmpstr[300],lstr[MAXLINKLIST];
if (myrpt->voxchannel) cs[n++] = myrpt->voxchannel;
cs[n++] = myrpt->txpchannel;
if (myrpt->txchannel != myrpt->rxchannel) cs[n++] = myrpt->txchannel;
- if (myrpt->zaptxchannel != myrpt->txchannel)
- cs[n++] = myrpt->zaptxchannel;
+ if (myrpt->dahditxchannel != myrpt->txchannel)
+ cs[n++] = myrpt->dahditxchannel;
l = myrpt->links.next;
while(l != &myrpt->links)
{
@@ -11977,7 +11977,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
ci.chan = 0;
/* first put the channel on the conference in announce mode */
- if (ioctl(myrpt->parrotchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->parrotchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode for parrot\n");
break;
@@ -12088,7 +12088,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
/* apply inbound filters, if any */
rpt_filter(myrpt,f->data,f->datalen / 2);
#endif
- if (ioctl(myrpt->zaprxchannel->fds[0], ZT_GETCONFMUTE, &ismuted) == -1)
+ if (ioctl(myrpt->dahdirxchannel->fds[0], DAHDI_GETCONFMUTE, &ismuted) == -1)
{
ismuted = 0;
}
@@ -12276,9 +12276,9 @@ char tmpstr[300],lstr[MAXLINKLIST];
ast_frfree(f);
continue;
}
- if (who == myrpt->zaptxchannel) /* if it was a read from pseudo-tx */
+ if (who == myrpt->dahditxchannel) /* if it was a read from pseudo-tx */
{
- f = ast_read(myrpt->zaptxchannel);
+ f = ast_read(myrpt->dahditxchannel);
if (!f)
{
if (debug) printf("@@@@ rpt:Hung Up\n");
@@ -12517,7 +12517,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
ast_frfree(f);
f = AST_LIST_REMOVE_HEAD(&l->rxq,frame_list);
}
- if (ioctl(l->chan->fds[0], ZT_GETCONFMUTE, &ismuted) == -1)
+ if (ioctl(l->chan->fds[0], DAHDI_GETCONFMUTE, &ismuted) == -1)
{
ismuted = 0;
}
@@ -12878,7 +12878,7 @@ char tmpstr[300],lstr[MAXLINKLIST];
if (myrpt->voxchannel) ast_hangup(myrpt->voxchannel);
ast_hangup(myrpt->txpchannel);
if (myrpt->txchannel != myrpt->rxchannel) ast_hangup(myrpt->txchannel);
- if (myrpt->zaptxchannel != myrpt->txchannel) ast_hangup(myrpt->zaptxchannel);
+ if (myrpt->dahditxchannel != myrpt->txchannel) ast_hangup(myrpt->dahditxchannel);
if (myrpt->lastf1) ast_frfree(myrpt->lastf1);
myrpt->lastf1 = NULL;
if (myrpt->lastf2) ast_frfree(myrpt->lastf2);
@@ -13125,11 +13125,11 @@ static int rpt_exec(struct ast_channel *chan, void *data)
struct ast_channel *who;
struct ast_channel *cs[20];
struct rpt_link *l;
- ZT_CONFINFO ci; /* conference info */
- ZT_PARAMS par;
+ DAHDI_CONFINFO ci; /* conference info */
+ DAHDI_PARAMS par;
int ms,elap,nullfd;
time_t t,last_timeout_warning;
- struct zt_radio_param z;
+ struct dahdi_radio_param z;
struct rpt_tele *telem;
int numlinks;
@@ -13617,7 +13617,7 @@ static int rpt_exec(struct ast_channel *chan, void *data)
ast_set_read_format(l->chan,AST_FORMAT_SLINEAR);
ast_set_write_format(l->chan,AST_FORMAT_SLINEAR);
/* allocate a pseudo-channel thru asterisk */
- l->pchan = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ l->pchan = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!l->pchan)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -13632,9 +13632,9 @@ static int rpt_exec(struct ast_channel *chan, void *data)
/* make a conference for the tx */
ci.chan = 0;
ci.confno = myrpt->conf;
- ci.confmode = ZT_CONF_CONF | ZT_CONF_LISTENER | ZT_CONF_TALKER;
+ ci.confmode = DAHDI_CONF_CONF | DAHDI_CONF_LISTENER | DAHDI_CONF_TALKER;
/* first put the channel on the conference in proper mode */
- if (ioctl(l->pchan->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(l->pchan->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
pthread_exit(NULL);
@@ -13760,9 +13760,9 @@ static int rpt_exec(struct ast_channel *chan, void *data)
}
*tele++ = 0;
myrpt->rxchannel = ast_request(myrpt->rxchanname,AST_FORMAT_SLINEAR,tele,NULL);
- myrpt->zaprxchannel = NULL;
- if (!strcasecmp(myrpt->rxchanname,"Zap"))
- myrpt->zaprxchannel = myrpt->rxchannel;
+ myrpt->dahdirxchannel = NULL;
+ if (!strcasecmp(myrpt->rxchanname,"DAHDI"))
+ myrpt->dahdirxchannel = myrpt->rxchannel;
if (myrpt->rxchannel)
{
ast_set_read_format(myrpt->rxchannel,AST_FORMAT_SLINEAR);
@@ -13790,7 +13790,7 @@ static int rpt_exec(struct ast_channel *chan, void *data)
pthread_exit(NULL);
}
*--tele = '/';
- myrpt->zaptxchannel = NULL;
+ myrpt->dahditxchannel = NULL;
if (myrpt->txchanname)
{
tele = strchr(myrpt->txchanname,'/');
@@ -13803,8 +13803,8 @@ static int rpt_exec(struct ast_channel *chan, void *data)
}
*tele++ = 0;
myrpt->txchannel = ast_request(myrpt->txchanname,AST_FORMAT_SLINEAR,tele,NULL);
- if (!strncasecmp(myrpt->txchanname,"Zap",3))
- myrpt->zaptxchannel = myrpt->txchannel;
+ if (!strncasecmp(myrpt->txchanname,"DAHDI",3))
+ myrpt->dahditxchannel = myrpt->txchannel;
if (myrpt->txchannel)
{
ast_set_read_format(myrpt->txchannel,AST_FORMAT_SLINEAR);
@@ -13837,11 +13837,11 @@ static int rpt_exec(struct ast_channel *chan, void *data)
else
{
myrpt->txchannel = myrpt->rxchannel;
- if (!strncasecmp(myrpt->rxchanname,"Zap",3))
- myrpt->zaptxchannel = myrpt->rxchannel;
+ if (!strncasecmp(myrpt->rxchanname,"DAHDI",3))
+ myrpt->dahditxchannel = myrpt->rxchannel;
}
/* allocate a pseudo-channel thru asterisk */
- myrpt->pchannel = ast_request("zap",AST_FORMAT_SLINEAR,"pseudo",NULL);
+ myrpt->pchannel = ast_request("DAHDI",AST_FORMAT_SLINEAR,"pseudo",NULL);
if (!myrpt->pchannel)
{
fprintf(stderr,"rpt:Sorry unable to obtain pseudo channel\n");
@@ -13857,14 +13857,14 @@ static int rpt_exec(struct ast_channel *chan, void *data)
if (myrpt->pchannel->cdr)
ast_set_flag(myrpt->pchannel->cdr,AST_CDR_FLAG_POST_DISABLED);
#endif
- if (!myrpt->zaprxchannel) myrpt->zaprxchannel = myrpt->pchannel;
- if (!myrpt->zaptxchannel) myrpt->zaptxchannel = myrpt->pchannel;
+ if (!myrpt->dahdirxchannel) myrpt->dahdirxchannel = myrpt->pchannel;
+ if (!myrpt->dahditxchannel) myrpt->dahditxchannel = myrpt->pchannel;
/* make a conference for the pseudo */
ci.chan = 0;
ci.confno = -1; /* make a new conf */
- ci.confmode = ZT_CONF_CONFANNMON ;
+ ci.confmode = DAHDI_CONF_CONFANNMON ;
/* first put the channel on the conference in announce/monitor mode */
- if (ioctl(myrpt->pchannel->fds[0],ZT_SETCONF,&ci) == -1)
+ if (ioctl(myrpt->pchannel->fds[0],DAHDI_SETCONF,&ci) == -1)
{
ast_log(LOG_WARNING, "Unable to set conference mode to Announce\n");
rpt_mutex_unlock(&myrpt->lock);
@@ -13889,30 +13889,30 @@ static int rpt_exec(struct ast_channel *chan, void *data)
}
iskenwood_pci4 = 0;
memset(&z,0,sizeof(z));
- if ((myrpt->iofd < 1) && (myrpt->txchannel == myrpt->zaptxchannel))
+ if ((myrpt->iofd < 1) && (myrpt->txchannel == myrpt->dahditxchannel))
{
- z.radpar = ZT_RADPAR_REMMODE;
- z.data = ZT_RADPAR_REM_NONE;
- res = ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z);
+ z.radpar = DAHDI_RADPAR_REMMODE;
+ z.data = DAHDI_RADPAR_REM_NONE;
+ res = ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z);
/* if PCIRADIO and kenwood selected */
if ((!res) && (!strcmp(myrpt->remoterig,remote_rig_kenwood)))
{
- z.radpar = ZT_RADPAR_UIOMODE;
+ z.radpar = DAHDI_RADPAR_UIOMODE;
z.data = 1;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIOMODE\n");
return -1;
}
- z.radpar = ZT_RADPAR_UIODATA;
+ z.radpar = DAHDI_RADPAR_UIODATA;
z.data = 3;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIODATA\n");
return -1;
}
- i = ZT_OFFHOOK;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_HOOK,&i) == -1)
+ i = DAHDI_OFFHOOK;
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_HOOK,&i) == -1)
{
ast_log(LOG_ERROR,"Cannot set hook\n");
return -1;
@@ -13920,26 +13920,26 @@ static int rpt_exec(struct ast_channel *chan, void *data)
iskenwood_pci4 = 1;
}
}
- if (myrpt->txchannel == myrpt->zaptxchannel)
+ if (myrpt->txchannel == myrpt->dahditxchannel)
{
- i = ZT_ONHOOK;
- ioctl(myrpt->zaptxchannel->fds[0],ZT_HOOK,&i);
+ i = DAHDI_ONHOOK;
+ ioctl(myrpt->dahditxchannel->fds[0],DAHDI_HOOK,&i);
/* if PCIRADIO and Yaesu ft897/ICOM IC-706 selected */
if ((myrpt->iofd < 1) && (!res) &&
((!strcmp(myrpt->remoterig,remote_rig_ft897)) ||
(!strcmp(myrpt->remoterig,remote_rig_ic706)) ||
(!strcmp(myrpt->remoterig,remote_rig_tm271))))
{
- z.radpar = ZT_RADPAR_UIOMODE;
+ z.radpar = DAHDI_RADPAR_UIOMODE;
z.data = 1;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIOMODE\n");
return -1;
}
- z.radpar = ZT_RADPAR_UIODATA;
+ z.radpar = DAHDI_RADPAR_UIODATA;
z.data = 3;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIODATA\n");
return -1;
@@ -13976,16 +13976,16 @@ static int rpt_exec(struct ast_channel *chan, void *data)
if (myrpt->remote && (myrpt->rxchannel == myrpt->txchannel))
{
i = 128;
- ioctl(myrpt->zaprxchannel->fds[0],ZT_ECHOCANCEL,&i);
+ ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_ECHOCANCEL,&i);
}
if (chan->_state != AST_STATE_UP) {
ast_answer(chan);
if (!phone_mode) send_newkey(chan);
}
- if (myrpt->rxchannel == myrpt->zaprxchannel)
+ if (myrpt->rxchannel == myrpt->dahdirxchannel)
{
- if (ioctl(myrpt->zaprxchannel->fds[0],ZT_GET_PARAMS,&par) != -1)
+ if (ioctl(myrpt->dahdirxchannel->fds[0],DAHDI_GET_PARAMS,&par) != -1)
{
if (par.rxisoffhook)
{
@@ -14255,11 +14255,11 @@ static int rpt_exec(struct ast_channel *chan, void *data)
if((myrpt->remtxfreqok = check_tx_freq(myrpt)))
{
time(&myrpt->last_activity_time);
- if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->zaptxchannel))
+ if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->dahditxchannel))
{
- z.radpar = ZT_RADPAR_UIODATA;
+ z.radpar = DAHDI_RADPAR_UIODATA;
z.data = 1;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIODATA\n");
return -1;
@@ -14279,11 +14279,11 @@ static int rpt_exec(struct ast_channel *chan, void *data)
if(!myrpt->remtxfreqok){
rpt_telemetry(myrpt,UNAUTHTX,NULL);
}
- if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->zaptxchannel))
+ if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->dahditxchannel))
{
- z.radpar = ZT_RADPAR_UIODATA;
+ z.radpar = DAHDI_RADPAR_UIODATA;
z.data = 3;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIODATA\n");
return -1;
@@ -14333,7 +14333,7 @@ static int rpt_exec(struct ast_channel *chan, void *data)
}
if (f->frametype == AST_FRAME_VOICE)
{
- if (ioctl(chan->fds[0], ZT_GETCONFMUTE, &ismuted) == -1)
+ if (ioctl(chan->fds[0], DAHDI_GETCONFMUTE, &ismuted) == -1)
{
ismuted = 0;
}
@@ -14556,24 +14556,24 @@ static int rpt_exec(struct ast_channel *chan, void *data)
myrpt->lastf1 = NULL;
if (myrpt->lastf2) ast_frfree(myrpt->lastf2);
myrpt->lastf2 = NULL;
- if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->zaptxchannel))
+ if ((iskenwood_pci4) && (myrpt->txchannel == myrpt->dahditxchannel))
{
- z.radpar = ZT_RADPAR_UIOMODE;
+ z.radpar = DAHDI_RADPAR_UIOMODE;
z.data = 3;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIOMODE\n");
return -1;
}
- z.radpar = ZT_RADPAR_UIODATA;
+ z.radpar = DAHDI_RADPAR_UIODATA;
z.data = 3;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_RADIO_SETPARAM,&z) == -1)
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_RADIO_SETPARAM,&z) == -1)
{
ast_log(LOG_ERROR,"Cannot set UIODATA\n");
return -1;
}
- i = ZT_OFFHOOK;
- if (ioctl(myrpt->zaptxchannel->fds[0],ZT_HOOK,&i) == -1)
+ i = DAHDI_OFFHOOK;
+ if (ioctl(myrpt->dahditxchannel->fds[0],DAHDI_HOOK,&i) == -1)
{
ast_log(LOG_ERROR,"Cannot set hook\n");
return -1;
diff --git a/build_tools/menuselect-deps.in b/build_tools/menuselect-deps.in
index 3fff7287c..fba1dd308 100644
--- a/build_tools/menuselect-deps.in
+++ b/build_tools/menuselect-deps.in
@@ -1,6 +1,7 @@
ASOUND=@PBX_ALSA@
CRYPTO=@PBX_CRYPTO@
CURL=@PBX_CURL@
+DAHDI=@PBX_DAHDI@
FREETDS=@PBX_FREETDS@
GMIME=@PBX_GMIME@
GNU_LD=@GNU_LD@
@@ -47,7 +48,4 @@ USB=@PBX_USB@
VORBIS=@PBX_VORBIS@
VPBAPI=@PBX_VPB@
WINARCH=@WINARCH@
-ZAPTEL=@PBX_ZAPTEL@
-ZAPTEL_TRANSCODE=@PBX_ZAPTEL_TRANSCODE@
-ZAPTEL_VLDTMF=@PBX_ZAPTEL_VLDTMF@
ZLIB=@PBX_ZLIB@
diff --git a/cdr/cdr_csv.c b/cdr/cdr_csv.c
index cb872f131..236292d4c 100644
--- a/cdr/cdr_csv.c
+++ b/cdr/cdr_csv.c
@@ -62,7 +62,7 @@ static char *config = "cdr.conf";
"accountcode", accountcode is the account name of detail records, Master.csv contains all records *
Detail records are configured on a channel basis, IAX and SIP are determined by user *
- Zap is determined by channel in zaptel.conf
+ DAHDI is determined by channel in dahdi.conf
"source",
"destination",
"destination context",
diff --git a/channels/chan_zap.c b/channels/chan_dahdi.c
index 228499df9..d0d5fba51 100644
--- a/channels/chan_zap.c
+++ b/channels/chan_dahdi.c
@@ -18,19 +18,19 @@
/*! \file
*
- * \brief Zaptel Pseudo TDM interface
+ * \brief DAHDI for Pseudo TDM
*
* \author Mark Spencer <markster@digium.com>
*
- * Connects to the Zaptel telephony library as well as
+ * Connects to the DAHDI telephony library as well as
* libpri. Libpri is optional and needed only if you are
* going to use ISDN connections.
*
* You need to install libraries before you attempt to compile
- * and install the Zaptel channel.
+ * and install the DAHDI channel.
*
* \par See also
- * \arg \ref Config_zap
+ * \arg \ref Config_dahdi
*
* \ingroup channel_drivers
*
@@ -39,8 +39,7 @@
/*** MODULEINFO
<depend>res_smdi</depend>
- <depend>zaptel_vldtmf</depend>
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
<depend>tonezone</depend>
<use>pri</use>
<use>ss7</use>
@@ -59,7 +58,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <sys/ioctl.h>
#include <math.h>
#include <ctype.h>
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#ifdef HAVE_PRI
#include <libpri.h>
@@ -102,7 +101,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#define SMDI_MD_WAIT_TIMEOUT 1500 /* 1.5 seconds */
-#ifdef ZT_SPANINFO_HAS_LINECONFIG
+#ifdef DAHDI_SPANINFO_HAS_LINECONFIG
static const char *lbostr[] = {
"0 db (CSU)/0-133 feet (DSX-1)",
"133-266 feet (DSX-1)",
@@ -125,14 +124,14 @@ static struct ast_jb_conf default_jbconf =
};
static struct ast_jb_conf global_jbconf;
-#if !defined(ZT_SIG_EM_E1) || (defined(HAVE_PRI) && !defined(ZT_SIG_HARDHDLC))
-#error "Your Zaptel is too old. Please update"
+#if !defined(DAHDI_SIG_EM_E1) || (defined(HAVE_PRI) && !defined(DAHDI_SIG_HARDHDLC))
+#error "Your DAHDI is too old. Please update"
#endif
-#ifndef ZT_TONEDETECT
+#ifndef DAHDI_TONEDETECT
/* Work around older code with no tone detect */
-#define ZT_EVENT_DTMFDOWN 0
-#define ZT_EVENT_DTMFUP 0
+#define DAHDI_EVENT_DTMFDOWN 0
+#define DAHDI_EVENT_DTMFUP 0
#endif
/* define this to send PRI user-user information elements */
@@ -154,20 +153,20 @@ static struct ast_jb_conf global_jbconf;
* before dialing on it. Certain FXO interfaces always think they're out of
* service with this method however.
*/
-/* #define ZAP_CHECK_HOOKSTATE */
+/* #define DAHDI_CHECK_HOOKSTATE */
/*! \brief Typically, how many rings before we should send Caller*ID */
#define DEFAULT_CIDRINGS 1
#define CHANNEL_PSEUDO -12
-#define AST_LAW(p) (((p)->law == ZT_LAW_ALAW) ? AST_FORMAT_ALAW : AST_FORMAT_ULAW)
+#define AST_LAW(p) (((p)->law == DAHDI_LAW_ALAW) ? AST_FORMAT_ALAW : AST_FORMAT_ULAW)
/*! \brief Signaling types that need to use MF detection should be placed in this macro */
#define NEED_MFDETECT(p) (((p)->sig == SIG_FEATDMF) || ((p)->sig == SIG_FEATDMF_TA) || ((p)->sig == SIG_E911) || ((p)->sig == SIG_FGC_CAMA) || ((p)->sig == SIG_FGC_CAMAMF) || ((p)->sig == SIG_FEATB))
-static const char tdesc[] = "Zapata Telephony Driver"
+static const char tdesc[] = "DAHDI Telephony Driver"
#ifdef HAVE_PRI
" w/PRI"
#endif
@@ -176,38 +175,38 @@ static const char tdesc[] = "Zapata Telephony Driver"
#endif
;
-static const char config[] = "zapata.conf";
-
-#define SIG_EM ZT_SIG_EM
-#define SIG_EMWINK (0x0100000 | ZT_SIG_EM)
-#define SIG_FEATD (0x0200000 | ZT_SIG_EM)
-#define SIG_FEATDMF (0x0400000 | ZT_SIG_EM)
-#define SIG_FEATB (0x0800000 | ZT_SIG_EM)
-#define SIG_E911 (0x1000000 | ZT_SIG_EM)
-#define SIG_FEATDMF_TA (0x2000000 | ZT_SIG_EM)
-#define SIG_FGC_CAMA (0x4000000 | ZT_SIG_EM)
-#define SIG_FGC_CAMAMF (0x8000000 | ZT_SIG_EM)
-#define SIG_FXSLS ZT_SIG_FXSLS
-#define SIG_FXSGS ZT_SIG_FXSGS
-#define SIG_FXSKS ZT_SIG_FXSKS
-#define SIG_FXOLS ZT_SIG_FXOLS
-#define SIG_FXOGS ZT_SIG_FXOGS
-#define SIG_FXOKS ZT_SIG_FXOKS
-#define SIG_PRI ZT_SIG_CLEAR
-#define SIG_BRI (0x2000000 | ZT_SIG_CLEAR)
-#define SIG_BRI_PTMP (0X4000000 | ZT_SIG_CLEAR)
-#define SIG_SS7 (0x1000000 | ZT_SIG_CLEAR)
-#define SIG_SF ZT_SIG_SF
-#define SIG_SFWINK (0x0100000 | ZT_SIG_SF)
-#define SIG_SF_FEATD (0x0200000 | ZT_SIG_SF)
-#define SIG_SF_FEATDMF (0x0400000 | ZT_SIG_SF)
-#define SIG_SF_FEATB (0x0800000 | ZT_SIG_SF)
-#define SIG_EM_E1 ZT_SIG_EM_E1
-#define SIG_GR303FXOKS (0x0100000 | ZT_SIG_FXOKS)
-#define SIG_GR303FXSKS (0x0100000 | ZT_SIG_FXSKS)
+static const char config[] = "chan_dahdi.conf";
+
+#define SIG_EM DAHDI_SIG_EM
+#define SIG_EMWINK (0x0100000 | DAHDI_SIG_EM)
+#define SIG_FEATD (0x0200000 | DAHDI_SIG_EM)
+#define SIG_FEATDMF (0x0400000 | DAHDI_SIG_EM)
+#define SIG_FEATB (0x0800000 | DAHDI_SIG_EM)
+#define SIG_E911 (0x1000000 | DAHDI_SIG_EM)
+#define SIG_FEATDMF_TA (0x2000000 | DAHDI_SIG_EM)
+#define SIG_FGC_CAMA (0x4000000 | DAHDI_SIG_EM)
+#define SIG_FGC_CAMAMF (0x8000000 | DAHDI_SIG_EM)
+#define SIG_FXSLS DAHDI_SIG_FXSLS
+#define SIG_FXSGS DAHDI_SIG_FXSGS
+#define SIG_FXSKS DAHDI_SIG_FXSKS
+#define SIG_FXOLS DAHDI_SIG_FXOLS
+#define SIG_FXOGS DAHDI_SIG_FXOGS
+#define SIG_FXOKS DAHDI_SIG_FXOKS
+#define SIG_PRI DAHDI_SIG_CLEAR
+#define SIG_BRI (0x2000000 | DAHDI_SIG_CLEAR)
+#define SIG_BRI_PTMP (0X4000000 | DAHDI_SIG_CLEAR)
+#define SIG_SS7 (0x1000000 | DAHDI_SIG_CLEAR)
+#define SIG_SF DAHDI_SIG_SF
+#define SIG_SFWINK (0x0100000 | DAHDI_SIG_SF)
+#define SIG_SF_FEATD (0x0200000 | DAHDI_SIG_SF)
+#define SIG_SF_FEATDMF (0x0400000 | DAHDI_SIG_SF)
+#define SIG_SF_FEATB (0x0800000 | DAHDI_SIG_SF)
+#define SIG_EM_E1 DAHDI_SIG_EM_E1
+#define SIG_GR303FXOKS (0x0100000 | DAHDI_SIG_FXOKS)
+#define SIG_GR303FXSKS (0x0100000 | DAHDI_SIG_FXSKS)
#ifdef LOTS_OF_SPANS
-#define NUM_SPANS ZT_MAX_SPANS
+#define NUM_SPANS DAHDI_MAX_SPANS
#else
#define NUM_SPANS 32
#endif
@@ -223,10 +222,10 @@ static const char config[] = "zapata.conf";
#define DCHAN_AVAILABLE (DCHAN_PROVISIONED | DCHAN_NOTINALARM | DCHAN_UP)
/* Overlap dialing option types */
-#define ZAP_OVERLAPDIAL_NONE 0
-#define ZAP_OVERLAPDIAL_OUTGOING 1
-#define ZAP_OVERLAPDIAL_INCOMING 2
-#define ZAP_OVERLAPDIAL_BOTH (ZAP_OVERLAPDIAL_INCOMING|ZAP_OVERLAPDIAL_OUTGOING)
+#define DAHDI_OVERLAPDIAL_NONE 0
+#define DAHDI_OVERLAPDIAL_OUTGOING 1
+#define DAHDI_OVERLAPDIAL_INCOMING 2
+#define DAHDI_OVERLAPDIAL_BOTH (DAHDI_OVERLAPDIAL_INCOMING|DAHDI_OVERLAPDIAL_OUTGOING)
#define CALLPROGRESS_PROGRESS 1
@@ -269,7 +268,7 @@ static int gendigittimeout = 8000;
/*! \brief How long to wait for an extra digit, if there is an ambiguous match */
static int matchdigittimeout = 3000;
-/*! \brief Protect the interface list (of zt_pvt's) */
+/*! \brief Protect the interface list (of dahdi_pvt's) */
AST_MUTEX_DEFINE_STATIC(iflock);
@@ -289,35 +288,35 @@ static pthread_t monitor_thread = AST_PTHREADT_NULL;
static int restart_monitor(void);
-static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms);
+static enum ast_bridge_result dahdi_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms);
-static int zt_sendtext(struct ast_channel *c, const char *text);
+static int dahdi_sendtext(struct ast_channel *c, const char *text);
static void mwi_event_cb(const struct ast_event *event, void *userdata)
{
/* This module does not handle MWI in an event-based manner. However, it
* subscribes to MWI for each mailbox that is configured so that the core
- * knows that we care about it. Then, chan_zap will get the MWI from the
+ * knows that we care about it. Then, chan_dahdi will get the MWI from the
* event cache instead of checking the mailbox directly. */
}
-/*! \brief Avoid the silly zt_getevent which ignores a bunch of events */
-static inline int zt_get_event(int fd)
+/*! \brief Avoid the silly dahdi_getevent which ignores a bunch of events */
+static inline int dahdi_get_event(int fd)
{
int j;
- if (ioctl(fd, ZT_GETEVENT, &j) == -1)
+ if (ioctl(fd, DAHDI_GETEVENT, &j) == -1)
return -1;
return j;
}
-/*! \brief Avoid the silly zt_waitevent which ignores a bunch of events */
-static inline int zt_wait_event(int fd)
+/*! \brief Avoid the silly dahdi_waitevent which ignores a bunch of events */
+static inline int dahdi_wait_event(int fd)
{
int i, j = 0;
- i = ZT_IOMUX_SIGEVENT;
- if (ioctl(fd, ZT_IOMUX, &i) == -1)
+ i = DAHDI_IOMUX_SIGEVENT;
+ if (ioctl(fd, DAHDI_IOMUX, &i) == -1)
return -1;
- if (ioctl(fd, ZT_GETEVENT, &j) == -1)
+ if (ioctl(fd, DAHDI_GETEVENT, &j) == -1)
return -1;
return j;
}
@@ -334,7 +333,7 @@ static inline int zt_wait_event(int fd)
#define MIN_MS_SINCE_FLASH ( (2000) ) /*!< 2000 ms */
#define DEFAULT_RINGT ( (8000 * 8) / READ_SIZE) /*!< 8,000 ms */
-struct zt_pvt;
+struct dahdi_pvt;
static int ringt_base = DEFAULT_RINGT;
@@ -347,7 +346,7 @@ static int ringt_base = DEFAULT_RINGT;
#define SS7_NAI_DYNAMIC -1
-struct zt_ss7 {
+struct dahdi_ss7 {
pthread_t master; /*!< Thread of master */
ast_mutex_t lock;
int fds[NUM_DCHANS];
@@ -366,10 +365,10 @@ struct zt_ss7 {
char subscriberprefix[20]; /*!< area access code + area code ('0'+area code for european dialplans) */
char unknownprefix[20]; /*!< for unknown dialplans */
struct ss7 *ss7;
- struct zt_pvt *pvts[MAX_CHANNELS]; /*!< Member channel pvt structs */
+ struct dahdi_pvt *pvts[MAX_CHANNELS]; /*!< Member channel pvt structs */
};
-static struct zt_ss7 linksets[NUM_SPANS];
+static struct dahdi_ss7 linksets[NUM_SPANS];
static int cur_ss7type = -1;
static int cur_linkset = -1;
@@ -387,7 +386,7 @@ static int cur_defaultdpc = -1;
#define PRI_SPAN(p) (((p) >> 8) & 0xff)
#define PRI_EXPLICIT(p) (((p) >> 16) & 0x01)
-struct zt_pri {
+struct dahdi_pri {
pthread_t master; /*!< Thread of master */
ast_mutex_t lock; /*!< Mutex */
char idleext[AST_MAX_EXTENSION]; /*!< Where to idle extra calls */
@@ -424,13 +423,13 @@ struct zt_pri {
time_t lastreset; /*!< time when unused channels were last reset */
long resetinterval; /*!< Interval (in seconds) for resetting unused channels */
int sig;
- struct zt_pvt *pvts[MAX_CHANNELS]; /*!< Member channel pvt structs */
- struct zt_pvt *crvs; /*!< Member CRV structs */
- struct zt_pvt *crvend; /*!< Pointer to end of CRV structs */
+ struct dahdi_pvt *pvts[MAX_CHANNELS]; /*!< Member channel pvt structs */
+ struct dahdi_pvt *crvs; /*!< Member CRV structs */
+ struct dahdi_pvt *crvend; /*!< Pointer to end of CRV structs */
};
-static struct zt_pri pris[NUM_SPANS];
+static struct dahdi_pri pris[NUM_SPANS];
#if 0
#define DEFAULT_PRI_DEBUG (PRI_DEBUG_Q931_DUMP | PRI_DEBUG_Q921_DUMP | PRI_DEBUG_Q921_RAW | PRI_DEBUG_Q921_STATE)
@@ -438,14 +437,14 @@ static struct zt_pri pris[NUM_SPANS];
#define DEFAULT_PRI_DEBUG 0
#endif
-static inline void pri_rel(struct zt_pri *pri)
+static inline void pri_rel(struct dahdi_pri *pri)
{
ast_mutex_unlock(&pri->lock);
}
#else
/*! Shut up the compiler */
-struct zt_pri;
+struct dahdi_pri;
#endif
#define SUB_REAL 0 /*!< Active call */
@@ -464,7 +463,7 @@ struct distRingData {
struct ringContextData {
char contextData[AST_MAX_CONTEXT];
};
-struct zt_distRings {
+struct dahdi_distRings {
struct distRingData ringnum[3];
struct ringContextData ringContext[3];
};
@@ -475,7 +474,7 @@ static char *subnames[] = {
"Threeway"
};
-struct zt_subchannel {
+struct dahdi_subchannel {
int zfd;
struct ast_channel *owner;
int chan;
@@ -491,7 +490,7 @@ struct zt_subchannel {
unsigned int needunhold:1;
unsigned int linear:1;
unsigned int inthreeway:1;
- ZT_CONFINFO curconf;
+ DAHDI_CONFINFO curconf;
};
#define CONF_USER_REAL (1 << 0)
@@ -499,30 +498,30 @@ struct zt_subchannel {
#define MAX_SLAVES 4
-static struct zt_pvt {
+static struct dahdi_pvt {
ast_mutex_t lock;
struct ast_channel *owner; /*!< Our current active owner (if applicable) */
/*!< Up to three channels can be associated with this call */
- struct zt_subchannel sub_unused; /*!< Just a safety precaution */
- struct zt_subchannel subs[3]; /*!< Sub-channels */
- struct zt_confinfo saveconf; /*!< Saved conference info */
+ struct dahdi_subchannel sub_unused; /*!< Just a safety precaution */
+ struct dahdi_subchannel subs[3]; /*!< Sub-channels */
+ struct dahdi_confinfo saveconf; /*!< Saved conference info */
- struct zt_pvt *slaves[MAX_SLAVES]; /*!< Slave to us (follows our conferencing) */
- struct zt_pvt *master; /*!< Master to us (we follow their conferencing) */
+ struct dahdi_pvt *slaves[MAX_SLAVES]; /*!< Slave to us (follows our conferencing) */
+ struct dahdi_pvt *master; /*!< Master to us (we follow their conferencing) */
int inconference; /*!< If our real should be in the conference */
int sig; /*!< Signalling style */
int radio; /*!< radio type */
int outsigmod; /*!< Outbound Signalling style (modifier) */
int oprmode; /*!< "Operator Services" mode */
- struct zt_pvt *oprpeer; /*!< "Operator Services" peer tech_pvt ptr */
+ struct dahdi_pvt *oprpeer; /*!< "Operator Services" peer tech_pvt ptr */
float cid_rxgain; /*!< "Gain to apply during caller id */
float rxgain;
float txgain;
int tonezone; /*!< tone zone for this chan, or -1 for default */
- struct zt_pvt *next; /*!< Next channel in list */
- struct zt_pvt *prev; /*!< Prev channel in list */
+ struct dahdi_pvt *next; /*!< Next channel in list */
+ struct dahdi_pvt *prev; /*!< Prev channel in list */
/* flags */
unsigned int adsi:1;
@@ -567,7 +566,7 @@ static struct zt_pvt {
unsigned int use_callerid:1; /*!< Whether or not to use caller id on this channel */
unsigned int use_callingpres:1; /*!< Whether to use the callingpres the calling switch sends */
unsigned int usedistinctiveringdetection:1;
- unsigned int zaptrcallerid:1; /*!< should we use the callerid from incoming call on zap transfer or not */
+ unsigned int dahditrcallerid:1; /*!< should we use the callerid from incoming call on dahdi transfer or not */
unsigned int transfertobusy:1; /*!< allow flash-transfers to busy channels */
unsigned int mwimonitor_neon:1; /*!< monitor this FXO port for neon type MWI indication from other end */
unsigned int mwimonitor_fsk:1; /*!< monitor this FXO port for fsk MWI indication from other end */
@@ -589,7 +588,7 @@ static struct zt_pvt {
unsigned int use_smdi:1; /* Whether to use SMDI on this channel */
struct ast_smdi_interface *smdi_iface; /* The serial port to listen for SMDI data on */
- struct zt_distRings drings;
+ struct dahdi_distRings drings;
char context[AST_MAX_CONTEXT];
char defcontext[AST_MAX_CONTEXT];
@@ -637,14 +636,10 @@ static struct zt_pvt {
int stripmsd;
int callwaitcas;
int callwaitrings;
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
struct {
- struct zt_echocanparams head;
- struct zt_echocanparam params[ZT_MAX_ECHOCANPARAMS];
+ struct dahdi_echocanparams head;
+ struct dahdi_echocanparam params[DAHDI_MAX_ECHOCANPARAMS];
} echocancel;
-#else
- int echocancel;
-#endif
int echotraining;
char echorest[20];
int busycount;
@@ -654,7 +649,7 @@ static struct zt_pvt {
struct timeval flashtime; /*!< Last flash-hook time */
struct ast_dsp *dsp;
int cref; /*!< Call reference number */
- ZT_DIAL_OPERATION dop;
+ DAHDI_DIAL_OPERATION dop;
int whichwink; /*!< SIG_FEATDMF_TA Which wink are we on? */
char finaldial[64];
char accountcode[AST_MAX_ACCOUNT_CODE]; /*!< Account code */
@@ -674,9 +669,9 @@ static struct zt_pvt {
struct timeval polaritydelaytv;
int sendcalleridafter;
#ifdef HAVE_PRI
- struct zt_pri *pri;
- struct zt_pvt *bearer;
- struct zt_pvt *realcall;
+ struct dahdi_pri *pri;
+ struct dahdi_pvt *bearer;
+ struct dahdi_pvt *realcall;
q931_call *call;
int prioffset;
int logicalspan;
@@ -684,7 +679,7 @@ static struct zt_pvt {
int polarity;
int dsp_features;
#ifdef HAVE_SS7
- struct zt_ss7 *ss7;
+ struct dahdi_ss7 *ss7;
struct isup_call *ss7call;
char charge_number[50];
char gen_add_number[50];
@@ -715,37 +710,37 @@ static struct zt_pvt {
int muting;
} *iflist = NULL, *ifend = NULL;
-/*! \brief Channel configuration from zapata.conf .
- * This struct is used for parsing the [channels] section of zapata.conf.
+/*! \brief Channel configuration from chan_dahdi.conf .
+ * This struct is used for parsing the [channels] section of chan_dahdi.conf.
* Generally there is a field here for every possible configuration item.
*
* The state of fields is saved along the parsing and whenever a 'channel'
- * statement is reached, the current zt_chan_conf is used to configure the
- * channel (struct zt_pvt)
+ * statement is reached, the current dahdi_chan_conf is used to configure the
+ * channel (struct dahdi_pvt)
*
- * \see zt_chan_init for the default values.
+ * \see dahdi_chan_init for the default values.
*/
-struct zt_chan_conf {
- struct zt_pvt chan;
+struct dahdi_chan_conf {
+ struct dahdi_pvt chan;
#ifdef HAVE_PRI
- struct zt_pri pri;
+ struct dahdi_pri pri;
#endif
#ifdef HAVE_SS7
- struct zt_ss7 ss7;
+ struct dahdi_ss7 ss7;
#endif
- ZT_PARAMS timing;
- int is_sig_auto; /*!< Use channel signalling from Zaptel? */
+ DAHDI_PARAMS timing;
+ int is_sig_auto; /*!< Use channel signalling from DAHDI? */
char smdi_port[SMDI_MAX_FILENAME_LEN];
};
-/*! returns a new zt_chan_conf with default values (by-value) */
-static struct zt_chan_conf zt_chan_conf_default(void) {
+/*! returns a new dahdi_chan_conf with default values (by-value) */
+static struct dahdi_chan_conf dahdi_chan_conf_default(void) {
/* recall that if a field is not included here it is initialized
* to 0 or equivalent
*/
- struct zt_chan_conf conf = {
+ struct dahdi_chan_conf conf = {
#ifdef HAVE_PRI
.pri = {
.nsf = PRI_NSF_NONE,
@@ -786,7 +781,7 @@ static struct zt_chan_conf zt_chan_conf_default(void) {
.cid_signalling = CID_SIG_BELL,
.cid_start = CID_START_RING,
- .zaptrcallerid = 0,
+ .dahditrcallerid = 0,
.use_callerid = 1,
.sig = -1,
.outsigmod = -1,
@@ -795,11 +790,7 @@ static struct zt_chan_conf zt_chan_conf_default(void) {
.tonezone = -1,
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
.echocancel.head.tap_length = 1,
-#else
- .echocancel = 1,
-#endif
.busycount = 3,
@@ -830,40 +821,40 @@ static struct zt_chan_conf zt_chan_conf_default(void) {
}
-static struct ast_channel *zt_request(const char *type, int format, void *data, int *cause);
-static int zt_digit_begin(struct ast_channel *ast, char digit);
-static int zt_digit_end(struct ast_channel *ast, char digit, unsigned int duration);
-static int zt_sendtext(struct ast_channel *c, const char *text);
-static int zt_call(struct ast_channel *ast, char *rdest, int timeout);
-static int zt_hangup(struct ast_channel *ast);
-static int zt_answer(struct ast_channel *ast);
-static struct ast_frame *zt_read(struct ast_channel *ast);
-static int zt_write(struct ast_channel *ast, struct ast_frame *frame);
-static struct ast_frame *zt_exception(struct ast_channel *ast);
-static int zt_indicate(struct ast_channel *chan, int condition, const void *data, size_t datalen);
-static int zt_fixup(struct ast_channel *oldchan, struct ast_channel *newchan);
-static int zt_setoption(struct ast_channel *chan, int option, void *data, int datalen);
-static int zt_func_read(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len);
-
-static const struct ast_channel_tech zap_tech = {
- .type = "Zap",
+static struct ast_channel *dahdi_request(const char *type, int format, void *data, int *cause);
+static int dahdi_digit_begin(struct ast_channel *ast, char digit);
+static int dahdi_digit_end(struct ast_channel *ast, char digit, unsigned int duration);
+static int dahdi_sendtext(struct ast_channel *c, const char *text);
+static int dahdi_call(struct ast_channel *ast, char *rdest, int timeout);
+static int dahdi_hangup(struct ast_channel *ast);
+static int dahdi_answer(struct ast_channel *ast);
+static struct ast_frame *dahdi_read(struct ast_channel *ast);
+static int dahdi_write(struct ast_channel *ast, struct ast_frame *frame);
+static struct ast_frame *dahdi_exception(struct ast_channel *ast);
+static int dahdi_indicate(struct ast_channel *chan, int condition, const void *data, size_t datalen);
+static int dahdi_fixup(struct ast_channel *oldchan, struct ast_channel *newchan);
+static int dahdi_setoption(struct ast_channel *chan, int option, void *data, int datalen);
+static int dahdi_func_read(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len);
+
+static const struct ast_channel_tech dahdi_tech = {
+ .type = "DAHDI",
.description = tdesc,
.capabilities = AST_FORMAT_SLINEAR | AST_FORMAT_ULAW | AST_FORMAT_ALAW,
- .requester = zt_request,
- .send_digit_begin = zt_digit_begin,
- .send_digit_end = zt_digit_end,
- .send_text = zt_sendtext,
- .call = zt_call,
- .hangup = zt_hangup,
- .answer = zt_answer,
- .read = zt_read,
- .write = zt_write,
- .bridge = zt_bridge,
- .exception = zt_exception,
- .indicate = zt_indicate,
- .fixup = zt_fixup,
- .setoption = zt_setoption,
- .func_channel_read = zt_func_read,
+ .requester = dahdi_request,
+ .send_digit_begin = dahdi_digit_begin,
+ .send_digit_end = dahdi_digit_end,
+ .send_text = dahdi_sendtext,
+ .call = dahdi_call,
+ .hangup = dahdi_hangup,
+ .answer = dahdi_answer,
+ .read = dahdi_read,
+ .write = dahdi_write,
+ .bridge = dahdi_bridge,
+ .exception = dahdi_exception,
+ .indicate = dahdi_indicate,
+ .fixup = dahdi_fixup,
+ .setoption = dahdi_setoption,
+ .func_channel_read = dahdi_func_read,
};
#ifdef HAVE_PRI
@@ -872,10 +863,10 @@ static const struct ast_channel_tech zap_tech = {
#define GET_CHANNEL(p) ((p)->channel)
#endif
-struct zt_pvt *round_robin[32];
+struct dahdi_pvt *round_robin[32];
#ifdef HAVE_PRI
-static inline int pri_grab(struct zt_pvt *pvt, struct zt_pri *pri)
+static inline int pri_grab(struct dahdi_pvt *pvt, struct dahdi_pri *pri)
{
int res;
/* Grab the lock first */
@@ -892,12 +883,12 @@ static inline int pri_grab(struct zt_pvt *pvt, struct zt_pri *pri)
#endif
#ifdef HAVE_SS7
-static inline void ss7_rel(struct zt_ss7 *ss7)
+static inline void ss7_rel(struct dahdi_ss7 *ss7)
{
ast_mutex_unlock(&ss7->lock);
}
-static inline int ss7_grab(struct zt_pvt *pvt, struct zt_ss7 *pri)
+static inline int ss7_grab(struct dahdi_pvt *pvt, struct dahdi_ss7 *pri)
{
int res;
/* Grab the lock first */
@@ -919,7 +910,7 @@ static inline int ss7_grab(struct zt_pvt *pvt, struct zt_ss7 *pri)
static int num_cadence = 4;
static int user_has_defined_cadences = 0;
-static struct zt_ring_cadence cadences[NUM_CADENCE_MAX] = {
+static struct dahdi_ring_cadence cadences[NUM_CADENCE_MAX] = {
{ { 125, 125, 2000, 4000 } }, /*!< Quick chirp followed by normal ring */
{ { 250, 250, 500, 1000, 250, 250, 500, 4000 } }, /*!< British style ring */
{ { 125, 125, 125, 125, 125, 4000 } }, /*!< Three short bursts */
@@ -940,10 +931,10 @@ static int cidrings[NUM_CADENCE_MAX] = {
#define ISTRUNK(p) ((p->sig == SIG_FXSLS) || (p->sig == SIG_FXSKS) || \
(p->sig == SIG_FXSGS) || (p->sig == SIG_PRI))
-#define CANBUSYDETECT(p) (ISTRUNK(p) || (p->sig & (SIG_EM | SIG_EM_E1 | SIG_SF)) /* || (p->sig & __ZT_SIG_FXO) */)
-#define CANPROGRESSDETECT(p) (ISTRUNK(p) || (p->sig & (SIG_EM | SIG_EM_E1 | SIG_SF)) /* || (p->sig & __ZT_SIG_FXO) */)
+#define CANBUSYDETECT(p) (ISTRUNK(p) || (p->sig & (SIG_EM | SIG_EM_E1 | SIG_SF)) /* || (p->sig & __DAHDI_SIG_FXO) */)
+#define CANPROGRESSDETECT(p) (ISTRUNK(p) || (p->sig & (SIG_EM | SIG_EM_E1 | SIG_SF)) /* || (p->sig & __DAHDI_SIG_FXO) */)
-static int zt_get_index(struct ast_channel *ast, struct zt_pvt *p, int nullok)
+static int dahdi_get_index(struct ast_channel *ast, struct dahdi_pvt *p, int nullok)
{
int res;
if (p->subs[0].owner == ast)
@@ -961,9 +952,9 @@ static int zt_get_index(struct ast_channel *ast, struct zt_pvt *p, int nullok)
}
#ifdef HAVE_PRI
-static void wakeup_sub(struct zt_pvt *p, int a, struct zt_pri *pri)
+static void wakeup_sub(struct dahdi_pvt *p, int a, struct dahdi_pri *pri)
#else
-static void wakeup_sub(struct zt_pvt *p, int a, void *pri)
+static void wakeup_sub(struct dahdi_pvt *p, int a, void *pri)
#endif
{
#ifdef HAVE_PRI
@@ -988,13 +979,13 @@ static void wakeup_sub(struct zt_pvt *p, int a, void *pri)
#endif
}
-static void zap_queue_frame(struct zt_pvt *p, struct ast_frame *f, void *data)
+static void dahdi_queue_frame(struct dahdi_pvt *p, struct ast_frame *f, void *data)
{
#ifdef HAVE_PRI
- struct zt_pri *pri = (struct zt_pri*) data;
+ struct dahdi_pri *pri = (struct dahdi_pri*) data;
#endif
#ifdef HAVE_SS7
- struct zt_ss7 *ss7 = (struct zt_ss7*) data;
+ struct dahdi_ss7 *ss7 = (struct dahdi_ss7*) data;
#endif
/* We must unlock the PRI to avoid the possibility of a deadlock */
#if defined(HAVE_PRI) || defined(HAVE_SS7)
@@ -1052,9 +1043,9 @@ static void zap_queue_frame(struct zt_pvt *p, struct ast_frame *f, void *data)
#endif
}
-static int restore_gains(struct zt_pvt *p);
+static int restore_gains(struct dahdi_pvt *p);
-static void swap_subs(struct zt_pvt *p, int a, int b)
+static void swap_subs(struct dahdi_pvt *p, int a, int b)
{
int tchan;
int tinthreeway;
@@ -1082,7 +1073,7 @@ static void swap_subs(struct zt_pvt *p, int a, int b)
wakeup_sub(p, b, NULL);
}
-static int zt_open(char *fn)
+static int dahdi_open(char *fn)
{
int fd;
int isnum;
@@ -1102,7 +1093,7 @@ static int zt_open(char *fn)
ast_log(LOG_WARNING, "Invalid channel number '%s'\n", fn);
return -1;
}
- fn = "/dev/zap/channel";
+ fn = "/dev/dahdi/channel";
}
fd = open(fn, O_RDWR | O_NONBLOCK);
if (fd < 0) {
@@ -1110,7 +1101,7 @@ static int zt_open(char *fn)
return -1;
}
if (chan) {
- if (ioctl(fd, ZT_SPECIFY, &chan)) {
+ if (ioctl(fd, DAHDI_SPECIFY, &chan)) {
x = errno;
close(fd);
errno = x;
@@ -1119,7 +1110,7 @@ static int zt_open(char *fn)
}
}
bs = READ_SIZE;
- if (ioctl(fd, ZT_SET_BLOCKSIZE, &bs) == -1) {
+ if (ioctl(fd, DAHDI_SET_BLOCKSIZE, &bs) == -1) {
ast_log(LOG_WARNING, "Unable to set blocksize '%d': %s\n", bs, strerror(errno));
x = errno;
close(fd);
@@ -1129,52 +1120,52 @@ static int zt_open(char *fn)
return fd;
}
-static void zt_close(int fd)
+static void dahdi_close(int fd)
{
if (fd > 0)
close(fd);
}
-static int zt_setlinear(int zfd, int linear)
+static int dahdi_setlinear(int zfd, int linear)
{
int res;
- res = ioctl(zfd, ZT_SETLINEAR, &linear);
+ res = ioctl(zfd, DAHDI_SETLINEAR, &linear);
if (res)
return res;
return 0;
}
-static int alloc_sub(struct zt_pvt *p, int x)
+static int alloc_sub(struct dahdi_pvt *p, int x)
{
- ZT_BUFFERINFO bi;
+ DAHDI_BUFFERINFO bi;
int res;
if (p->subs[x].zfd >= 0) {
ast_log(LOG_WARNING, "%s subchannel of %d already in use\n", subnames[x], p->channel);
return -1;
}
- p->subs[x].zfd = zt_open("/dev/zap/pseudo");
+ p->subs[x].zfd = dahdi_open("/dev/dahdi/pseudo");
if (p->subs[x].zfd <= -1) {
ast_log(LOG_WARNING, "Unable to open pseudo channel: %s\n", strerror(errno));
return -1;
}
- res = ioctl(p->subs[x].zfd, ZT_GET_BUFINFO, &bi);
+ res = ioctl(p->subs[x].zfd, DAHDI_GET_BUFINFO, &bi);
if (!res) {
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = numbufs;
- res = ioctl(p->subs[x].zfd, ZT_SET_BUFINFO, &bi);
+ res = ioctl(p->subs[x].zfd, DAHDI_SET_BUFINFO, &bi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on channel %d\n", x);
}
} else
ast_log(LOG_WARNING, "Unable to check buffer policy on channel %d\n", x);
- if (ioctl(p->subs[x].zfd, ZT_CHANNO, &p->subs[x].chan) == 1) {
+ if (ioctl(p->subs[x].zfd, DAHDI_CHANNO, &p->subs[x].chan) == 1) {
ast_log(LOG_WARNING, "Unable to get channel number for pseudo channel on FD %d\n", p->subs[x].zfd);
- zt_close(p->subs[x].zfd);
+ dahdi_close(p->subs[x].zfd);
p->subs[x].zfd = -1;
return -1;
}
@@ -1182,7 +1173,7 @@ static int alloc_sub(struct zt_pvt *p, int x)
return 0;
}
-static int unalloc_sub(struct zt_pvt *p, int x)
+static int unalloc_sub(struct dahdi_pvt *p, int x)
{
if (!x) {
ast_log(LOG_WARNING, "Trying to unalloc the real channel %d?!?\n", p->channel);
@@ -1190,7 +1181,7 @@ static int unalloc_sub(struct zt_pvt *p, int x)
}
ast_debug(1, "Released sub %d of channel %d\n", x, p->channel);
if (p->subs[x].zfd > -1) {
- zt_close(p->subs[x].zfd);
+ dahdi_close(p->subs[x].zfd);
}
p->subs[x].zfd = -1;
p->subs[x].linear = 0;
@@ -1205,22 +1196,22 @@ static int unalloc_sub(struct zt_pvt *p, int x)
static int digit_to_dtmfindex(char digit)
{
if (isdigit(digit))
- return ZT_TONE_DTMF_BASE + (digit - '0');
+ return DAHDI_TONE_DTMF_BASE + (digit - '0');
else if (digit >= 'A' && digit <= 'D')
- return ZT_TONE_DTMF_A + (digit - 'A');
+ return DAHDI_TONE_DTMF_A + (digit - 'A');
else if (digit >= 'a' && digit <= 'd')
- return ZT_TONE_DTMF_A + (digit - 'a');
+ return DAHDI_TONE_DTMF_A + (digit - 'a');
else if (digit == '*')
- return ZT_TONE_DTMF_s;
+ return DAHDI_TONE_DTMF_s;
else if (digit == '#')
- return ZT_TONE_DTMF_p;
+ return DAHDI_TONE_DTMF_p;
else
return -1;
}
-static int zt_digit_begin(struct ast_channel *chan, char digit)
+static int dahdi_digit_begin(struct ast_channel *chan, char digit)
{
- struct zt_pvt *pvt;
+ struct dahdi_pvt *pvt;
int index;
int dtmf = -1;
@@ -1228,7 +1219,7 @@ static int zt_digit_begin(struct ast_channel *chan, char digit)
ast_mutex_lock(&pvt->lock);
- index = zt_get_index(chan, pvt, 0);
+ index = dahdi_get_index(chan, pvt, 0);
if ((index != SUB_REAL) || !pvt->owner)
goto out;
@@ -1255,16 +1246,16 @@ static int zt_digit_begin(struct ast_channel *chan, char digit)
if ((dtmf = digit_to_dtmfindex(digit)) == -1)
goto out;
- if (pvt->pulse || ioctl(pvt->subs[SUB_REAL].zfd, ZT_SENDTONE, &dtmf)) {
+ if (pvt->pulse || ioctl(pvt->subs[SUB_REAL].zfd, DAHDI_SENDTONE, &dtmf)) {
int res;
- ZT_DIAL_OPERATION zo = {
- .op = ZT_DIAL_OP_APPEND,
+ DAHDI_DIAL_OPERATION zo = {
+ .op = DAHDI_DIAL_OP_APPEND,
};
zo.dialstr[0] = 'T';
zo.dialstr[1] = digit;
zo.dialstr[2] = '\0';
- if ((res = ioctl(pvt->subs[SUB_REAL].zfd, ZT_DIAL, &zo)))
+ if ((res = ioctl(pvt->subs[SUB_REAL].zfd, DAHDI_DIAL, &zo)))
ast_log(LOG_WARNING, "Couldn't dial digit %c\n", digit);
else
pvt->dialing = 1;
@@ -1280,9 +1271,9 @@ out:
return 0;
}
-static int zt_digit_end(struct ast_channel *chan, char digit, unsigned int duration)
+static int dahdi_digit_end(struct ast_channel *chan, char digit, unsigned int duration)
{
- struct zt_pvt *pvt;
+ struct dahdi_pvt *pvt;
int res = 0;
int index;
int x;
@@ -1291,7 +1282,7 @@ static int zt_digit_end(struct ast_channel *chan, char digit, unsigned int durat
ast_mutex_lock(&pvt->lock);
- index = zt_get_index(chan, pvt, 0);
+ index = dahdi_get_index(chan, pvt, 0);
if ((index != SUB_REAL) || !pvt->owner || pvt->pulse)
goto out;
@@ -1306,7 +1297,7 @@ static int zt_digit_end(struct ast_channel *chan, char digit, unsigned int durat
if (pvt->begindigit) {
x = -1;
ast_debug(1, "Ending VLDTMF digit '%c'\n", digit);
- res = ioctl(pvt->subs[SUB_REAL].zfd, ZT_SENDTONE, &x);
+ res = ioctl(pvt->subs[SUB_REAL].zfd, DAHDI_SENDTONE, &x);
pvt->dialing = 0;
pvt->begindigit = 0;
}
@@ -1343,13 +1334,13 @@ static struct {
int alarm;
char *name;
} alarms[] = {
- { ZT_ALARM_RED, "Red Alarm" },
- { ZT_ALARM_YELLOW, "Yellow Alarm" },
- { ZT_ALARM_BLUE, "Blue Alarm" },
- { ZT_ALARM_RECOVER, "Recovering" },
- { ZT_ALARM_LOOPBACK, "Loopback" },
- { ZT_ALARM_NOTOPEN, "Not Open" },
- { ZT_ALARM_NONE, "None" },
+ { DAHDI_ALARM_RED, "Red Alarm" },
+ { DAHDI_ALARM_YELLOW, "Yellow Alarm" },
+ { DAHDI_ALARM_BLUE, "Blue Alarm" },
+ { DAHDI_ALARM_RECOVER, "Recovering" },
+ { DAHDI_ALARM_LOOPBACK, "Loopback" },
+ { DAHDI_ALARM_NOTOPEN, "Not Open" },
+ { DAHDI_ALARM_NONE, "None" },
};
static char *alarm2str(int alarm)
@@ -1381,7 +1372,7 @@ static char *dialplan2str(int dialplan)
}
#endif
-static char *zap_sig2str(int sig)
+static char *dahdi_sig2str(int sig)
{
static char buf[256];
switch (sig) {
@@ -1447,35 +1438,35 @@ static char *zap_sig2str(int sig)
}
}
-#define sig2str zap_sig2str
+#define sig2str dahdi_sig2str
-static int conf_add(struct zt_pvt *p, struct zt_subchannel *c, int index, int slavechannel)
+static int conf_add(struct dahdi_pvt *p, struct dahdi_subchannel *c, int index, int slavechannel)
{
/* If the conference already exists, and we're already in it
don't bother doing anything */
- ZT_CONFINFO zi;
+ DAHDI_CONFINFO zi;
memset(&zi, 0, sizeof(zi));
zi.chan = 0;
if (slavechannel > 0) {
/* If we have only one slave, do a digital mon */
- zi.confmode = ZT_CONF_DIGITALMON;
+ zi.confmode = DAHDI_CONF_DIGITALMON;
zi.confno = slavechannel;
} else {
if (!index) {
/* Real-side and pseudo-side both participate in conference */
- zi.confmode = ZT_CONF_REALANDPSEUDO | ZT_CONF_TALKER | ZT_CONF_LISTENER |
- ZT_CONF_PSEUDO_TALKER | ZT_CONF_PSEUDO_LISTENER;
+ zi.confmode = DAHDI_CONF_REALANDPSEUDO | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER |
+ DAHDI_CONF_PSEUDO_TALKER | DAHDI_CONF_PSEUDO_LISTENER;
} else
- zi.confmode = ZT_CONF_CONF | ZT_CONF_TALKER | ZT_CONF_LISTENER;
+ zi.confmode = DAHDI_CONF_CONF | DAHDI_CONF_TALKER | DAHDI_CONF_LISTENER;
zi.confno = p->confno;
}
if ((zi.confno == c->curconf.confno) && (zi.confmode == c->curconf.confmode))
return 0;
if (c->zfd < 0)
return 0;
- if (ioctl(c->zfd, ZT_SETCONF, &zi)) {
+ if (ioctl(c->zfd, DAHDI_SETCONF, &zi)) {
ast_log(LOG_WARNING, "Failed to add %d to conference %d/%d\n", c->zfd, zi.confmode, zi.confno);
return -1;
}
@@ -1487,20 +1478,20 @@ static int conf_add(struct zt_pvt *p, struct zt_subchannel *c, int index, int sl
return 0;
}
-static int isourconf(struct zt_pvt *p, struct zt_subchannel *c)
+static int isourconf(struct dahdi_pvt *p, struct dahdi_subchannel *c)
{
/* If they're listening to our channel, they're ours */
- if ((p->channel == c->curconf.confno) && (c->curconf.confmode == ZT_CONF_DIGITALMON))
+ if ((p->channel == c->curconf.confno) && (c->curconf.confmode == DAHDI_CONF_DIGITALMON))
return 1;
/* If they're a talker on our (allocated) conference, they're ours */
- if ((p->confno > 0) && (p->confno == c->curconf.confno) && (c->curconf.confmode & ZT_CONF_TALKER))
+ if ((p->confno > 0) && (p->confno == c->curconf.confno) && (c->curconf.confmode & DAHDI_CONF_TALKER))
return 1;
return 0;
}
-static int conf_del(struct zt_pvt *p, struct zt_subchannel *c, int index)
+static int conf_del(struct dahdi_pvt *p, struct dahdi_subchannel *c, int index)
{
- ZT_CONFINFO zi;
+ DAHDI_CONFINFO zi;
if (/* Can't delete if there's no zfd */
(c->zfd < 0) ||
/* Don't delete from the conference if it's not our conference */
@@ -1511,7 +1502,7 @@ static int conf_del(struct zt_pvt *p, struct zt_subchannel *c, int index)
zi.chan = 0;
zi.confno = 0;
zi.confmode = 0;
- if (ioctl(c->zfd, ZT_SETCONF, &zi)) {
+ if (ioctl(c->zfd, DAHDI_SETCONF, &zi)) {
ast_log(LOG_WARNING, "Failed to drop %d from conference %d/%d\n", c->zfd, c->curconf.confmode, c->curconf.confno);
return -1;
}
@@ -1520,11 +1511,11 @@ static int conf_del(struct zt_pvt *p, struct zt_subchannel *c, int index)
return 0;
}
-static int isslavenative(struct zt_pvt *p, struct zt_pvt **out)
+static int isslavenative(struct dahdi_pvt *p, struct dahdi_pvt **out)
{
int x;
int useslavenative;
- struct zt_pvt *slave = NULL;
+ struct dahdi_pvt *slave = NULL;
/* Start out optimistic */
useslavenative = 1;
/* Update conference state in a stateless fashion */
@@ -1564,25 +1555,25 @@ static int isslavenative(struct zt_pvt *p, struct zt_pvt **out)
return useslavenative;
}
-static int reset_conf(struct zt_pvt *p)
+static int reset_conf(struct dahdi_pvt *p)
{
- ZT_CONFINFO zi;
+ DAHDI_CONFINFO zi;
memset(&zi, 0, sizeof(zi));
p->confno = -1;
memset(&p->subs[SUB_REAL].curconf, 0, sizeof(p->subs[SUB_REAL].curconf));
if (p->subs[SUB_REAL].zfd > -1) {
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_SETCONF, &zi))
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETCONF, &zi))
ast_log(LOG_WARNING, "Failed to reset conferencing on channel %d!\n", p->channel);
}
return 0;
}
-static int update_conf(struct zt_pvt *p)
+static int update_conf(struct dahdi_pvt *p)
{
int needconf = 0;
int x;
int useslavenative;
- struct zt_pvt *slave = NULL;
+ struct dahdi_pvt *slave = NULL;
useslavenative = isslavenative(p, &slave);
/* Start with the obvious, general stuff */
@@ -1633,7 +1624,7 @@ static int update_conf(struct zt_pvt *p)
return 0;
}
-static void zt_enable_ec(struct zt_pvt *p)
+static void dahdi_enable_ec(struct dahdi_pvt *p)
{
int x;
int res;
@@ -1647,23 +1638,14 @@ static void zt_enable_ec(struct zt_pvt *p)
ast_debug(1, "Echo cancellation isn't required on digital connection\n");
return;
}
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
if (p->echocancel.head.tap_length) {
-#else
- if (p->echocancel) {
-#endif
if ((p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP) || (p->sig == SIG_PRI) || (p->sig == SIG_SS7)) {
x = 1;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &x);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &x);
if (res)
ast_log(LOG_WARNING, "Unable to enable audio mode on channel %d (%s)\n", p->channel, strerror(errno));
}
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_ECHOCANCEL_PARAMS, &p->echocancel);
-#else
- x = p->echocancel;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_ECHOCANCEL, &x);
-#endif
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_ECHOCANCEL_PARAMS, &p->echocancel);
if (res) {
ast_log(LOG_WARNING, "Unable to enable echo cancellation on channel %d (%s)\n", p->channel, strerror(errno));
} else {
@@ -1674,14 +1656,14 @@ static void zt_enable_ec(struct zt_pvt *p)
ast_debug(1, "No echo cancellation requested\n");
}
-static void zt_train_ec(struct zt_pvt *p)
+static void dahdi_train_ec(struct dahdi_pvt *p)
{
int x;
int res;
if (p && p->echocanon && p->echotraining) {
x = p->echotraining;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_ECHOTRAIN, &x);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_ECHOTRAIN, &x);
if (res)
ast_log(LOG_WARNING, "Unable to request echo training on channel %d\n", p->channel);
else
@@ -1691,20 +1673,14 @@ static void zt_train_ec(struct zt_pvt *p)
}
}
-static void zt_disable_ec(struct zt_pvt *p)
+static void dahdi_disable_ec(struct dahdi_pvt *p)
{
int res;
if (p->echocanon) {
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
- struct zt_echocanparams ecp = { .tap_length = 0 };
-
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_ECHOCANCEL_PARAMS, &ecp);
-#else
- int x = 0;
+ struct dahdi_echocanparams ecp = { .tap_length = 0 };
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_ECHOCANCEL, &x);
-#endif
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_ECHOCANCEL_PARAMS, &ecp);
if (res)
ast_log(LOG_WARNING, "Unable to disable echo cancellation on channel %d\n", p->channel);
@@ -1715,14 +1691,14 @@ static void zt_disable_ec(struct zt_pvt *p)
p->echocanon = 0;
}
-static void fill_txgain(struct zt_gains *g, float gain, int law)
+static void fill_txgain(struct dahdi_gains *g, float gain, int law)
{
int j;
int k;
float linear_gain = pow(10.0, gain / 20.0);
switch (law) {
- case ZT_LAW_ALAW:
+ case DAHDI_LAW_ALAW:
for (j = 0; j < (sizeof(g->txgain) / sizeof(g->txgain[0])); j++) {
if (gain) {
k = (int) (((float) AST_ALAW(j)) * linear_gain);
@@ -1734,7 +1710,7 @@ static void fill_txgain(struct zt_gains *g, float gain, int law)
}
}
break;
- case ZT_LAW_MULAW:
+ case DAHDI_LAW_MULAW:
for (j = 0; j < (sizeof(g->txgain) / sizeof(g->txgain[0])); j++) {
if (gain) {
k = (int) (((float) AST_MULAW(j)) * linear_gain);
@@ -1749,14 +1725,14 @@ static void fill_txgain(struct zt_gains *g, float gain, int law)
}
}
-static void fill_rxgain(struct zt_gains *g, float gain, int law)
+static void fill_rxgain(struct dahdi_gains *g, float gain, int law)
{
int j;
int k;
float linear_gain = pow(10.0, gain / 20.0);
switch (law) {
- case ZT_LAW_ALAW:
+ case DAHDI_LAW_ALAW:
for (j = 0; j < (sizeof(g->rxgain) / sizeof(g->rxgain[0])); j++) {
if (gain) {
k = (int) (((float) AST_ALAW(j)) * linear_gain);
@@ -1768,7 +1744,7 @@ static void fill_rxgain(struct zt_gains *g, float gain, int law)
}
}
break;
- case ZT_LAW_MULAW:
+ case DAHDI_LAW_MULAW:
for (j = 0; j < (sizeof(g->rxgain) / sizeof(g->rxgain[0])); j++) {
if (gain) {
k = (int) (((float) AST_MULAW(j)) * linear_gain);
@@ -1785,12 +1761,12 @@ static void fill_rxgain(struct zt_gains *g, float gain, int law)
static int set_actual_txgain(int fd, int chan, float gain, int law)
{
- struct zt_gains g;
+ struct dahdi_gains g;
int res;
memset(&g, 0, sizeof(g));
g.chan = chan;
- res = ioctl(fd, ZT_GETGAINS, &g);
+ res = ioctl(fd, DAHDI_GETGAINS, &g);
if (res) {
ast_debug(1, "Failed to read gains: %s\n", strerror(errno));
return res;
@@ -1798,17 +1774,17 @@ static int set_actual_txgain(int fd, int chan, float gain, int law)
fill_txgain(&g, gain, law);
- return ioctl(fd, ZT_SETGAINS, &g);
+ return ioctl(fd, DAHDI_SETGAINS, &g);
}
static int set_actual_rxgain(int fd, int chan, float gain, int law)
{
- struct zt_gains g;
+ struct dahdi_gains g;
int res;
memset(&g, 0, sizeof(g));
g.chan = chan;
- res = ioctl(fd, ZT_GETGAINS, &g);
+ res = ioctl(fd, DAHDI_GETGAINS, &g);
if (res) {
ast_debug(1, "Failed to read gains: %s\n", strerror(errno));
return res;
@@ -1816,7 +1792,7 @@ static int set_actual_rxgain(int fd, int chan, float gain, int law)
fill_rxgain(&g, gain, law);
- return ioctl(fd, ZT_SETGAINS, &g);
+ return ioctl(fd, DAHDI_SETGAINS, &g);
}
static int set_actual_gain(int fd, int chan, float rxgain, float txgain, int law)
@@ -1824,7 +1800,7 @@ static int set_actual_gain(int fd, int chan, float rxgain, float txgain, int law
return set_actual_txgain(fd, chan, txgain, law) | set_actual_rxgain(fd, chan, rxgain, law);
}
-static int bump_gains(struct zt_pvt *p)
+static int bump_gains(struct dahdi_pvt *p)
{
int res;
@@ -1838,7 +1814,7 @@ static int bump_gains(struct zt_pvt *p)
return 0;
}
-static int restore_gains(struct zt_pvt *p)
+static int restore_gains(struct dahdi_pvt *p)
{
int res;
@@ -1851,48 +1827,48 @@ static int restore_gains(struct zt_pvt *p)
return 0;
}
-static inline int zt_set_hook(int fd, int hs)
+static inline int dahdi_set_hook(int fd, int hs)
{
int x, res;
x = hs;
- res = ioctl(fd, ZT_HOOK, &x);
+ res = ioctl(fd, DAHDI_HOOK, &x);
if (res < 0) {
if (errno == EINPROGRESS)
return 0;
- ast_log(LOG_WARNING, "zt hook failed: %s\n", strerror(errno));
+ ast_log(LOG_WARNING, "DAHDI hook failed: %s\n", strerror(errno));
}
return res;
}
-static inline int zt_confmute(struct zt_pvt *p, int muted)
+static inline int dahdi_confmute(struct dahdi_pvt *p, int muted)
{
int x, y, res;
x = muted;
if ((p->sig == SIG_PRI) || (p->sig == SIG_SS7) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) {
y = 1;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &y);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &y);
if (res)
ast_log(LOG_WARNING, "Unable to set audio mode on '%d'\n", p->channel);
}
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_CONFMUTE, &x);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_CONFMUTE, &x);
if (res < 0)
- ast_log(LOG_WARNING, "zt confmute(%d) failed on channel %d: %s\n", muted, p->channel, strerror(errno));
+ ast_log(LOG_WARNING, "DAHDI confmute(%d) failed on channel %d: %s\n", muted, p->channel, strerror(errno));
return res;
}
-static int save_conference(struct zt_pvt *p)
+static int save_conference(struct dahdi_pvt *p)
{
- struct zt_confinfo c;
+ struct dahdi_confinfo c;
int res;
if (p->saveconf.confmode) {
ast_log(LOG_WARNING, "Can't save conference -- already in use\n");
return -1;
}
p->saveconf.chan = 0;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_GETCONF, &p->saveconf);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_GETCONF, &p->saveconf);
if (res) {
ast_log(LOG_WARNING, "Unable to get conference info: %s\n", strerror(errno));
p->saveconf.confmode = 0;
@@ -1900,8 +1876,8 @@ static int save_conference(struct zt_pvt *p)
}
c.chan = 0;
c.confno = 0;
- c.confmode = ZT_CONF_NORMAL;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_SETCONF, &c);
+ c.confmode = DAHDI_CONF_NORMAL;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETCONF, &c);
if (res) {
ast_log(LOG_WARNING, "Unable to set conference info: %s\n", strerror(errno));
return -1;
@@ -1960,11 +1936,11 @@ static void notify_message(char *mailbox_full, int thereornot)
}
}
-static int restore_conference(struct zt_pvt *p)
+static int restore_conference(struct dahdi_pvt *p)
{
int res;
if (p->saveconf.confmode) {
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_SETCONF, &p->saveconf);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETCONF, &p->saveconf);
p->saveconf.confmode = 0;
if (res) {
ast_log(LOG_WARNING, "Unable to restore conference info: %s\n", strerror(errno));
@@ -1975,9 +1951,9 @@ static int restore_conference(struct zt_pvt *p)
return 0;
}
-static int send_callerid(struct zt_pvt *p);
+static int send_callerid(struct dahdi_pvt *p);
-static int send_cwcidspill(struct zt_pvt *p)
+static int send_cwcidspill(struct dahdi_pvt *p)
{
p->callwaitcas = 0;
p->cidcwexpire = 0;
@@ -1992,7 +1968,7 @@ static int send_cwcidspill(struct zt_pvt *p)
return 0;
}
-static int has_voicemail(struct zt_pvt *p)
+static int has_voicemail(struct dahdi_pvt *p)
{
int new_msgs;
struct ast_event *event;
@@ -2018,14 +1994,14 @@ static int has_voicemail(struct zt_pvt *p)
return new_msgs;
}
-static int send_callerid(struct zt_pvt *p)
+static int send_callerid(struct dahdi_pvt *p)
{
/* Assumes spill in p->cidspill, p->cidlen in length and we're p->cidpos into it */
int res;
/* Take out of linear mode if necessary */
if (p->subs[SUB_REAL].linear) {
p->subs[SUB_REAL].linear = 0;
- zt_setlinear(p->subs[SUB_REAL].zfd, 0);
+ dahdi_setlinear(p->subs[SUB_REAL].zfd, 0);
}
while (p->cidpos < p->cidlen) {
res = write(p->subs[SUB_REAL].zfd, p->cidspill + p->cidpos, p->cidlen - p->cidpos);
@@ -2051,9 +2027,9 @@ static int send_callerid(struct zt_pvt *p)
return 0;
}
-static int zt_callwait(struct ast_channel *ast)
+static int dahdi_callwait(struct ast_channel *ast)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
p->callwaitingrepeat = CALLWAITING_REPEAT_SAMPLES;
if (p->cidspill) {
ast_log(LOG_WARNING, "Spill already exists?!?\n");
@@ -2091,9 +2067,9 @@ static unsigned char cid_pres2ss7screen(int cid_pres)
}
#endif
-static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
+static int dahdi_call(struct ast_channel *ast, char *rdest, int timeout)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
int x, res, index,mysig;
char *c, *n, *l;
#ifdef HAVE_PRI
@@ -2109,7 +2085,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
return 0;
}
if ((ast->_state != AST_STATE_DOWN) && (ast->_state != AST_STATE_RESERVED)) {
- ast_log(LOG_WARNING, "zt_call called on %s, neither down nor reserved\n", ast->name);
+ ast_log(LOG_WARNING, "dahdi_call called on %s, neither down nor reserved\n", ast->name);
ast_mutex_unlock(&p->lock);
return -1;
}
@@ -2121,8 +2097,8 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
ast_mutex_unlock(&p->lock);
return 0;
}
- x = ZT_FLUSH_READ | ZT_FLUSH_WRITE;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_FLUSH, &x);
+ x = DAHDI_FLUSH_READ | DAHDI_FLUSH_WRITE;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_FLUSH, &x);
if (res)
ast_log(LOG_WARNING, "Unable to flush input on channel %d\n", p->channel);
p->outgoing = 1;
@@ -2157,11 +2133,11 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
}
/* Choose proper cadence */
if ((p->distinctivering > 0) && (p->distinctivering <= num_cadence)) {
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_SETCADENCE, &cadences[p->distinctivering - 1]))
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETCADENCE, &cadences[p->distinctivering - 1]))
ast_log(LOG_WARNING, "Unable to set distinctive ring cadence %d on '%s'\n", p->distinctivering, ast->name);
p->cidrings = cidrings[p->distinctivering - 1];
} else {
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_SETCADENCE, NULL))
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETCADENCE, NULL))
ast_log(LOG_WARNING, "Unable to reset default ring on '%s'\n", ast->name);
p->cidrings = p->sendcalleridafter;
}
@@ -2175,14 +2151,14 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
c = NULL;
}
if (c) {
- p->dop.op = ZT_DIAL_OP_REPLACE;
+ p->dop.op = DAHDI_DIAL_OP_REPLACE;
snprintf(p->dop.dialstr, sizeof(p->dop.dialstr), "Tw%s", c);
ast_debug(1, "FXO: setup deferred dialstring: %s\n", c);
} else {
p->dop.dialstr[0] = '\0';
}
- x = ZT_RING;
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x) && (errno != EINPROGRESS)) {
+ x = DAHDI_RING;
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x) && (errno != EINPROGRESS)) {
ast_log(LOG_WARNING, "Unable to ring phone: %s\n", strerror(errno));
ast_mutex_unlock(&p->lock);
return -1;
@@ -2200,12 +2176,12 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
else
p->callwait_name[0] = '\0';
/* Call waiting tone instead */
- if (zt_callwait(ast)) {
+ if (dahdi_callwait(ast)) {
ast_mutex_unlock(&p->lock);
return -1;
}
/* Make ring-back */
- if (tone_zone_play_tone(p->subs[SUB_CALLWAIT].zfd, ZT_TONE_RINGTONE))
+ if (tone_zone_play_tone(p->subs[SUB_CALLWAIT].zfd, DAHDI_TONE_RINGTONE))
ast_log(LOG_WARNING, "Unable to generate call-wait ring-back on channel %s\n", ast->name);
}
@@ -2220,7 +2196,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
else
p->lastcid_name[0] = '\0';
ast_setstate(ast, AST_STATE_RINGING);
- index = zt_get_index(ast, p, 0);
+ index = dahdi_get_index(ast, p, 0);
if (index > -1) {
p->subs[index].needringing = 1;
}
@@ -2257,8 +2233,8 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
/* Start the trunk, if not GR-303 */
if (!p->pri) {
#endif
- x = ZT_START;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ x = DAHDI_START;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
if (res < 0) {
if (errno != EINPROGRESS) {
ast_log(LOG_WARNING, "Unable to start channel: %s\n", strerror(errno));
@@ -2270,7 +2246,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
}
#endif
ast_debug(1, "Dialing '%s'\n", c);
- p->dop.op = ZT_DIAL_OP_REPLACE;
+ p->dop.op = DAHDI_DIAL_OP_REPLACE;
c += p->stripmsd;
@@ -2337,9 +2313,9 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
} else
p->echobreak = 0;
if (!res) {
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop)) {
- x = ZT_ONHOOK;
- ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop)) {
+ x = DAHDI_ONHOOK;
+ ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
ast_log(LOG_WARNING, "Dialing failed on channel %d: %s\n", p->channel, strerror(errno));
ast_mutex_unlock(&p->lock);
return -1;
@@ -2536,7 +2512,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
return -1;
}
if (mysig != SIG_FXSKS) {
- p->dop.op = ZT_DIAL_OP_REPLACE;
+ p->dop.op = DAHDI_DIAL_OP_REPLACE;
s = strchr(c + p->stripmsd, 'w');
if (s) {
if (strlen(s) > 1)
@@ -2561,11 +2537,8 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
}
if (!(sr = pri_sr_new())) {
ast_log(LOG_WARNING, "Failed to allocate setup request channel %d\n", p->channel);
- pri_destroycall(p->pri->pri, p->call);
- p->call = NULL;
pri_rel(p->pri);
ast_mutex_unlock(&p->lock);
- return -1;
}
if (p->bearer || (mysig == SIG_FXSKS)) {
if (p->bearer) {
@@ -2591,7 +2564,7 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
pri_sr_set_channel(sr, p->bearer ? PVT_TO_CHANNEL(p->bearer) : PVT_TO_CHANNEL(p), exclusive, 1);
pri_sr_set_bearer(sr, p->digital ? PRI_TRANS_CAP_DIGITAL : ast->transfercapability,
(p->digital ? -1 :
- ((p->law == ZT_LAW_ALAW) ? PRI_LAYER_1_ALAW : PRI_LAYER_1_ULAW)));
+ ((p->law == DAHDI_LAW_ALAW) ? PRI_LAYER_1_ALAW : PRI_LAYER_1_ULAW)));
if (p->pri->facilityenable)
pri_facility_enable(p->pri->pri);
@@ -2776,9 +2749,9 @@ static int zt_call(struct ast_channel *ast, char *rdest, int timeout)
return 0;
}
-static void destroy_zt_pvt(struct zt_pvt **pvt)
+static void destroy_dahdi_pvt(struct dahdi_pvt **pvt)
{
- struct zt_pvt *p = *pvt;
+ struct dahdi_pvt *p = *pvt;
/* Remove channel from the list */
if (p->prev)
p->prev->next = p->next;
@@ -2795,7 +2768,7 @@ static void destroy_zt_pvt(struct zt_pvt **pvt)
*pvt = NULL;
}
-static int destroy_channel(struct zt_pvt *prev, struct zt_pvt *cur, int now)
+static int destroy_channel(struct dahdi_pvt *prev, struct dahdi_pvt *cur, int now)
{
int owned = 0;
int i = 0;
@@ -2825,9 +2798,9 @@ static int destroy_channel(struct zt_pvt *prev, struct zt_pvt *cur, int now)
ifend = NULL;
}
if (cur->subs[SUB_REAL].zfd > -1) {
- zt_close(cur->subs[SUB_REAL].zfd);
+ dahdi_close(cur->subs[SUB_REAL].zfd);
}
- destroy_zt_pvt(&cur);
+ destroy_dahdi_pvt(&cur);
}
} else {
if (prev) {
@@ -2844,26 +2817,26 @@ static int destroy_channel(struct zt_pvt *prev, struct zt_pvt *cur, int now)
ifend = NULL;
}
if (cur->subs[SUB_REAL].zfd > -1) {
- zt_close(cur->subs[SUB_REAL].zfd);
+ dahdi_close(cur->subs[SUB_REAL].zfd);
}
- destroy_zt_pvt(&cur);
+ destroy_dahdi_pvt(&cur);
}
return 0;
}
#ifdef HAVE_PRI
-static char *zap_send_keypad_facility_app = "ZapSendKeypadFacility";
+static char *dahdi_send_keypad_facility_app = "DAHDISendKeypadFacility";
-static char *zap_send_keypad_facility_synopsis = "Send digits out of band over a PRI";
+static char *dahdi_send_keypad_facility_synopsis = "Send digits out of band over a PRI";
-static char *zap_send_keypad_facility_descrip =
-" ZapSendKeypadFacility(): This application will send the given string of digits in a Keypad Facility\n"
+static char *dahdi_send_keypad_facility_descrip =
+" DAHDISendKeypadFacility(): This application will send the given string of digits in a Keypad Facility\n"
" IE over the current channel.\n";
-static int zap_send_keypad_facility_exec(struct ast_channel *chan, void *data)
+static int dahdi_send_keypad_facility_exec(struct ast_channel *chan, void *data)
{
/* Data will be our digit string */
- struct zt_pvt *p;
+ struct dahdi_pvt *p;
char *digits = (char *) data;
if (ast_strlen_zero(digits)) {
@@ -2871,7 +2844,7 @@ static int zap_send_keypad_facility_exec(struct ast_channel *chan, void *data)
return -1;
}
- p = (struct zt_pvt *)chan->tech_pvt;
+ p = (struct dahdi_pvt *)chan->tech_pvt;
if (!p) {
ast_debug(1, "Unable to find technology private\n");
@@ -2900,7 +2873,7 @@ static int zap_send_keypad_facility_exec(struct ast_channel *chan, void *data)
return 0;
}
-static int pri_is_up(struct zt_pri *pri)
+static int pri_is_up(struct dahdi_pri *pri)
{
int x;
for (x = 0; x < NUM_DCHANS; x++) {
@@ -2910,7 +2883,7 @@ static int pri_is_up(struct zt_pri *pri)
return 0;
}
-static int pri_assign_bearer(struct zt_pvt *crv, struct zt_pri *pri, struct zt_pvt *bearer)
+static int pri_assign_bearer(struct dahdi_pvt *crv, struct dahdi_pri *pri, struct dahdi_pvt *bearer)
{
bearer->owner = &inuse;
bearer->realcall = crv;
@@ -2940,7 +2913,7 @@ static char *pri_order(int level)
}
/* Returns fd of the active dchan */
-static int pri_active_dchan_fd(struct zt_pri *pri)
+static int pri_active_dchan_fd(struct dahdi_pri *pri)
{
int x = -1;
@@ -2952,7 +2925,7 @@ static int pri_active_dchan_fd(struct zt_pri *pri)
return pri->fds[x];
}
-static int pri_find_dchan(struct zt_pri *pri)
+static int pri_find_dchan(struct dahdi_pri *pri)
{
int oldslot = -1;
struct pri *old;
@@ -2979,17 +2952,17 @@ static int pri_find_dchan(struct zt_pri *pri)
}
#endif
-static int zt_hangup(struct ast_channel *ast)
+static int dahdi_hangup(struct ast_channel *ast)
{
int res;
int index,x, law;
- /*static int restore_gains(struct zt_pvt *p);*/
- struct zt_pvt *p = ast->tech_pvt;
- struct zt_pvt *tmp = NULL;
- struct zt_pvt *prev = NULL;
- ZT_PARAMS par;
+ /*static int restore_gains(struct dahdi_pvt *p);*/
+ struct dahdi_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *tmp = NULL;
+ struct dahdi_pvt *prev = NULL;
+ DAHDI_PARAMS par;
- ast_debug(1, "zt_hangup(%s)\n", ast->name);
+ ast_debug(1, "dahdi_hangup(%s)\n", ast->name);
if (!ast->tech_pvt) {
ast_log(LOG_WARNING, "Asked to hangup channel not connected\n");
return 0;
@@ -2997,7 +2970,7 @@ static int zt_hangup(struct ast_channel *ast)
ast_mutex_lock(&p->lock);
- index = zt_get_index(ast, p, 1);
+ index = dahdi_get_index(ast, p, 1);
if ((p->sig == SIG_PRI) || (p->sig == SIG_SS7) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) {
x = 1;
@@ -3005,7 +2978,7 @@ static int zt_hangup(struct ast_channel *ast)
}
x = 0;
- zt_confmute(p, 0);
+ dahdi_confmute(p, 0);
p->muting = 0;
restore_gains(p);
if (p->origcid_num) {
@@ -3038,7 +3011,7 @@ static int zt_hangup(struct ast_channel *ast)
p->subs[index].linear = 0;
p->subs[index].needcallerid = 0;
p->polarity = POLARITY_IDLE;
- zt_setlinear(p->subs[index].zfd, 0);
+ dahdi_setlinear(p->subs[index].zfd, 0);
if (index == SUB_REAL) {
if ((p->subs[SUB_CALLWAIT].zfd > -1) && (p->subs[SUB_THREEWAY].zfd > -1)) {
ast_debug(1, "Normal call hung up with both three way call and a call waiting call in place?\n");
@@ -3150,8 +3123,8 @@ static int zt_hangup(struct ast_channel *ast)
p->dsp = NULL;
}
- law = ZT_LAW_DEFAULT;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_SETLAW, &law);
+ law = DAHDI_LAW_DEFAULT;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_SETLAW, &law);
if (res < 0)
ast_log(LOG_WARNING, "Unable to set law on channel %d to default\n", p->channel);
/* Perform low level hangup if no owner left */
@@ -3233,7 +3206,7 @@ static int zt_hangup(struct ast_channel *ast)
}
#endif
if (p->sig && ((p->sig != SIG_PRI) && (p->sig != SIG_SS7) && (p->sig != SIG_BRI) && (p->sig != SIG_BRI_PTMP)))
- res = zt_set_hook(p->subs[SUB_REAL].zfd, ZT_ONHOOK);
+ res = dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_ONHOOK);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to hangup line %s\n", ast->name);
}
@@ -3241,14 +3214,14 @@ static int zt_hangup(struct ast_channel *ast)
case SIG_FXOGS:
case SIG_FXOLS:
case SIG_FXOKS:
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &par);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &par);
if (!res) {
#if 0
ast_debug(1, "Hanging up channel %d, offhook = %d\n", p->channel, par.rxisoffhook);
#endif
/* If they're off hook, try playing congestion */
if ((par.rxisoffhook) && (!(p->radio || (p->oprmode < 0))))
- tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
else
tone_zone_play_tone(p->subs[SUB_REAL].zfd, -1);
}
@@ -3269,7 +3242,7 @@ static int zt_hangup(struct ast_channel *ast)
if (p->cidspill)
ast_free(p->cidspill);
if (p->sig)
- zt_disable_ec(p);
+ dahdi_disable_ec(p);
x = 0;
ast_channel_setoption(ast,AST_OPTION_TONE_VERIFY,&x,sizeof(char),0);
ast_channel_setoption(ast,AST_OPTION_TDD,&x,sizeof(char),0);
@@ -3330,15 +3303,15 @@ static int zt_hangup(struct ast_channel *ast)
return 0;
}
-static int zt_answer(struct ast_channel *ast)
+static int dahdi_answer(struct ast_channel *ast)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
int res = 0;
int index;
int oldstate = ast->_state;
ast_setstate(ast, AST_STATE_UP);
ast_mutex_lock(&p->lock);
- index = zt_get_index(ast, p, 0);
+ index = dahdi_get_index(ast, p, 0);
if (index < 0)
index = SUB_REAL;
/* nothing to do if a radio channel */
@@ -3375,7 +3348,7 @@ static int zt_answer(struct ast_channel *ast)
if (p->hanguponpolarityswitch) {
p->polaritydelaytv = ast_tvnow();
}
- res = zt_set_hook(p->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ res = dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
tone_zone_play_tone(p->subs[index].zfd, -1);
p->dialing = 0;
if ((index == SUB_REAL) && p->subs[SUB_THREEWAY].inthreeway) {
@@ -3386,9 +3359,9 @@ static int zt_answer(struct ast_channel *ast)
p->owner = p->subs[SUB_REAL].owner;
}
}
- if (p->sig & __ZT_SIG_FXS) {
- zt_enable_ec(p);
- zt_train_ec(p);
+ if (p->sig & __DAHDI_SIG_FXS) {
+ dahdi_enable_ec(p);
+ dahdi_train_ec(p);
}
break;
#ifdef HAVE_PRI
@@ -3429,13 +3402,13 @@ static int zt_answer(struct ast_channel *ast)
return res;
}
-static int zt_setoption(struct ast_channel *chan, int option, void *data, int datalen)
+static int dahdi_setoption(struct ast_channel *chan, int option, void *data, int datalen)
{
char *cp;
signed char *scp;
int x;
int index;
- struct zt_pvt *p = chan->tech_pvt, *pp;
+ struct dahdi_pvt *p = chan->tech_pvt, *pp;
struct oprmode *oprmode;
@@ -3448,7 +3421,7 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
switch (option) {
case AST_OPTION_TXGAIN:
scp = (signed char *) data;
- index = zt_get_index(chan, p, 0);
+ index = dahdi_get_index(chan, p, 0);
if (index < 0) {
ast_log(LOG_WARNING, "No index in TXGAIN?\n");
return -1;
@@ -3457,7 +3430,7 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
return set_actual_txgain(p->subs[index].zfd, 0, p->txgain + (float) *scp, p->law);
case AST_OPTION_RXGAIN:
scp = (signed char *) data;
- index = zt_get_index(chan, p, 0);
+ index = dahdi_get_index(chan, p, 0);
if (index < 0) {
ast_log(LOG_WARNING, "No index in RXGAIN?\n");
return -1;
@@ -3496,7 +3469,7 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
}
ast_debug(1, "Set option TDD MODE, value: %s(%d) on %s\n",
(*cp == 2) ? "MATE" : "ON", (int) *cp, chan->name);
- zt_disable_ec(p);
+ dahdi_disable_ec(p);
/* otherwise, turn it on */
if (!p->didtdd) { /* if havent done it yet */
unsigned char mybuf[41000], *buf;
@@ -3507,7 +3480,7 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
memset(buf, 0x7f, sizeof(mybuf)); /* set to silence */
ast_tdd_gen_ecdisa(buf + 16000, 16000); /* put in tone */
len = 40000;
- index = zt_get_index(chan, p, 0);
+ index = dahdi_get_index(chan, p, 0);
if (index < 0) {
ast_log(LOG_WARNING, "No index in TDD?\n");
return -1;
@@ -3569,12 +3542,12 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
if (!*cp) {
ast_debug(1, "Set option AUDIO MODE, value: OFF(0) on %s\n", chan->name);
x = 0;
- zt_disable_ec(p);
+ dahdi_disable_ec(p);
} else {
ast_debug(1, "Set option AUDIO MODE, value: ON(1) on %s\n", chan->name);
x = 1;
}
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &x) == -1)
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &x) == -1)
ast_log(LOG_WARNING, "Unable to set audio mode on channel %d to %d\n", p->channel, x);
break;
case AST_OPTION_OPRMODE: /* Operator services mode */
@@ -3597,10 +3570,10 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
cp = (char *) data;
if (*cp) {
ast_debug(1, "Enabling echo cancelation on %s\n", chan->name);
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
} else {
ast_debug(1, "Disabling echo cancelation on %s\n", chan->name);
- zt_disable_ec(p);
+ dahdi_disable_ec(p);
}
break;
}
@@ -3609,9 +3582,9 @@ static int zt_setoption(struct ast_channel *chan, int option, void *data, int da
return 0;
}
-static int zt_func_read(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len)
+static int dahdi_func_read(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len)
{
- struct zt_pvt *p = chan->tech_pvt;
+ struct dahdi_pvt *p = chan->tech_pvt;
if (!strcasecmp(data, "rxgain")) {
ast_mutex_lock(&p->lock);
@@ -3628,7 +3601,7 @@ static int zt_func_read(struct ast_channel *chan, const char *function, char *da
}
-static void zt_unlink(struct zt_pvt *slave, struct zt_pvt *master, int needlock)
+static void dahdi_unlink(struct dahdi_pvt *slave, struct dahdi_pvt *master, int needlock)
{
/* Unlink a specific slave or all slaves/masters from a given master */
int x;
@@ -3684,7 +3657,7 @@ static void zt_unlink(struct zt_pvt *slave, struct zt_pvt *master, int needlock)
}
}
-static void zt_link(struct zt_pvt *slave, struct zt_pvt *master) {
+static void dahdi_link(struct dahdi_pvt *slave, struct dahdi_pvt *master) {
int x;
if (!slave || !master) {
ast_log(LOG_WARNING, "Tried to link to/from NULL??\n");
@@ -3707,17 +3680,17 @@ static void zt_link(struct zt_pvt *slave, struct zt_pvt *master) {
ast_debug(1, "Making %d slave to master %d at %d\n", slave->channel, master->channel, x);
}
-static void disable_dtmf_detect(struct zt_pvt *p)
+static void disable_dtmf_detect(struct dahdi_pvt *p)
{
-#ifdef ZT_TONEDETECT
+#ifdef DAHDI_TONEDETECT
int val;
#endif
p->ignoredtmf = 1;
-#ifdef ZT_TONEDETECT
+#ifdef DAHDI_TONEDETECT
val = 0;
- ioctl(p->subs[SUB_REAL].zfd, ZT_TONEDETECT, &val);
+ ioctl(p->subs[SUB_REAL].zfd, DAHDI_TONEDETECT, &val);
#endif
if (!p->hardwaredtmf && p->dsp) {
p->dsp_features &= ~DSP_FEATURE_DIGIT_DETECT;
@@ -3725,9 +3698,9 @@ static void disable_dtmf_detect(struct zt_pvt *p)
}
}
-static void enable_dtmf_detect(struct zt_pvt *p)
+static void enable_dtmf_detect(struct dahdi_pvt *p)
{
-#ifdef ZT_TONEDETECT
+#ifdef DAHDI_TONEDETECT
int val;
#endif
@@ -3736,9 +3709,9 @@ static void enable_dtmf_detect(struct zt_pvt *p)
p->ignoredtmf = 0;
-#ifdef ZT_TONEDETECT
- val = ZT_TONEDETECT_ON | ZT_TONEDETECT_MUTE;
- ioctl(p->subs[SUB_REAL].zfd, ZT_TONEDETECT, &val);
+#ifdef DAHDI_TONEDETECT
+ val = DAHDI_TONEDETECT_ON | DAHDI_TONEDETECT_MUTE;
+ ioctl(p->subs[SUB_REAL].zfd, DAHDI_TONEDETECT, &val);
#endif
if (!p->hardwaredtmf && p->dsp) {
p->dsp_features |= DSP_FEATURE_DIGIT_DETECT;
@@ -3746,11 +3719,11 @@ static void enable_dtmf_detect(struct zt_pvt *p)
}
}
-static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms)
+static enum ast_bridge_result dahdi_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms)
{
struct ast_channel *who;
- struct zt_pvt *p0, *p1, *op0, *op1;
- struct zt_pvt *master = NULL, *slave = NULL;
+ struct dahdi_pvt *p0, *p1, *op0, *op1;
+ struct dahdi_pvt *master = NULL, *slave = NULL;
struct ast_frame *f;
int inconf = 0;
int nothingok = 1;
@@ -3790,8 +3763,8 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
return AST_BRIDGE_FAILED_NOWARN;
}
- oi0 = zt_get_index(c0, p0, 0);
- oi1 = zt_get_index(c1, p1, 0);
+ oi0 = dahdi_get_index(c0, p0, 0);
+ oi1 = dahdi_get_index(c1, p1, 0);
if ((oi0 < 0) || (oi1 < 0)) {
ast_channel_unlock(c0);
ast_channel_unlock(c1);
@@ -3883,7 +3856,7 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
p1->subs[SUB_REAL].inthreeway &&
(p1->subs[SUB_REAL].owner->_state == AST_STATE_RINGING)) {
ast_debug(1, "Playing ringback on %s since %s is in a ringing three-way\n", c0->name, c1->name);
- tone_zone_play_tone(p0->subs[oi0].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p0->subs[oi0].zfd, DAHDI_TONE_RINGTONE);
os1 = p1->subs[SUB_REAL].owner->_state;
} else {
ast_debug(1, "Stopping tones on %d/%d talking to %d/%d\n", p0->channel, oi0, p1->channel, oi1);
@@ -3895,7 +3868,7 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
p0->subs[SUB_REAL].inthreeway &&
(p0->subs[SUB_REAL].owner->_state == AST_STATE_RINGING)) {
ast_debug(1, "Playing ringback on %s since %s is in a ringing three-way\n", c1->name, c0->name);
- tone_zone_play_tone(p1->subs[oi1].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p1->subs[oi1].zfd, DAHDI_TONE_RINGTONE);
os0 = p0->subs[SUB_REAL].owner->_state;
} else {
ast_debug(1, "Stopping tones on %d/%d talking to %d/%d\n", p1->channel, oi1, p0->channel, oi0);
@@ -3904,11 +3877,11 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
if ((oi0 == SUB_REAL) && (oi1 == SUB_REAL)) {
if (!p0->echocanbridged || !p1->echocanbridged) {
/* Disable echo cancellation if appropriate */
- zt_disable_ec(p0);
- zt_disable_ec(p1);
+ dahdi_disable_ec(p0);
+ dahdi_disable_ec(p1);
}
}
- zt_link(slave, master);
+ dahdi_link(slave, master);
master->inconference = inconf;
} else if (!nothingok)
ast_log(LOG_WARNING, "Can't link %d/%s with %d/%s\n", p0->channel, subnames[oi0], p1->channel, subnames[oi1]);
@@ -3926,8 +3899,8 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
/* Native bridge failed */
if ((!master || !slave) && !nothingok) {
- zt_enable_ec(p0);
- zt_enable_ec(p1);
+ dahdi_enable_ec(p0);
+ dahdi_enable_ec(p1);
return AST_BRIDGE_FAILED;
}
@@ -3957,9 +3930,9 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
p1 = c1->tech_pvt;
if (op0 == p0)
- i0 = zt_get_index(c0, p0, 1);
+ i0 = dahdi_get_index(c0, p0, 1);
if (op1 == p1)
- i1 = zt_get_index(c1, p1, 1);
+ i1 = dahdi_get_index(c1, p1, 1);
ast_channel_unlock(c0);
ast_channel_unlock(c1);
@@ -4026,10 +3999,10 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann
return_from_bridge:
if (op0 == p0)
- zt_enable_ec(p0);
+ dahdi_enable_ec(p0);
if (op1 == p1)
- zt_enable_ec(p1);
+ dahdi_enable_ec(p1);
if (!(flags & AST_BRIDGE_DTMF_CHANNEL_0) && (oi0 == SUB_REAL))
enable_dtmf_detect(op0);
@@ -4037,14 +4010,14 @@ return_from_bridge:
if (!(flags & AST_BRIDGE_DTMF_CHANNEL_1) && (oi1 == SUB_REAL))
enable_dtmf_detect(op1);
- zt_unlink(slave, master, 1);
+ dahdi_unlink(slave, master, 1);
return res;
}
-static int zt_fixup(struct ast_channel *oldchan, struct ast_channel *newchan)
+static int dahdi_fixup(struct ast_channel *oldchan, struct ast_channel *newchan)
{
- struct zt_pvt *p = newchan->tech_pvt;
+ struct dahdi_pvt *p = newchan->tech_pvt;
int x;
ast_mutex_lock(&p->lock);
ast_debug(1, "New owner for channel %d is %s\n", p->channel, newchan->name);
@@ -4054,27 +4027,27 @@ static int zt_fixup(struct ast_channel *oldchan, struct ast_channel *newchan)
for (x = 0; x < 3; x++)
if (p->subs[x].owner == oldchan) {
if (!x)
- zt_unlink(NULL, p, 0);
+ dahdi_unlink(NULL, p, 0);
p->subs[x].owner = newchan;
}
if (newchan->_state == AST_STATE_RINGING)
- zt_indicate(newchan, AST_CONTROL_RINGING, NULL, 0);
+ dahdi_indicate(newchan, AST_CONTROL_RINGING, NULL, 0);
update_conf(p);
ast_mutex_unlock(&p->lock);
return 0;
}
-static int zt_ring_phone(struct zt_pvt *p)
+static int dahdi_ring_phone(struct dahdi_pvt *p)
{
int x;
int res;
/* Make sure our transmit state is on hook */
x = 0;
- x = ZT_ONHOOK;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ x = DAHDI_ONHOOK;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
do {
- x = ZT_RING;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ x = DAHDI_RING;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
if (res) {
switch (errno) {
case EBUSY:
@@ -4096,9 +4069,9 @@ static int zt_ring_phone(struct zt_pvt *p)
static void *ss_thread(void *data);
-static struct ast_channel *zt_new(struct zt_pvt *, int, int, int, int, int);
+static struct ast_channel *dahdi_new(struct dahdi_pvt *, int, int, int, int, int);
-static int attempt_transfer(struct zt_pvt *p)
+static int attempt_transfer(struct dahdi_pvt *p)
{
/* In order to transfer, we need at least one of the channels to
actually be in a call bridge. We can't conference two applications
@@ -4112,7 +4085,7 @@ static int attempt_transfer(struct zt_pvt *p)
ast_indicate(ast_bridged_channel(p->subs[SUB_REAL].owner), AST_CONTROL_RINGING);
}
if (p->subs[SUB_THREEWAY].owner->_state == AST_STATE_RING) {
- tone_zone_play_tone(p->subs[SUB_THREEWAY].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p->subs[SUB_THREEWAY].zfd, DAHDI_TONE_RINGTONE);
}
if (p->subs[SUB_REAL].owner->cdr) {
/* Move CDR from second channel to current one */
@@ -4140,7 +4113,7 @@ static int attempt_transfer(struct zt_pvt *p)
ast_indicate(ast_bridged_channel(p->subs[SUB_THREEWAY].owner), AST_CONTROL_RINGING);
}
if (p->subs[SUB_REAL].owner->_state == AST_STATE_RING) {
- tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_RINGTONE);
}
if (p->subs[SUB_THREEWAY].owner->cdr) {
/* Move CDR from second channel to current one */
@@ -4174,14 +4147,14 @@ static int attempt_transfer(struct zt_pvt *p)
return 0;
}
-static int check_for_conference(struct zt_pvt *p)
+static int check_for_conference(struct dahdi_pvt *p)
{
- ZT_CONFINFO ci;
+ DAHDI_CONFINFO ci;
/* Fine if we already have a master, etc */
if (p->master || (p->confno > -1))
return 0;
memset(&ci, 0, sizeof(ci));
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_GETCONF, &ci)) {
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_GETCONF, &ci)) {
ast_log(LOG_WARNING, "Failed to get conference info on channel %d\n", p->channel);
return 0;
}
@@ -4200,35 +4173,31 @@ static int check_for_conference(struct zt_pvt *p)
* \returns the alarms on the span to which the channel belongs, or alarms on
* the channel if no span alarms.
*/
-static int get_alarms(struct zt_pvt *p)
+static int get_alarms(struct dahdi_pvt *p)
{
int res;
- ZT_SPANINFO zi;
-#if defined(HAVE_ZAPTEL_CHANALARMS)
- struct zt_params params;
-#endif
+ DAHDI_SPANINFO zi;
+ struct dahdi_params params;
memset(&zi, 0, sizeof(zi));
zi.spanno = p->span;
- if ((res = ioctl(p->subs[SUB_REAL].zfd, ZT_SPANSTAT, &zi)) >= 0) {
- if (zi.alarms != ZT_ALARM_NONE)
+ if ((res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_SPANSTAT, &zi)) >= 0) {
+ if (zi.alarms != DAHDI_ALARM_NONE)
return zi.alarms;
}
-#if defined(HAVE_ZAPTEL_CHANALARMS)
/* No alarms on the span. Check for channel alarms. */
- if ((res = ioctl(p->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &params)) >= 0)
+ if ((res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &params)) >= 0)
return params.chan_alarms;
-#endif
ast_log(LOG_WARNING, "Unable to determine alarm on channel %d\n", p->channel);
- return ZT_ALARM_NONE;
+ return DAHDI_ALARM_NONE;
}
-static void zt_handle_dtmfup(struct ast_channel *ast, int index, struct ast_frame **dest)
+static void dahdi_handle_dtmfup(struct ast_channel *ast, int index, struct ast_frame **dest)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
struct ast_frame *f = *dest;
ast_debug(1, "DTMF digit: %c on %s\n", f->subclass, ast->name);
@@ -4272,24 +4241,24 @@ static void zt_handle_dtmfup(struct ast_channel *ast, int index, struct ast_fram
ast_debug(1, "Already in a fax extension, not redirecting\n");
} else
ast_debug(1, "Fax already handled\n");
- zt_confmute(p, 0);
+ dahdi_confmute(p, 0);
p->subs[index].f.frametype = AST_FRAME_NULL;
p->subs[index].f.subclass = 0;
*dest = &p->subs[index].f;
}
}
-static struct ast_frame *zt_handle_event(struct ast_channel *ast)
+static struct ast_frame *dahdi_handle_event(struct ast_channel *ast)
{
int res, x;
int index, mysig;
char *c;
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
pthread_t threadid;
struct ast_channel *chan;
struct ast_frame *f;
- index = zt_get_index(ast, p, 0);
+ index = dahdi_get_index(ast, p, 0);
mysig = p->sig;
if (p->outsigmod > -1)
mysig = p->outsigmod;
@@ -4299,7 +4268,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->subs[index].f.samples = 0;
p->subs[index].f.mallocd = 0;
p->subs[index].f.offset = 0;
- p->subs[index].f.src = "zt_handle_event";
+ p->subs[index].f.src = "dahdi_handle_event";
p->subs[index].f.data.ptr = NULL;
f = &p->subs[index].f;
@@ -4309,15 +4278,15 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
res = p->fake_event;
p->fake_event = 0;
} else
- res = zt_get_event(p->subs[index].zfd);
+ res = dahdi_get_event(p->subs[index].zfd);
ast_debug(1, "Got event %s(%d) on channel %d (index %d)\n", event2str(res), res, p->channel, index);
- if (res & (ZT_EVENT_PULSEDIGIT | ZT_EVENT_DTMFUP)) {
- p->pulsedial = (res & ZT_EVENT_PULSEDIGIT) ? 1 : 0;
+ if (res & (DAHDI_EVENT_PULSEDIGIT | DAHDI_EVENT_DTMFUP)) {
+ p->pulsedial = (res & DAHDI_EVENT_PULSEDIGIT) ? 1 : 0;
ast_debug(1, "Detected %sdigit '%c'\n", p->pulsedial ? "pulse ": "", res & 0xff);
#ifdef HAVE_PRI
- if (!p->proceeding && ((p->sig == SIG_PRI) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) && p->pri && (p->pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING)) {
+ if (!p->proceeding && ((p->sig == SIG_PRI) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) && p->pri && (p->pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING)) {
/* absorb event */
} else {
#endif
@@ -4326,47 +4295,47 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
#ifdef HAVE_PRI
}
#endif
- zt_handle_dtmfup(ast, index, &f);
+ dahdi_handle_dtmfup(ast, index, &f);
return f;
}
- if (res & ZT_EVENT_DTMFDOWN) {
+ if (res & DAHDI_EVENT_DTMFDOWN) {
ast_debug(1, "DTMF Down '%c'\n", res & 0xff);
/* Mute conference */
- zt_confmute(p, 1);
+ dahdi_confmute(p, 1);
p->subs[index].f.frametype = AST_FRAME_DTMF_BEGIN;
p->subs[index].f.subclass = res & 0xff;
return &p->subs[index].f;
}
switch (res) {
-#ifdef ZT_EVENT_EC_DISABLED
- case ZT_EVENT_EC_DISABLED:
+#ifdef DAHDI_EVENT_EC_DISABLED
+ case DAHDI_EVENT_EC_DISABLED:
ast_verb(3, "Channel %d echo canceler disabled due to CED detection\n", p->channel);
p->echocanon = 0;
break;
#endif
- case ZT_EVENT_BITSCHANGED:
+ case DAHDI_EVENT_BITSCHANGED:
ast_log(LOG_WARNING, "Recieved bits changed on %s signalling?\n", sig2str(p->sig));
- case ZT_EVENT_PULSE_START:
+ case DAHDI_EVENT_PULSE_START:
/* Stop tone if there's a pulse start and the PBX isn't started */
if (!ast->pbx)
tone_zone_play_tone(p->subs[index].zfd, -1);
break;
- case ZT_EVENT_DIALCOMPLETE:
+ case DAHDI_EVENT_DIALCOMPLETE:
if (p->inalarm) break;
if ((p->radio || (p->oprmode < 0))) break;
- if (ioctl(p->subs[index].zfd,ZT_DIALING,&x) == -1) {
- ast_debug(1, "ZT_DIALING ioctl failed on %s\n",ast->name);
+ if (ioctl(p->subs[index].zfd,DAHDI_DIALING,&x) == -1) {
+ ast_debug(1, "DAHDI_DIALING ioctl failed on %s\n",ast->name);
return NULL;
}
if (!x) { /* if not still dialing in driver */
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
if (p->echobreak) {
- zt_train_ec(p);
+ dahdi_train_ec(p);
ast_copy_string(p->dop.dialstr, p->echorest, sizeof(p->dop.dialstr));
- p->dop.op = ZT_DIAL_OP_REPLACE;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop);
+ p->dop.op = DAHDI_DIAL_OP_REPLACE;
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop);
p->echobreak = 0;
} else {
p->dialing = 0;
@@ -4401,7 +4370,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
}
}
break;
- case ZT_EVENT_ALARM:
+ case DAHDI_EVENT_ALARM:
#ifdef HAVE_PRI
if ((p->sig == SIG_PRI) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) {
if (!p->pri || !p->pri->pri || (pri_get_timer(p->pri->pri, PRI_TIMER_T309) < 0)) {
@@ -4444,7 +4413,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
if (p->sig == SIG_SS7)
break;
#endif
- case ZT_EVENT_ONHOOK:
+ case DAHDI_EVENT_ONHOOK:
if (p->radio) {
p->subs[index].f.frametype = AST_FRAME_CONTROL;
p->subs[index].f.subclass = AST_CONTROL_RADIO_UNKEY;
@@ -4456,10 +4425,10 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
if ((p->sig == SIG_FXOLS) || (p->sig == SIG_FXOKS) || (p->sig == SIG_FXOGS))
{
/* Make sure it starts ringing */
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_RINGOFF);
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_RING);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_RINGOFF);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_RING);
save_conference(p->oprpeer);
- tone_zone_play_tone(p->oprpeer->subs[SUB_REAL].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p->oprpeer->subs[SUB_REAL].zfd, DAHDI_TONE_RINGTONE);
}
break;
}
@@ -4487,7 +4456,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
/* Don't start streaming audio yet if the incoming call isn't up yet */
if (p->subs[SUB_REAL].owner->_state != AST_STATE_UP)
p->dialing = 1;
- zt_ring_phone(p);
+ dahdi_ring_phone(p);
} else if (p->subs[SUB_THREEWAY].owner) {
unsigned int mssinceflash;
/* Here we have to retain the lock on both the main channel, the 3-way channel, and
@@ -4533,7 +4502,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
swap_subs(p, SUB_THREEWAY, SUB_REAL);
p->owner = NULL;
/* Ring the phone */
- zt_ring_phone(p);
+ dahdi_ring_phone(p);
} else {
if ((res = attempt_transfer(p)) < 0) {
p->subs[SUB_THREEWAY].owner->_softhangup |= AST_SOFTHANGUP_DEV;
@@ -4557,7 +4526,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
swap_subs(p, SUB_THREEWAY, SUB_REAL);
p->owner = NULL;
/* Ring the phone */
- zt_ring_phone(p);
+ dahdi_ring_phone(p);
}
}
} else {
@@ -4565,18 +4534,18 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
}
/* Fall through */
default:
- zt_disable_ec(p);
+ dahdi_disable_ec(p);
return NULL;
}
break;
- case ZT_EVENT_RINGOFFHOOK:
+ case DAHDI_EVENT_RINGOFFHOOK:
if (p->inalarm) break;
if (p->oprmode < 0)
{
if ((p->sig == SIG_FXOLS) || (p->sig == SIG_FXOKS) || (p->sig == SIG_FXOGS))
{
/* Make sure it stops ringing */
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_RINGOFF);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_RINGOFF);
tone_zone_play_tone(p->oprpeer->subs[SUB_REAL].zfd, -1);
restore_conference(p->oprpeer);
}
@@ -4606,9 +4575,9 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->dop.dialstr[strlen(p->dop.dialstr)-2] = '\0';
} else
p->echobreak = 0;
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop)) {
- x = ZT_ONHOOK;
- ioctl(p->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop)) {
+ x = DAHDI_ONHOOK;
+ ioctl(p->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
ast_log(LOG_WARNING, "Dialing failed on channel %d: %s\n", p->channel, strerror(errno));
return NULL;
}
@@ -4621,12 +4590,12 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
case SIG_FXOKS:
switch (ast->_state) {
case AST_STATE_RINGING:
- zt_enable_ec(p);
- zt_train_ec(p);
+ dahdi_enable_ec(p);
+ dahdi_train_ec(p);
p->subs[index].f.frametype = AST_FRAME_CONTROL;
p->subs[index].f.subclass = AST_CONTROL_ANSWER;
/* Make sure it stops ringing */
- zt_set_hook(p->subs[index].zfd, ZT_OFFHOOK);
+ dahdi_set_hook(p->subs[index].zfd, DAHDI_OFFHOOK);
ast_debug(1, "channel %d answered\n", p->channel);
if (p->cidspill) {
/* Cancel any running CallerID spill */
@@ -4641,7 +4610,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->subs[index].f.subclass = 0;
} else if (!ast_strlen_zero(p->dop.dialstr)) {
/* nick@dccinc.com 4/3/03 - fxo should be able to do deferred dialing */
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to initiate dialing on trunk channel %d\n", p->channel);
p->dop.dialstr[0] = '\0';
@@ -4666,7 +4635,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
return &p->subs[index].f;
case AST_STATE_UP:
/* Make sure it stops ringing */
- zt_set_hook(p->subs[index].zfd, ZT_OFFHOOK);
+ dahdi_set_hook(p->subs[index].zfd, DAHDI_OFFHOOK);
/* Okay -- probably call waiting*/
if (ast_bridged_channel(p->owner))
ast_queue_control(p->owner, AST_CONTROL_UNHOLD);
@@ -4675,9 +4644,9 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
case AST_STATE_RESERVED:
/* Start up dialtone */
if (has_voicemail(p))
- res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_STUTTER);
+ res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_STUTTER);
else
- res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_DIALTONE);
+ res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_DIALTONE);
break;
default:
ast_log(LOG_WARNING, "FXO phone off hook in weird state %d??\n", ast->_state);
@@ -4736,8 +4705,8 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
ast_log(LOG_WARNING, "Don't know how to handle ring/off hook for signalling %d\n", p->sig);
}
break;
-#ifdef ZT_EVENT_RINGBEGIN
- case ZT_EVENT_RINGBEGIN:
+#ifdef DAHDI_EVENT_RINGBEGIN
+ case DAHDI_EVENT_RINGBEGIN:
switch (p->sig) {
case SIG_FXSLS:
case SIG_FXSGS:
@@ -4749,7 +4718,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
}
break;
#endif
- case ZT_EVENT_RINGEROFF:
+ case DAHDI_EVENT_RINGEROFF:
if (p->inalarm) break;
if ((p->radio || (p->oprmode < 0))) break;
ast->rings++;
@@ -4762,9 +4731,9 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->subs[index].f.frametype = AST_FRAME_CONTROL;
p->subs[index].f.subclass = AST_CONTROL_RINGING;
break;
- case ZT_EVENT_RINGERON:
+ case DAHDI_EVENT_RINGERON:
break;
- case ZT_EVENT_NOALARM:
+ case DAHDI_EVENT_NOALARM:
p->inalarm = 0;
#ifdef HAVE_PRI
/* Extremely unlikely but just in case */
@@ -4775,23 +4744,23 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
manager_event(EVENT_FLAG_SYSTEM, "AlarmClear",
"Channel: %d\r\n", p->channel);
break;
- case ZT_EVENT_WINKFLASH:
+ case DAHDI_EVENT_WINKFLASH:
if (p->inalarm) break;
if (p->radio) break;
if (p->oprmode < 0) break;
if (p->oprmode > 1)
{
- struct zt_params par;
+ struct dahdi_params par;
- if (ioctl(p->oprpeer->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &par) != -1)
+ if (ioctl(p->oprpeer->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &par) != -1)
{
if (!par.rxisoffhook)
{
/* Make sure it stops ringing */
- zt_set_hook(p->oprpeer->subs[SUB_REAL].zfd, ZT_RINGOFF);
- zt_set_hook(p->oprpeer->subs[SUB_REAL].zfd, ZT_RING);
+ dahdi_set_hook(p->oprpeer->subs[SUB_REAL].zfd, DAHDI_RINGOFF);
+ dahdi_set_hook(p->oprpeer->subs[SUB_REAL].zfd, DAHDI_RING);
save_conference(p);
- tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_RINGTONE);
+ tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_RINGTONE);
}
}
break;
@@ -4845,7 +4814,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->subs[SUB_REAL].needflash = 1;
goto winkflashdone;
} else if (!check_for_conference(p)) {
- if (p->zaptrcallerid && p->owner) {
+ if (p->dahditrcallerid && p->owner) {
if (p->owner->cid.cid_num)
ast_copy_string(cid_num, p->owner->cid.cid_num, sizeof(cid_num));
if (p->owner->cid.cid_name)
@@ -4864,8 +4833,8 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
goto winkflashdone;
}
/* Make new channel */
- chan = zt_new(p, AST_STATE_RESERVED, 0, SUB_THREEWAY, 0, 0);
- if (p->zaptrcallerid) {
+ chan = dahdi_new(p, AST_STATE_RESERVED, 0, SUB_THREEWAY, 0, 0);
+ if (p->dahditrcallerid) {
if (!p->origcid_num)
p->origcid_num = ast_strdup(p->cid_num);
if (!p->origcid_name)
@@ -4876,8 +4845,8 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
/* Swap things around between the three-way and real call */
swap_subs(p, SUB_THREEWAY, SUB_REAL);
/* Disable echo canceller for better dialing */
- zt_disable_ec(p);
- res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_DIALRECALL);
+ dahdi_disable_ec(p);
+ res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_DIALRECALL);
if (res)
ast_log(LOG_WARNING, "Unable to start dial recall tone on channel %d\n", p->channel);
p->owner = chan;
@@ -4885,8 +4854,8 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
ast_log(LOG_WARNING, "Cannot allocate new structure on channel %d\n", p->channel);
} else if (ast_pthread_create_detached(&threadid, NULL, ss_thread, chan)) {
ast_log(LOG_WARNING, "Unable to start simple switch on channel %d\n", p->channel);
- res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
- zt_enable_ec(p);
+ res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
+ dahdi_enable_ec(p);
ast_hangup(chan);
} else {
ast_verb(3, "Started three way call on channel %d\n", p->channel);
@@ -4935,8 +4904,8 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->owner = p->subs[SUB_REAL].owner;
if (ast->_state == AST_STATE_RINGING) {
ast_debug(1, "Enabling ringtone on real and threeway\n");
- res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, ZT_TONE_RINGTONE);
- res = tone_zone_play_tone(p->subs[SUB_THREEWAY].zfd, ZT_TONE_RINGTONE);
+ res = tone_zone_play_tone(p->subs[SUB_REAL].zfd, DAHDI_TONE_RINGTONE);
+ res = tone_zone_play_tone(p->subs[SUB_THREEWAY].zfd, DAHDI_TONE_RINGTONE);
}
} else {
ast_verb(3, "Dumping incomplete call on on %s\n", p->subs[SUB_THREEWAY].owner->name);
@@ -4946,7 +4915,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
if (p->subs[SUB_REAL].owner && ast_bridged_channel(p->subs[SUB_REAL].owner))
ast_queue_control(p->subs[SUB_REAL].owner, AST_CONTROL_UNHOLD);
p->subs[SUB_REAL].needunhold = 1;
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
}
}
@@ -4994,7 +4963,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
case SIG_SF_FEATB:
/* FGD MF *Must* wait for wink */
if (!ast_strlen_zero(p->dop.dialstr)) {
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to initiate dialing on trunk channel %d\n", p->channel);
p->dop.dialstr[0] = '\0';
@@ -5008,7 +4977,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
ast_log(LOG_WARNING, "Don't know how to handle ring/off hoook for signalling %d\n", p->sig);
}
break;
- case ZT_EVENT_HOOKCOMPLETE:
+ case DAHDI_EVENT_HOOKCOMPLETE:
if (p->inalarm) break;
if ((p->radio || (p->oprmode < 0))) break;
switch (mysig) {
@@ -5023,7 +4992,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
case SIG_SFWINK:
case SIG_SF_FEATD:
if (!ast_strlen_zero(p->dop.dialstr)) {
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_DIAL, &p->dop);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_DIAL, &p->dop);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to initiate dialing on trunk channel %d\n", p->channel);
p->dop.dialstr[0] = '\0';
@@ -5032,7 +5001,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
ast_debug(1, "Sent deferred digit string: %s\n", p->dop.dialstr);
}
p->dop.dialstr[0] = '\0';
- p->dop.op = ZT_DIAL_OP_REPLACE;
+ p->dop.op = DAHDI_DIAL_OP_REPLACE;
break;
case SIG_FEATDMF:
case SIG_FEATDMF_TA:
@@ -5048,7 +5017,7 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
break;
}
break;
- case ZT_EVENT_POLARITY:
+ case DAHDI_EVENT_POLARITY:
/*
* If we get a Polarity Switch event, check to see
* if we should change the polarity state and
@@ -5098,16 +5067,16 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
return &p->subs[index].f;
}
-static struct ast_frame *__zt_exception(struct ast_channel *ast)
+static struct ast_frame *__dahdi_exception(struct ast_channel *ast)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
int res;
int usedindex=-1;
int index;
struct ast_frame *f;
- index = zt_get_index(ast, p, 1);
+ index = dahdi_get_index(ast, p, 1);
p->subs[index].f.frametype = AST_FRAME_NULL;
p->subs[index].f.datalen = 0;
@@ -5116,7 +5085,7 @@ static struct ast_frame *__zt_exception(struct ast_channel *ast)
p->subs[index].f.offset = 0;
p->subs[index].f.subclass = 0;
p->subs[index].f.delivery = ast_tv(0,0);
- p->subs[index].f.src = "zt_exception";
+ p->subs[index].f.src = "dahdi_exception";
p->subs[index].f.data.ptr = NULL;
@@ -5130,10 +5099,10 @@ static struct ast_frame *__zt_exception(struct ast_channel *ast)
res = p->fake_event;
p->fake_event = 0;
} else
- res = zt_get_event(p->subs[SUB_REAL].zfd);
+ res = dahdi_get_event(p->subs[SUB_REAL].zfd);
/* Switch to real if there is one and this isn't something really silly... */
- if ((res != ZT_EVENT_RINGEROFF) && (res != ZT_EVENT_RINGERON) &&
- (res != ZT_EVENT_HOOKCOMPLETE)) {
+ if ((res != DAHDI_EVENT_RINGEROFF) && (res != DAHDI_EVENT_RINGERON) &&
+ (res != DAHDI_EVENT_HOOKCOMPLETE)) {
ast_debug(1, "Restoring owner of channel %d on event %d\n", p->channel, res);
p->owner = p->subs[SUB_REAL].owner;
if (p->owner && ast_bridged_channel(p->owner))
@@ -5141,37 +5110,37 @@ static struct ast_frame *__zt_exception(struct ast_channel *ast)
p->subs[SUB_REAL].needunhold = 1;
}
switch (res) {
- case ZT_EVENT_ONHOOK:
- zt_disable_ec(p);
+ case DAHDI_EVENT_ONHOOK:
+ dahdi_disable_ec(p);
if (p->owner) {
ast_verb(3, "Channel %s still has call, ringing phone\n", p->owner->name);
- zt_ring_phone(p);
+ dahdi_ring_phone(p);
p->callwaitingrepeat = 0;
p->cidcwexpire = 0;
} else
ast_log(LOG_WARNING, "Absorbed on hook, but nobody is left!?!?\n");
update_conf(p);
break;
- case ZT_EVENT_RINGOFFHOOK:
- zt_enable_ec(p);
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ case DAHDI_EVENT_RINGOFFHOOK:
+ dahdi_enable_ec(p);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
if (p->owner && (p->owner->_state == AST_STATE_RINGING)) {
p->subs[SUB_REAL].needanswer = 1;
p->dialing = 0;
}
break;
- case ZT_EVENT_HOOKCOMPLETE:
- case ZT_EVENT_RINGERON:
- case ZT_EVENT_RINGEROFF:
+ case DAHDI_EVENT_HOOKCOMPLETE:
+ case DAHDI_EVENT_RINGERON:
+ case DAHDI_EVENT_RINGEROFF:
/* Do nothing */
break;
- case ZT_EVENT_WINKFLASH:
+ case DAHDI_EVENT_WINKFLASH:
p->flashtime = ast_tvnow();
if (p->owner) {
ast_verb(3, "Channel %d flashed to other channel %s\n", p->channel, p->owner->name);
if (p->owner->_state != AST_STATE_UP) {
/* Answer if necessary */
- usedindex = zt_get_index(p->owner, p, 0);
+ usedindex = dahdi_get_index(p->owner, p, 0);
if (usedindex > -1) {
p->subs[usedindex].needanswer = 1;
}
@@ -5200,23 +5169,23 @@ static struct ast_frame *__zt_exception(struct ast_channel *ast)
f = &p->subs[index].f;
return f;
}
- f = zt_handle_event(ast);
+ f = dahdi_handle_event(ast);
return f;
}
-static struct ast_frame *zt_exception(struct ast_channel *ast)
+static struct ast_frame *dahdi_exception(struct ast_channel *ast)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
struct ast_frame *f;
ast_mutex_lock(&p->lock);
- f = __zt_exception(ast);
+ f = __dahdi_exception(ast);
ast_mutex_unlock(&p->lock);
return f;
}
-static struct ast_frame *zt_read(struct ast_channel *ast)
+static struct ast_frame *dahdi_read(struct ast_channel *ast)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
int res;
int index;
void *readbuf;
@@ -5225,7 +5194,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
ast_mutex_lock(&p->lock);
- index = zt_get_index(ast, p, 0);
+ index = dahdi_get_index(ast, p, 0);
/* Hang up if we don't really exist */
if (index < 0) {
@@ -5243,16 +5212,16 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
p->subs[index].f.offset = 0;
p->subs[index].f.subclass = 0;
p->subs[index].f.delivery = ast_tv(0,0);
- p->subs[index].f.src = "zt_read";
+ p->subs[index].f.src = "dahdi_read";
p->subs[index].f.data.ptr = NULL;
/* make sure it sends initial key state as first frame */
if ((p->radio || (p->oprmode < 0)) && (!p->firstradio))
{
- ZT_PARAMS ps;
+ DAHDI_PARAMS ps;
ps.channo = p->channel;
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &ps) < 0) {
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &ps) < 0) {
ast_mutex_unlock(&p->lock);
return NULL;
}
@@ -5353,7 +5322,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
if (ast->rawreadformat == AST_FORMAT_SLINEAR) {
if (!p->subs[index].linear) {
p->subs[index].linear = 1;
- res = zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ res = dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
if (res)
ast_log(LOG_WARNING, "Unable to set channel %d (index %d) to linear mode.\n", p->channel, index);
}
@@ -5361,7 +5330,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
(ast->rawreadformat == AST_FORMAT_ALAW)) {
if (p->subs[index].linear) {
p->subs[index].linear = 0;
- res = zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ res = dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
if (res)
ast_log(LOG_WARNING, "Unable to set channel %d (index %d) to companded mode.\n", p->channel, index);
}
@@ -5383,16 +5352,16 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
ast_mutex_unlock(&p->lock);
return &p->subs[index].f;
} else if (errno == ELAST) {
- f = __zt_exception(ast);
+ f = __dahdi_exception(ast);
} else
- ast_log(LOG_WARNING, "zt_rec: %s\n", strerror(errno));
+ ast_log(LOG_WARNING, "dahdi_rec: %s\n", strerror(errno));
}
ast_mutex_unlock(&p->lock);
return f;
}
if (res != (p->subs[index].linear ? READ_SIZE * 2 : READ_SIZE)) {
ast_debug(1, "Short read (%d/%d), must be an event...\n", res, p->subs[index].linear ? READ_SIZE * 2 : READ_SIZE);
- f = __zt_exception(ast);
+ f = __dahdi_exception(ast);
ast_mutex_unlock(&p->lock);
return f;
}
@@ -5418,7 +5387,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
}
}
/* Ensure the CW timer decrements only on a single subchannel */
- if (p->callwaitingrepeat && zt_get_index(ast, p, 1) == SUB_REAL) {
+ if (p->callwaitingrepeat && dahdi_get_index(ast, p, 1) == SUB_REAL) {
p->callwaitingrepeat--;
}
if (p->cidcwexpire)
@@ -5426,7 +5395,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
/* Repeat callwaiting */
if (p->callwaitingrepeat == 1) {
p->callwaitrings++;
- zt_callwait(ast);
+ dahdi_callwait(ast);
}
/* Expire CID/CW */
if (p->cidcwexpire == 1) {
@@ -5467,7 +5436,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
p->subs[index].f.datalen= 0;
}
if (p->dsp && (!p->ignoredtmf || p->callwaitcas || p->busydetect || p->callprogress) && !index) {
- /* Perform busy detection. etc on the zap line */
+ /* Perform busy detection. etc on the dahdi line */
int mute;
f = ast_dsp_process(ast, p->dsp, &p->subs[index].f);
@@ -5476,7 +5445,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
mute = ast_dsp_was_muted(p->dsp);
if (p->muting != mute) {
p->muting = mute;
- zt_confmute(p, mute);
+ dahdi_confmute(p, mute);
}
if (f) {
@@ -5489,8 +5458,8 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
} else if (f->frametype == AST_FRAME_DTMF) {
#ifdef HAVE_PRI
if (!p->proceeding && ((p->sig == SIG_PRI) || (p->sig == SIG_BRI) || (p->sig == SIG_BRI_PTMP)) && p->pri &&
- ((!p->outgoing && (p->pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING)) ||
- (p->outgoing && (p->pri->overlapdial & ZAP_OVERLAPDIAL_OUTGOING)))) {
+ ((!p->outgoing && (p->pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING)) ||
+ (p->outgoing && (p->pri->overlapdial & DAHDI_OVERLAPDIAL_OUTGOING)))) {
/* Don't accept in-band DTMF when in overlap dial mode */
f->frametype = AST_FRAME_NULL;
f->subclass = 0;
@@ -5504,7 +5473,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
f = &p->subs[index].f;
if (f && (f->frametype == AST_FRAME_DTMF))
- zt_handle_dtmfup(ast, index, &f);
+ dahdi_handle_dtmfup(ast, index, &f);
/* If we have a fake_event, trigger exception to handle it */
if (p->fake_event)
@@ -5514,7 +5483,7 @@ static struct ast_frame *zt_read(struct ast_channel *ast)
return f;
}
-static int my_zt_write(struct zt_pvt *p, unsigned char *buf, int len, int index, int linear)
+static int my_dahdi_write(struct dahdi_pvt *p, unsigned char *buf, int len, int index, int linear)
{
int sent=0;
int size;
@@ -5536,12 +5505,12 @@ static int my_zt_write(struct zt_pvt *p, unsigned char *buf, int len, int index,
return sent;
}
-static int zt_write(struct ast_channel *ast, struct ast_frame *frame)
+static int dahdi_write(struct ast_channel *ast, struct ast_frame *frame)
{
- struct zt_pvt *p = ast->tech_pvt;
+ struct dahdi_pvt *p = ast->tech_pvt;
int res;
int index;
- index = zt_get_index(ast, p, 0);
+ index = dahdi_get_index(ast, p, 0);
if (index < 0) {
ast_log(LOG_WARNING, "%s doesn't really exist?\n", ast->name);
return -1;
@@ -5594,20 +5563,20 @@ static int zt_write(struct ast_channel *ast, struct ast_frame *frame)
if (frame->subclass == AST_FORMAT_SLINEAR) {
if (!p->subs[index].linear) {
p->subs[index].linear = 1;
- res = zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ res = dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
if (res)
ast_log(LOG_WARNING, "Unable to set linear mode on channel %d\n", p->channel);
}
- res = my_zt_write(p, (unsigned char *)frame->data.ptr, frame->datalen, index, 1);
+ res = my_dahdi_write(p, (unsigned char *)frame->data.ptr, frame->datalen, index, 1);
} else {
/* x-law already */
if (p->subs[index].linear) {
p->subs[index].linear = 0;
- res = zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ res = dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
if (res)
ast_log(LOG_WARNING, "Unable to set companded mode on channel %d\n", p->channel);
}
- res = my_zt_write(p, (unsigned char *)frame->data.ptr, frame->datalen, index, 0);
+ res = my_dahdi_write(p, (unsigned char *)frame->data.ptr, frame->datalen, index, 0);
}
if (res < 0) {
ast_log(LOG_WARNING, "write failed: %s\n", strerror(errno));
@@ -5616,14 +5585,14 @@ static int zt_write(struct ast_channel *ast, struct ast_frame *frame)
return 0;
}
-static int zt_indicate(struct ast_channel *chan, int condition, const void *data, size_t datalen)
+static int dahdi_indicate(struct ast_channel *chan, int condition, const void *data, size_t datalen)
{
- struct zt_pvt *p = chan->tech_pvt;
+ struct dahdi_pvt *p = chan->tech_pvt;
int res=-1;
int index;
- int func = ZT_FLASH;
+ int func = DAHDI_FLASH;
ast_mutex_lock(&p->lock);
- index = zt_get_index(chan, p, 0);
+ index = dahdi_get_index(chan, p, 0);
ast_debug(1, "Requested indication %d on channel %s\n", condition, chan->name);
if (index == SUB_REAL) {
switch (condition) {
@@ -5645,10 +5614,10 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
ast_log(LOG_WARNING, "Unable to grab PRI on span %d\n", p->span);
}
p->progress = 1;
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_BUSY);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_BUSY);
} else
#endif
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_BUSY);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_BUSY);
break;
case AST_CONTROL_RINGING:
#ifdef HAVE_PRI
@@ -5681,7 +5650,7 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
}
#endif
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_RINGTONE);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_RINGTONE);
if (chan->_state != AST_STATE_UP) {
if ((chan->_state != AST_STATE_RING) ||
@@ -5752,7 +5721,7 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
p->progress = 1;
ss7_rel(p->ss7);
/* enable echo canceler here on SS7 calls */
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
}
}
@@ -5777,10 +5746,10 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
ast_log(LOG_WARNING, "Unable to grab PRI on span %d\n", p->span);
}
p->progress = 1;
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
} else
#endif
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
break;
case AST_CONTROL_HOLD:
#ifdef HAVE_PRI
@@ -5808,12 +5777,12 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
break;
case AST_CONTROL_RADIO_KEY:
if (p->radio)
- res = zt_set_hook(p->subs[index].zfd, ZT_OFFHOOK);
+ res = dahdi_set_hook(p->subs[index].zfd, DAHDI_OFFHOOK);
res = 0;
break;
case AST_CONTROL_RADIO_UNKEY:
if (p->radio)
- res = zt_set_hook(p->subs[index].zfd, ZT_RINGOFF);
+ res = dahdi_set_hook(p->subs[index].zfd, DAHDI_RINGOFF);
res = 0;
break;
case AST_CONTROL_FLASH:
@@ -5821,7 +5790,7 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
if (ISTRUNK(p) && (p->sig != SIG_PRI)) {
/* Clear out the dial buffer */
p->dop.dialstr[0] = '\0';
- if ((ioctl(p->subs[SUB_REAL].zfd,ZT_HOOK,&func) == -1) && (errno != EINPROGRESS)) {
+ if ((ioctl(p->subs[SUB_REAL].zfd,DAHDI_HOOK,&func) == -1) && (errno != EINPROGRESS)) {
ast_log(LOG_WARNING, "Unable to flash external trunk on channel %s: %s\n",
chan->name, strerror(errno));
} else
@@ -5842,7 +5811,7 @@ static int zt_indicate(struct ast_channel *chan, int condition, const void *data
return res;
}
-static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int index, int law, int transfercapability)
+static struct ast_channel *dahdi_new(struct dahdi_pvt *i, int state, int startpbx, int index, int law, int transfercapability)
{
struct ast_channel *tmp;
int deflaw;
@@ -5851,7 +5820,7 @@ static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int
int features;
struct ast_str *chan_name;
struct ast_variable *v;
- ZT_PARAMS ps;
+ DAHDI_PARAMS ps;
if (i->subs[index].owner) {
ast_log(LOG_WARNING, "Channel %d already has a %s call\n", i->channel,subnames[index]);
return NULL;
@@ -5874,22 +5843,22 @@ static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int
}
y++;
} while (x < 3);
- tmp = ast_channel_alloc(0, state, i->cid_num, i->cid_name, i->accountcode, i->exten, i->context, i->amaflags, "Zap/%s", chan_name->str);
+ tmp = ast_channel_alloc(0, state, i->cid_num, i->cid_name, i->accountcode, i->exten, i->context, i->amaflags, "DAHDI/%s", chan_name->str);
if (!tmp)
return NULL;
- tmp->tech = &zap_tech;
+ tmp->tech = &dahdi_tech;
ps.channo = i->channel;
- res = ioctl(i->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &ps);
+ res = ioctl(i->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &ps);
if (res) {
ast_log(LOG_WARNING, "Unable to get parameters, assuming MULAW\n");
- ps.curlaw = ZT_LAW_MULAW;
+ ps.curlaw = DAHDI_LAW_MULAW;
}
- if (ps.curlaw == ZT_LAW_ALAW)
+ if (ps.curlaw == DAHDI_LAW_ALAW)
deflaw = AST_FORMAT_ALAW;
else
deflaw = AST_FORMAT_ULAW;
if (law) {
- if (law == ZT_LAW_ALAW)
+ if (law == DAHDI_LAW_ALAW)
deflaw = AST_FORMAT_ALAW;
else
deflaw = AST_FORMAT_ULAW;
@@ -5902,7 +5871,7 @@ static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int
tmp->rawwriteformat = deflaw;
tmp->writeformat = deflaw;
i->subs[index].linear = 0;
- zt_setlinear(i->subs[index].zfd, i->subs[index].linear);
+ dahdi_setlinear(i->subs[index].zfd, i->subs[index].linear);
features = 0;
if (index == SUB_REAL) {
if (i->busydetect && CANBUSYDETECT(i))
@@ -5913,13 +5882,13 @@ static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int
(i->outgoing && (i->callprogress & CALLPROGRESS_FAX_OUTGOING))) {
features |= DSP_FEATURE_FAX_DETECT;
}
-#ifdef ZT_TONEDETECT
- x = ZT_TONEDETECT_ON | ZT_TONEDETECT_MUTE;
- if (ioctl(i->subs[index].zfd, ZT_TONEDETECT, &x)) {
+#ifdef DAHDI_TONEDETECT
+ x = DAHDI_TONEDETECT_ON | DAHDI_TONEDETECT_MUTE;
+ if (ioctl(i->subs[index].zfd, DAHDI_TONEDETECT, &x)) {
#endif
i->hardwaredtmf = 0;
features |= DSP_FEATURE_DIGIT_DETECT;
-#ifdef ZT_TONEDETECT
+#ifdef DAHDI_TONEDETECT
} else if (NEED_MFDETECT(i)) {
i->hardwaredtmf = 1;
features |= DSP_FEATURE_DIGIT_DETECT;
@@ -6012,7 +5981,7 @@ static struct ast_channel *zt_new(struct zt_pvt *i, int state, int startpbx, int
/* clear the fake event in case we posted one before we had ast_channel */
i->fake_event = 0;
/* Assure there is no confmute on this channel */
- zt_confmute(i, 0);
+ dahdi_confmute(i, 0);
i->muting = 0;
/* Configure the new channel jb */
ast_jb_configure(tmp, &global_jbconf);
@@ -6055,50 +6024,50 @@ static int my_getsigstr(struct ast_channel *chan, char *str, const char *term, i
}
}
-static int zt_wink(struct zt_pvt *p, int index)
+static int dahdi_wink(struct dahdi_pvt *p, int index)
{
int j;
- zt_set_hook(p->subs[index].zfd, ZT_WINK);
+ dahdi_set_hook(p->subs[index].zfd, DAHDI_WINK);
for (;;)
{
/* set bits of interest */
- j = ZT_IOMUX_SIGEVENT;
+ j = DAHDI_IOMUX_SIGEVENT;
/* wait for some happening */
- if (ioctl(p->subs[index].zfd,ZT_IOMUX,&j) == -1) return(-1);
+ if (ioctl(p->subs[index].zfd,DAHDI_IOMUX,&j) == -1) return(-1);
/* exit loop if we have it */
- if (j & ZT_IOMUX_SIGEVENT) break;
+ if (j & DAHDI_IOMUX_SIGEVENT) break;
}
/* get the event info */
- if (ioctl(p->subs[index].zfd,ZT_GETEVENT,&j) == -1) return(-1);
+ if (ioctl(p->subs[index].zfd,DAHDI_GETEVENT,&j) == -1) return(-1);
return 0;
}
-/*! \brief enable or disable the chan_zap Do-Not-Disturb mode for a Zaptel channel
- * \param zapchan "Physical" Zaptel channel (e.g: Zap/5)
+/*! \brief enable or disable the chan_dahdi Do-Not-Disturb mode for a DAHDI channel
+ * \param dahdichan "Physical" DAHDI channel (e.g: DAHDI/5)
* \param on 1 to enable, 0 to disable
*
- * chan_zap has a DND (Do Not Disturb) mode for each zapchan (physical
- * zaptel channel). Use this to enable or disable it.
+ * chan_dahdi has a DND (Do Not Disturb) mode for each dahdichan (physical
+ * DAHDI channel). Use this to enable or disable it.
*
- * \bug the use of the word "channel" for those zapchans is really confusing.
+ * \bug the use of the word "channel" for those dahdichans is really confusing.
*/
-static void zap_dnd(struct zt_pvt *zapchan, int on)
+static void dahdi_dnd(struct dahdi_pvt *dahdichan, int on)
{
/* Do not disturb */
- zapchan->dnd = on;
+ dahdichan->dnd = on;
ast_verb(3, "%s DND on channel %d\n",
on? "Enabled" : "Disabled",
- zapchan->channel);
+ dahdichan->channel);
manager_event(EVENT_FLAG_SYSTEM, "DNDState",
- "Channel: Zap/%d\r\n"
- "Status: %s\r\n", zapchan->channel,
+ "Channel: DAHDI/%d\r\n"
+ "Status: %s\r\n", dahdichan->channel,
on? "enabled" : "disabled");
}
static void *ss_thread(void *data)
{
struct ast_channel *chan = data;
- struct zt_pvt *p = chan->tech_pvt;
+ struct dahdi_pvt *p = chan->tech_pvt;
char exten[AST_MAX_EXTENSION] = "";
char exten2[AST_MAX_EXTENSION] = "";
unsigned char buf[256];
@@ -6132,7 +6101,7 @@ static void *ss_thread(void *data)
}
ast_verb(3, "Starting simple switch on '%s'\n", chan->name);
- index = zt_get_index(chan, p, 1);
+ index = dahdi_get_index(chan, p, 1);
if (index < 0) {
ast_log(LOG_WARNING, "Huh?\n");
ast_hangup(chan);
@@ -6153,7 +6122,7 @@ static void *ss_thread(void *data)
if (len && !ast_ignore_pattern(chan->context, exten))
tone_zone_play_tone(p->subs[index].zfd, -1);
else
- tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);
+ tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALTONE);
if (ast_exists_extension(chan, chan->context, exten, 1, p->cid_num))
timeout = matchdigittimeout;
else
@@ -6180,7 +6149,7 @@ static void *ss_thread(void *data)
/* Start the real PBX */
ast_copy_string(chan->exten, exten, sizeof(chan->exten));
if (p->dsp) ast_dsp_digitreset(p->dsp);
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
ast_setstate(chan, AST_STATE_RING);
res = ast_pbx_run(chan);
if (res) {
@@ -6208,7 +6177,7 @@ static void *ss_thread(void *data)
case SIG_SF_FEATDMF:
case SIG_SF_FEATB:
case SIG_SFWINK:
- if (zt_wink(p, index))
+ if (dahdi_wink(p, index))
return NULL;
/* Fall through */
case SIG_EM:
@@ -6246,7 +6215,7 @@ static void *ss_thread(void *data)
case SIG_FEATDMF_TA:
res = my_getsigstr(chan, dtmfbuf + 1, "#", 3000);
if ((res < 1) && (p->dsp)) ast_dsp_digitreset(p->dsp);
- if (zt_wink(p, index)) return NULL;
+ if (dahdi_wink(p, index)) return NULL;
dtmfbuf[0] = 0;
/* Wait for the first digit (up to 5 seconds). */
res = ast_waitfordigit(chan, 5000);
@@ -6261,7 +6230,7 @@ static void *ss_thread(void *data)
/* if international caca, do it again to get real ANO */
if ((p->sig == SIG_FEATDMF) && (dtmfbuf[1] != '0') && (strlen(dtmfbuf) != 14))
{
- if (zt_wink(p, index)) return NULL;
+ if (dahdi_wink(p, index)) return NULL;
dtmfbuf[0] = 0;
/* Wait for the first digit (up to 5 seconds). */
res = ast_waitfordigit(chan, 5000);
@@ -6272,7 +6241,7 @@ static void *ss_thread(void *data)
if (res > 0) {
/* if E911, take off hook */
if (p->sig == SIG_E911)
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
res = my_getsigstr(chan, dtmfbuf + strlen(dtmfbuf), "#", 3000);
}
if ((res < 1) && (p->dsp)) ast_dsp_digitreset(p->dsp);
@@ -6336,7 +6305,7 @@ static void *ss_thread(void *data)
ast_hangup(chan);
return NULL;
}
- zt_set_hook(p->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
ast_dsp_set_digitmode(p->dsp, DSP_DIGITMODE_MF | p->dtmfrelax);
res = my_getsigstr(chan, anibuf, "#", 10000);
if ((res > 0) && (strlen(anibuf) > 2)) {
@@ -6419,13 +6388,13 @@ static void *ss_thread(void *data)
ast_log(LOG_WARNING, "Got a non-Feature Group B input on channel %d. Assuming E&M Wink instead\n", p->channel);
}
if ((p->sig == SIG_FEATDMF) || (p->sig == SIG_FEATDMF_TA)) {
- zt_wink(p, index);
+ dahdi_wink(p, index);
/* some switches require a minimum guard time between
the last FGD wink and something that answers
immediately. This ensures it */
if (ast_safe_sleep(chan,100)) return NULL;
}
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
if (NEED_MFDETECT(p)) {
if (p->dsp) {
if (!p->hardwaredtmf)
@@ -6443,13 +6412,13 @@ static void *ss_thread(void *data)
res = ast_pbx_run(chan);
if (res) {
ast_log(LOG_WARNING, "PBX exited non-zero\n");
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
}
return NULL;
} else {
ast_verb(2, "Unknown extension '%s' in context '%s' requested\n", exten, chan->context);
sleep(2);
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_INFO);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_INFO);
if (res < 0)
ast_log(LOG_WARNING, "Unable to start special tone on %d\n", p->channel);
else
@@ -6457,7 +6426,7 @@ static void *ss_thread(void *data)
res = ast_streamfile(chan, "ss-noservice", chan->language);
if (res >= 0)
ast_waitstream(chan, "");
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
ast_hangup(chan);
return NULL;
}
@@ -6492,21 +6461,21 @@ static void *ss_thread(void *data)
if (!ast_ignore_pattern(chan->context, exten))
tone_zone_play_tone(p->subs[index].zfd, -1);
else
- tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);
+ tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALTONE);
if (ast_exists_extension(chan, chan->context, exten, 1, p->cid_num) && strcmp(exten, ast_parking_ext())) {
if (!res || !ast_matchmore_extension(chan, chan->context, exten, 1, p->cid_num)) {
if (getforward) {
/* Record this as the forwarding extension */
ast_copy_string(p->call_forward, exten, sizeof(p->call_forward));
ast_verb(3, "Setting call forward to '%s' on channel %d\n", p->call_forward, p->channel);
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
if (res)
break;
usleep(500000);
res = tone_zone_play_tone(p->subs[index].zfd, -1);
sleep(1);
memset(exten, 0, sizeof(exten));
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALTONE);
len = 0;
getforward = 0;
} else {
@@ -6523,11 +6492,11 @@ static void *ss_thread(void *data)
ast_set_callerid(chan, NULL, p->cid_name, NULL);
}
ast_setstate(chan, AST_STATE_RING);
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
res = ast_pbx_run(chan);
if (res) {
ast_log(LOG_WARNING, "PBX exited non-zero\n");
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
}
return NULL;
}
@@ -6538,21 +6507,21 @@ static void *ss_thread(void *data)
}
} else if (res == 0) {
ast_debug(1, "not enough digits (and no ambiguous match)...\n");
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
- zt_wait_event(p->subs[index].zfd);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
+ dahdi_wait_event(p->subs[index].zfd);
ast_hangup(chan);
return NULL;
} else if (p->callwaiting && !strcmp(exten, "*70")) {
ast_verb(3, "Disabling call waiting on %s\n", chan->name);
/* Disable call waiting if enabled */
p->callwaiting = 0;
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
if (res) {
ast_log(LOG_WARNING, "Unable to do dial recall on channel %s: %s\n",
chan->name, strerror(errno));
}
len = 0;
- ioctl(p->subs[index].zfd,ZT_CONFDIAG,&len);
+ ioctl(p->subs[index].zfd,DAHDI_CONFDIAG,&len);
memset(exten, 0, sizeof(exten));
timeout = firstdigittimeout;
@@ -6570,11 +6539,11 @@ static void *ss_thread(void *data)
swap_subs(p, SUB_CALLWAIT, SUB_THREEWAY);
unalloc_sub(p, SUB_THREEWAY);
}
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
if (ast_pickup_call(chan)) {
ast_debug(1, "No call pickup possible...\n");
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
- zt_wait_event(p->subs[index].zfd);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
+ dahdi_wait_event(p->subs[index].zfd);
}
ast_hangup(chan);
return NULL;
@@ -6594,7 +6563,7 @@ static void *ss_thread(void *data)
if (chan->cid.cid_name)
ast_free(chan->cid.cid_name);
chan->cid.cid_name = NULL;
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
if (res) {
ast_log(LOG_WARNING, "Unable to do dial recall on channel %s: %s\n",
chan->name, strerror(errno));
@@ -6608,30 +6577,30 @@ static void *ss_thread(void *data)
res = ast_say_digit_str(chan, p->lastcid_num, "", chan->language);
}
if (!res)
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
break;
} else if (!strcmp(exten, "*78")) {
- zap_dnd(p, 1);
+ dahdi_dnd(p, 1);
/* Do not disturb */
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
getforward = 0;
memset(exten, 0, sizeof(exten));
len = 0;
} else if (!strcmp(exten, "*79")) {
- zap_dnd(p, 0);
+ dahdi_dnd(p, 0);
/* Do not disturb */
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
getforward = 0;
memset(exten, 0, sizeof(exten));
len = 0;
} else if (p->cancallforward && !strcmp(exten, "*72")) {
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
getforward = 1;
memset(exten, 0, sizeof(exten));
len = 0;
} else if (p->cancallforward && !strcmp(exten, "*73")) {
ast_verb(3, "Cancelling call forwarding on channel %d\n", p->channel);
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
memset(p->call_forward, 0, sizeof(p->call_forward));
getforward = 0;
memset(exten, 0, sizeof(exten));
@@ -6648,7 +6617,7 @@ static void *ss_thread(void *data)
ast_verb(3, "Blacklisting number %s\n", p->lastcid_num);
res = ast_db_put("blacklist", p->lastcid_num, "1");
if (!res) {
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
memset(exten, 0, sizeof(exten));
len = 0;
}
@@ -6663,7 +6632,7 @@ static void *ss_thread(void *data)
ast_free(chan->cid.cid_name);
chan->cid.cid_name = NULL;
ast_set_callerid(chan, p->cid_num, p->cid_name, NULL);
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);
if (res) {
ast_log(LOG_WARNING, "Unable to do dial recall on channel %s: %s\n",
chan->name, strerror(errno));
@@ -6674,19 +6643,19 @@ static void *ss_thread(void *data)
} else if (!strcmp(exten, "*0")) {
struct ast_channel *nbridge =
p->subs[SUB_THREEWAY].owner;
- struct zt_pvt *pbridge = NULL;
+ struct dahdi_pvt *pbridge = NULL;
/* set up the private struct of the bridged one, if any */
if (nbridge && ast_bridged_channel(nbridge))
pbridge = ast_bridged_channel(nbridge)->tech_pvt;
if (nbridge && pbridge &&
- (nbridge->tech == &zap_tech) &&
- (ast_bridged_channel(nbridge)->tech == &zap_tech) &&
+ (nbridge->tech == &dahdi_tech) &&
+ (ast_bridged_channel(nbridge)->tech == &dahdi_tech) &&
ISTRUNK(pbridge)) {
- int func = ZT_FLASH;
+ int func = DAHDI_FLASH;
/* Clear out the dial buffer */
p->dop.dialstr[0] = '\0';
/* flash hookswitch */
- if ((ioctl(pbridge->subs[SUB_REAL].zfd,ZT_HOOK,&func) == -1) && (errno != EINPROGRESS)) {
+ if ((ioctl(pbridge->subs[SUB_REAL].zfd,DAHDI_HOOK,&func) == -1) && (errno != EINPROGRESS)) {
ast_log(LOG_WARNING, "Unable to flash external trunk on channel %s: %s\n",
nbridge->name, strerror(errno));
}
@@ -6698,8 +6667,8 @@ static void *ss_thread(void *data)
ast_hangup(chan);
return NULL;
} else {
- tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
- zt_wait_event(p->subs[index].zfd);
+ tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
+ dahdi_wait_event(p->subs[index].zfd);
tone_zone_play_tone(p->subs[index].zfd, -1);
swap_subs(p, SUB_REAL, SUB_THREEWAY);
unalloc_sub(p, SUB_THREEWAY);
@@ -6783,7 +6752,7 @@ static void *ss_thread(void *data)
cs = NULL;
ast_debug(1, "Receiving DTMF cid on "
"channel %s\n", chan->name);
- zt_setlinear(p->subs[index].zfd, 0);
+ dahdi_setlinear(p->subs[index].zfd, 0);
res = 2000;
for (;;) {
struct ast_frame *f;
@@ -6808,7 +6777,7 @@ static void *ss_thread(void *data)
break; /* Got ring */
}
dtmfbuf[i] = '\0';
- zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
/* Got cid and ring. */
ast_debug(1, "CID got string '%s'\n", dtmfbuf);
callerid_get_dtmf(dtmfbuf, dtmfcid, &flags);
@@ -6828,25 +6797,25 @@ static void *ss_thread(void *data)
bump_gains(p);
#endif
/* Take out of linear mode for Caller*ID processing */
- zt_setlinear(p->subs[index].zfd, 0);
+ dahdi_setlinear(p->subs[index].zfd, 0);
/* First we wait and listen for the Caller*ID */
for (;;) {
- i = ZT_IOMUX_READ | ZT_IOMUX_SIGEVENT;
- if ((res = ioctl(p->subs[index].zfd, ZT_IOMUX, &i))) {
+ i = DAHDI_IOMUX_READ | DAHDI_IOMUX_SIGEVENT;
+ if ((res = ioctl(p->subs[index].zfd, DAHDI_IOMUX, &i))) {
ast_log(LOG_WARNING, "I/O MUX failed: %s\n", strerror(errno));
callerid_free(cs);
ast_hangup(chan);
return NULL;
}
- if (i & ZT_IOMUX_SIGEVENT) {
- res = zt_get_event(p->subs[index].zfd);
+ if (i & DAHDI_IOMUX_SIGEVENT) {
+ res = dahdi_get_event(p->subs[index].zfd);
ast_log(LOG_NOTICE, "Got event %d (%s)...\n", res, event2str(res));
if (p->cid_signalling == CID_SIG_V23_JP) {
-#ifdef ZT_EVENT_RINGBEGIN
- if (res == ZT_EVENT_RINGBEGIN) {
- res = zt_set_hook(p->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+#ifdef DAHDI_EVENT_RINGBEGIN
+ if (res == DAHDI_EVENT_RINGBEGIN) {
+ res = dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
usleep(1);
}
#endif
@@ -6854,7 +6823,7 @@ static void *ss_thread(void *data)
res = 0;
break;
}
- } else if (i & ZT_IOMUX_READ) {
+ } else if (i & DAHDI_IOMUX_READ) {
res = read(p->subs[index].zfd, buf, sizeof(buf));
if (res < 0) {
if (errno != ELAST) {
@@ -6888,7 +6857,7 @@ static void *ss_thread(void *data)
}
if (p->cid_signalling == CID_SIG_V23_JP) {
- res = zt_set_hook(p->subs[SUB_REAL].zfd, ZT_ONHOOK);
+ res = dahdi_set_hook(p->subs[SUB_REAL].zfd, DAHDI_ONHOOK);
usleep(1);
res = 4000;
} else {
@@ -6931,15 +6900,15 @@ static void *ss_thread(void *data)
}
for (;;) {
- i = ZT_IOMUX_READ | ZT_IOMUX_SIGEVENT;
- if ((res = ioctl(p->subs[index].zfd, ZT_IOMUX, &i))) {
+ i = DAHDI_IOMUX_READ | DAHDI_IOMUX_SIGEVENT;
+ if ((res = ioctl(p->subs[index].zfd, DAHDI_IOMUX, &i))) {
ast_log(LOG_WARNING, "I/O MUX failed: %s\n", strerror(errno));
callerid_free(cs);
ast_hangup(chan);
return NULL;
}
- if (i & ZT_IOMUX_SIGEVENT) {
- res = zt_get_event(p->subs[index].zfd);
+ if (i & DAHDI_IOMUX_SIGEVENT) {
+ res = dahdi_get_event(p->subs[index].zfd);
ast_log(LOG_NOTICE, "Got event %d (%s)...\n", res, event2str(res));
res = 0;
/* Let us detect distinctive ring */
@@ -6949,10 +6918,10 @@ static void *ss_thread(void *data)
if (p->ringt < p->ringt_base/2)
break;
/* Increment the ringT counter so we can match it against
- values in zapata.conf for distinctive ring */
+ values in chan_dahdi.conf for distinctive ring */
if (++receivedRingT == (sizeof(curRingData) / sizeof(curRingData[0])))
break;
- } else if (i & ZT_IOMUX_READ) {
+ } else if (i & DAHDI_IOMUX_READ) {
res = read(p->subs[index].zfd, buf, sizeof(buf));
if (res < 0) {
if (errno != ELAST) {
@@ -6974,7 +6943,7 @@ static void *ss_thread(void *data)
/* this only shows up if you have n of the dring patterns filled in */
ast_verb(3, "Detected ring pattern: %d,%d,%d\n",curRingData[0],curRingData[1],curRingData[2]);
for (counter = 0; counter < 3; counter++) {
- /* Check to see if the rings we received match any of the ones in zapata.conf for this
+ /* Check to see if the rings we received match any of the ones in chan_dahdi.conf for this
channel */
distMatches = 0;
for (counter1 = 0; counter1 < 3; counter1++) {
@@ -7003,7 +6972,7 @@ static void *ss_thread(void *data)
}
}
/* Restore linear mode (if appropriate) for Caller*ID processing */
- zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
#if 1
restore_gains(p);
#endif
@@ -7022,7 +6991,7 @@ static void *ss_thread(void *data)
if (p->cid_signalling == CID_SIG_DTMF) {
int i = 0;
cs = NULL;
- zt_setlinear(p->subs[index].zfd, 0);
+ dahdi_setlinear(p->subs[index].zfd, 0);
res = 2000;
for (;;) {
struct ast_frame *f;
@@ -7046,7 +7015,7 @@ static void *ss_thread(void *data)
}
dtmfbuf[i] = '\0';
- zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
/* Got cid and ring. */
callerid_get_dtmf(dtmfbuf, dtmfcid, &flags);
ast_log(LOG_DEBUG, "CID is '%s', flags %d\n",
@@ -7080,20 +7049,20 @@ static void *ss_thread(void *data)
}
/* Take out of linear mode for Caller*ID processing */
- zt_setlinear(p->subs[index].zfd, 0);
+ dahdi_setlinear(p->subs[index].zfd, 0);
for (;;) {
- i = ZT_IOMUX_READ | ZT_IOMUX_SIGEVENT;
- if ((res = ioctl(p->subs[index].zfd, ZT_IOMUX, &i))) {
+ i = DAHDI_IOMUX_READ | DAHDI_IOMUX_SIGEVENT;
+ if ((res = ioctl(p->subs[index].zfd, DAHDI_IOMUX, &i))) {
ast_log(LOG_WARNING, "I/O MUX failed: %s\n", strerror(errno));
callerid_free(cs);
ast_hangup(chan);
return NULL;
}
- if (i & ZT_IOMUX_SIGEVENT) {
- res = zt_get_event(p->subs[index].zfd);
+ if (i & DAHDI_IOMUX_SIGEVENT) {
+ res = dahdi_get_event(p->subs[index].zfd);
ast_log(LOG_NOTICE, "Got event %d (%s)...\n", res, event2str(res));
/* If we get a PR event, they hung up while processing calerid */
- if ( res == ZT_EVENT_POLARITY && p->hanguponpolarityswitch && p->polarity == POLARITY_REV) {
+ if ( res == DAHDI_EVENT_POLARITY && p->hanguponpolarityswitch && p->polarity == POLARITY_REV) {
ast_log(LOG_DEBUG, "Hanging up due to polarity reversal on channel %d while detecting callerid\n", p->channel);
p->polarity = POLARITY_IDLE;
callerid_free(cs);
@@ -7108,10 +7077,10 @@ static void *ss_thread(void *data)
if (p->ringt < p->ringt_base/2)
break;
/* Increment the ringT counter so we can match it against
- values in zapata.conf for distinctive ring */
+ values in chan_dahdi.conf for distinctive ring */
if (++receivedRingT == (sizeof(curRingData) / sizeof(curRingData[0])))
break;
- } else if (i & ZT_IOMUX_READ) {
+ } else if (i & DAHDI_IOMUX_READ) {
res = read(p->subs[index].zfd, buf, sizeof(buf));
if (res < 0) {
if (errno != ELAST) {
@@ -7151,15 +7120,15 @@ static void *ss_thread(void *data)
receivedRingT = 0;
ast_verb(3, "Detecting post-CID distinctive ring\n");
for (;;) {
- i = ZT_IOMUX_READ | ZT_IOMUX_SIGEVENT;
- if ((res = ioctl(p->subs[index].zfd, ZT_IOMUX, &i))) {
+ i = DAHDI_IOMUX_READ | DAHDI_IOMUX_SIGEVENT;
+ if ((res = ioctl(p->subs[index].zfd, DAHDI_IOMUX, &i))) {
ast_log(LOG_WARNING, "I/O MUX failed: %s\n", strerror(errno));
callerid_free(cs);
ast_hangup(chan);
return NULL;
}
- if (i & ZT_IOMUX_SIGEVENT) {
- res = zt_get_event(p->subs[index].zfd);
+ if (i & DAHDI_IOMUX_SIGEVENT) {
+ res = dahdi_get_event(p->subs[index].zfd);
ast_log(LOG_NOTICE, "Got event %d (%s)...\n", res, event2str(res));
res = 0;
/* Let us detect callerid when the telco uses distinctive ring */
@@ -7169,10 +7138,10 @@ static void *ss_thread(void *data)
if (p->ringt < p->ringt_base/2)
break;
/* Increment the ringT counter so we can match it against
- values in zapata.conf for distinctive ring */
+ values in chan_dahdi.conf for distinctive ring */
if (++receivedRingT == (sizeof(curRingData) / sizeof(curRingData[0])))
break;
- } else if (i & ZT_IOMUX_READ) {
+ } else if (i & DAHDI_IOMUX_READ) {
res = read(p->subs[index].zfd, buf, sizeof(buf));
if (res < 0) {
if (errno != ELAST) {
@@ -7197,7 +7166,7 @@ static void *ss_thread(void *data)
ast_verb(3, "Detected ring pattern: %d,%d,%d\n",curRingData[0],curRingData[1],curRingData[2]);
for (counter = 0; counter < 3; counter++) {
- /* Check to see if the rings we received match any of the ones in zapata.conf for this
+ /* Check to see if the rings we received match any of the ones in chan_dahdi.conf for this
channel */
/* this only shows up if you have n of the dring patterns filled in */
ast_verb(3, "Checking %d,%d,%d\n",
@@ -7230,7 +7199,7 @@ static void *ss_thread(void *data)
}
}
/* Restore linear mode (if appropriate) for Caller*ID processing */
- zt_setlinear(p->subs[index].zfd, p->subs[index].linear);
+ dahdi_setlinear(p->subs[index].zfd, p->subs[index].linear);
#if 1
restore_gains(p);
#endif
@@ -7265,11 +7234,11 @@ static void *ss_thread(void *data)
return NULL;
default:
ast_log(LOG_WARNING, "Don't know how to handle simple switch with signalling %s on channel %d\n", sig2str(p->sig), p->channel);
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", p->channel);
}
- res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", p->channel);
ast_hangup(chan);
@@ -7277,7 +7246,7 @@ static void *ss_thread(void *data)
}
struct mwi_thread_data {
- struct zt_pvt *pvt;
+ struct dahdi_pvt *pvt;
unsigned char buf[READ_SIZE];
size_t len;
};
@@ -7320,35 +7289,35 @@ static void *mwi_thread(void *data)
bump_gains(mtd->pvt);
for (;;) {
- i = ZT_IOMUX_READ | ZT_IOMUX_SIGEVENT;
- if ((res = ioctl(mtd->pvt->subs[SUB_REAL].zfd, ZT_IOMUX, &i))) {
+ i = DAHDI_IOMUX_READ | DAHDI_IOMUX_SIGEVENT;
+ if ((res = ioctl(mtd->pvt->subs[SUB_REAL].zfd, DAHDI_IOMUX, &i))) {
ast_log(LOG_WARNING, "I/O MUX failed: %s\n", strerror(errno));
goto quit;
}
- if (i & ZT_IOMUX_SIGEVENT) {
+ if (i & DAHDI_IOMUX_SIGEVENT) {
struct ast_channel *chan;
/* If we get an event, screen out events that we do not act on.
* Otherwise, cancel and go to the simple switch to let it deal with it.
*/
- res = zt_get_event(mtd->pvt->subs[SUB_REAL].zfd);
+ res = dahdi_get_event(mtd->pvt->subs[SUB_REAL].zfd);
switch (res) {
-#ifdef HAVE_ZAPTEL_NEONMWI
- case ZT_EVENT_NEONMWI_ACTIVE:
- case ZT_EVENT_NEONMWI_INACTIVE:
+#ifdef HAVE_DAHDI_NEONMWI
+ case DAHDI_EVENT_NEONMWI_ACTIVE:
+ case DAHDI_EVENT_NEONMWI_INACTIVE:
#endif
- case ZT_EVENT_NONE:
- case ZT_EVENT_BITSCHANGED:
+ case DAHDI_EVENT_NONE:
+ case DAHDI_EVENT_BITSCHANGED:
break;
- case ZT_EVENT_NOALARM:
+ case DAHDI_EVENT_NOALARM:
mtd->pvt->inalarm = 0;
ast_log(LOG_NOTICE, "Alarm cleared on channel %d\n", mtd->pvt->channel);
manager_event(EVENT_FLAG_SYSTEM, "AlarmClear",
"Channel: %d\r\n", mtd->pvt->channel);
break;
- case ZT_EVENT_ALARM:
+ case DAHDI_EVENT_ALARM:
mtd->pvt->inalarm = 1;
res = get_alarms(mtd->pvt);
ast_log(LOG_WARNING, "Detected alarm on channel %d: %s\n", mtd->pvt->channel, alarm2str(res));
@@ -7364,13 +7333,13 @@ static void *mwi_thread(void *data)
restore_gains(mtd->pvt);
mtd->pvt->ringt = mtd->pvt->ringt_base;
- if ((chan = zt_new(mtd->pvt, AST_STATE_RING, 0, SUB_REAL, 0, 0))) {
+ if ((chan = dahdi_new(mtd->pvt, AST_STATE_RING, 0, SUB_REAL, 0, 0))) {
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
if (ast_pthread_create(&threadid, &attr, ss_thread, chan)) {
ast_log(LOG_WARNING, "Unable to start simple switch thread on channel %d\n", mtd->pvt->channel);
- res = tone_zone_play_tone(mtd->pvt->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(mtd->pvt->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", mtd->pvt->channel);
ast_hangup(chan);
@@ -7382,7 +7351,7 @@ static void *mwi_thread(void *data)
ast_log(LOG_WARNING, "Could not create channel to handle call\n");
}
}
- } else if (i & ZT_IOMUX_READ) {
+ } else if (i & DAHDI_IOMUX_READ) {
if ((res = read(mtd->pvt->subs[SUB_REAL].zfd, mtd->buf, sizeof(mtd->buf))) < 0) {
if (errno != ELAST) {
ast_log(LOG_WARNING, "read returned error: %s\n", strerror(errno));
@@ -7437,11 +7406,11 @@ quit_no_clean:
return NULL;
}
-/* destroy a Zaptel channel, identified by its number */
-static int zap_destroy_channel_bynum(int channel)
+/* destroy a DAHDI channel, identified by its number */
+static int dahdi_destroy_channel_bynum(int channel)
{
- struct zt_pvt *tmp = NULL;
- struct zt_pvt *prev = NULL;
+ struct dahdi_pvt *tmp = NULL;
+ struct dahdi_pvt *prev = NULL;
tmp = iflist;
while (tmp) {
@@ -7455,7 +7424,7 @@ static int zap_destroy_channel_bynum(int channel)
return RESULT_FAILURE;
}
-static int handle_init_event(struct zt_pvt *i, int event)
+static int handle_init_event(struct dahdi_pvt *i, int event)
{
int res;
pthread_t threadid;
@@ -7464,11 +7433,11 @@ static int handle_init_event(struct zt_pvt *i, int event)
/* Handle an event on a given channel for the monitor thread. */
switch (event) {
- case ZT_EVENT_NONE:
- case ZT_EVENT_BITSCHANGED:
+ case DAHDI_EVENT_NONE:
+ case DAHDI_EVENT_BITSCHANGED:
break;
- case ZT_EVENT_WINKFLASH:
- case ZT_EVENT_RINGOFFHOOK:
+ case DAHDI_EVENT_WINKFLASH:
+ case DAHDI_EVENT_RINGOFFHOOK:
if (i->inalarm) break;
if (i->radio) break;
/* Got a ring/answer. What kind of channel are we? */
@@ -7476,7 +7445,7 @@ static int handle_init_event(struct zt_pvt *i, int event)
case SIG_FXOLS:
case SIG_FXOGS:
case SIG_FXOKS:
- res = zt_set_hook(i->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ res = dahdi_set_hook(i->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
if (res && (errno == EBUSY))
break;
if (i->cidspill) {
@@ -7485,29 +7454,29 @@ static int handle_init_event(struct zt_pvt *i, int event)
i->cidspill = NULL;
}
if (i->immediate) {
- zt_enable_ec(i);
+ dahdi_enable_ec(i);
/* The channel is immediately up. Start right away */
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_RINGTONE);
- chan = zt_new(i, AST_STATE_RING, 1, SUB_REAL, 0, 0);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_RINGTONE);
+ chan = dahdi_new(i, AST_STATE_RING, 1, SUB_REAL, 0, 0);
if (!chan) {
ast_log(LOG_WARNING, "Unable to start PBX on channel %d\n", i->channel);
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", i->channel);
}
} else {
/* Check for callerid, digits, etc */
- chan = zt_new(i, AST_STATE_RESERVED, 0, SUB_REAL, 0, 0);
+ chan = dahdi_new(i, AST_STATE_RESERVED, 0, SUB_REAL, 0, 0);
if (chan) {
if (has_voicemail(i))
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_STUTTER);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_STUTTER);
else
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_DIALTONE);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_DIALTONE);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play dialtone on channel %d, do you have defaultzone and loadzone defined?\n", i->channel);
if (ast_pthread_create_detached(&threadid, NULL, ss_thread, chan)) {
ast_log(LOG_WARNING, "Unable to start simple switch thread on channel %d\n", i->channel);
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", i->channel);
ast_hangup(chan);
@@ -7538,13 +7507,13 @@ static int handle_init_event(struct zt_pvt *i, int event)
case SIG_SF:
/* Check for callerid, digits, etc */
if (i->cid_start == CID_START_POLARITY_IN) {
- chan = zt_new(i, AST_STATE_PRERING, 0, SUB_REAL, 0, 0);
+ chan = dahdi_new(i, AST_STATE_PRERING, 0, SUB_REAL, 0, 0);
} else {
- chan = zt_new(i, AST_STATE_RING, 0, SUB_REAL, 0, 0);
+ chan = dahdi_new(i, AST_STATE_RING, 0, SUB_REAL, 0, 0);
}
if (chan && ast_pthread_create_detached(&threadid, NULL, ss_thread, chan)) {
ast_log(LOG_WARNING, "Unable to start simple switch thread on channel %d\n", i->channel);
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", i->channel);
ast_hangup(chan);
@@ -7554,19 +7523,19 @@ static int handle_init_event(struct zt_pvt *i, int event)
break;
default:
ast_log(LOG_WARNING, "Don't know how to handle ring/answer with signalling %s on channel %d\n", sig2str(i->sig), i->channel);
- res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, ZT_TONE_CONGESTION);
+ res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, DAHDI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", i->channel);
return -1;
}
break;
- case ZT_EVENT_NOALARM:
+ case DAHDI_EVENT_NOALARM:
i->inalarm = 0;
ast_log(LOG_NOTICE, "Alarm cleared on channel %d\n", i->channel);
manager_event(EVENT_FLAG_SYSTEM, "AlarmClear",
"Channel: %d\r\n", i->channel);
break;
- case ZT_EVENT_ALARM:
+ case DAHDI_EVENT_ALARM:
i->inalarm = 1;
res = get_alarms(i);
ast_log(LOG_WARNING, "Detected alarm on channel %d: %s\n", i->channel, alarm2str(res));
@@ -7575,7 +7544,7 @@ static int handle_init_event(struct zt_pvt *i, int event)
"Channel: %d\r\n",
alarm2str(res), i->channel);
/* fall thru intentionally */
- case ZT_EVENT_ONHOOK:
+ case DAHDI_EVENT_ONHOOK:
if (i->radio)
break;
/* Back on hook. Hang up. */
@@ -7601,26 +7570,26 @@ static int handle_init_event(struct zt_pvt *i, int event)
case SIG_FXSGS:
case SIG_FXSKS:
case SIG_GR303FXSKS:
- zt_disable_ec(i);
+ dahdi_disable_ec(i);
res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, -1);
- zt_set_hook(i->subs[SUB_REAL].zfd, ZT_ONHOOK);
+ dahdi_set_hook(i->subs[SUB_REAL].zfd, DAHDI_ONHOOK);
break;
case SIG_GR303FXOKS:
case SIG_FXOKS:
- zt_disable_ec(i);
+ dahdi_disable_ec(i);
/* Diddle the battery for the zhone */
#ifdef ZHONE_HACK
- zt_set_hook(i->subs[SUB_REAL].zfd, ZT_OFFHOOK);
+ dahdi_set_hook(i->subs[SUB_REAL].zfd, DAHDI_OFFHOOK);
usleep(1);
#endif
res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, -1);
- zt_set_hook(i->subs[SUB_REAL].zfd, ZT_ONHOOK);
+ dahdi_set_hook(i->subs[SUB_REAL].zfd, DAHDI_ONHOOK);
break;
case SIG_PRI:
case SIG_SS7:
case SIG_BRI:
case SIG_BRI_PTMP:
- zt_disable_ec(i);
+ dahdi_disable_ec(i);
res = tone_zone_play_tone(i->subs[SUB_REAL].zfd, -1);
break;
default:
@@ -7629,7 +7598,7 @@ static int handle_init_event(struct zt_pvt *i, int event)
return -1;
}
break;
- case ZT_EVENT_POLARITY:
+ case DAHDI_EVENT_POLARITY:
switch (i->sig) {
case SIG_FXSLS:
case SIG_FXSKS:
@@ -7645,7 +7614,7 @@ static int handle_init_event(struct zt_pvt *i, int event)
ast_verb(2, "Starting post polarity "
"CID detection on channel %d\n",
i->channel);
- chan = zt_new(i, AST_STATE_PRERING, 0, SUB_REAL, 0, 0);
+ chan = dahdi_new(i, AST_STATE_PRERING, 0, SUB_REAL, 0, 0);
if (chan && ast_pthread_create_detached(&threadid, NULL, ss_thread, chan)) {
ast_log(LOG_WARNING, "Unable to start simple switch thread on channel %d\n", i->channel);
}
@@ -7657,20 +7626,20 @@ static int handle_init_event(struct zt_pvt *i, int event)
"interface %d\n", i->channel);
}
break;
- case ZT_EVENT_REMOVED: /* destroy channel */
+ case DAHDI_EVENT_REMOVED: /* destroy channel */
ast_log(LOG_NOTICE,
- "Got ZT_EVENT_REMOVED. Destroying channel %d\n",
+ "Got DAHDI_EVENT_REMOVED. Destroying channel %d\n",
i->channel);
- zap_destroy_channel_bynum(i->channel);
+ dahdi_destroy_channel_bynum(i->channel);
break;
-#ifdef HAVE_ZAPTEL_NEONMWI
- case ZT_EVENT_NEONMWI_ACTIVE:
+#ifdef HAVE_DAHDI_NEONMWI
+ case DAHDI_EVENT_NEONMWI_ACTIVE:
if (i->mwimonitor_neon) {
notify_message(i->mailbox, 1);
ast_log(LOG_NOTICE, "NEON MWI set for channel %d, mailbox %s \n", i->channel, i->mailbox);
}
break;
- case ZT_EVENT_NEONMWI_INACTIVE:
+ case DAHDI_EVENT_NEONMWI_INACTIVE:
if (i->mwimonitor_neon) {
notify_message(i->mailbox, 0);
ast_log(LOG_NOTICE, "NEON MWI cleared for channel %d, mailbox %s\n", i->channel, i->mailbox);
@@ -7684,8 +7653,8 @@ static int handle_init_event(struct zt_pvt *i, int event)
static void *do_monitor(void *data)
{
int count, res, res2, spoint, pollres=0;
- struct zt_pvt *i;
- struct zt_pvt *last = NULL;
+ struct dahdi_pvt *i;
+ struct dahdi_pvt *last = NULL;
time_t thispass = 0, lastpass = 0;
int found;
char buf[1024];
@@ -7718,7 +7687,7 @@ static void *do_monitor(void *data)
lastalloc = ifcount;
}
/* Build the stuff we're going to poll on, that is the socket of every
- zt_pvt that does not have an associated owner channel */
+ dahdi_pvt that does not have an associated owner channel */
count = 0;
i = iflist;
while (i) {
@@ -7764,24 +7733,24 @@ static void *do_monitor(void *data)
last = i;
if (last) {
if (!last->cidspill && !last->owner && !ast_strlen_zero(last->mailbox) && (thispass - last->onhooktime > 3) &&
- (last->sig & __ZT_SIG_FXO)) {
+ (last->sig & __DAHDI_SIG_FXO)) {
res = has_voicemail(last);
if (last->msgstate != res) {
int x;
ast_debug(1, "Message status for %s changed from %d to %d on %d\n", last->mailbox, last->msgstate, res, last->channel);
-#ifdef ZT_VMWI
- res2 = ioctl(last->subs[SUB_REAL].zfd, ZT_VMWI, res);
+#ifdef DAHDI_VMWI
+ res2 = ioctl(last->subs[SUB_REAL].zfd, DAHDI_VMWI, res);
if (res2)
ast_log(LOG_DEBUG, "Unable to control message waiting led on channel %d\n", last->channel);
#endif
- x = ZT_FLUSH_BOTH;
- res2 = ioctl(last->subs[SUB_REAL].zfd, ZT_FLUSH, &x);
+ x = DAHDI_FLUSH_BOTH;
+ res2 = ioctl(last->subs[SUB_REAL].zfd, DAHDI_FLUSH, &x);
if (res2)
ast_log(LOG_WARNING, "Unable to flush input on channel %d\n", last->channel);
if ((last->cidspill = ast_calloc(1, MAX_CALLERID_SIZE))) {
/* Turn on on hook transfer for 4 seconds */
x = 4000;
- ioctl(last->subs[SUB_REAL].zfd, ZT_ONHOOKTRANSFER, &x);
+ ioctl(last->subs[SUB_REAL].zfd, DAHDI_ONHOOKTRANSFER, &x);
last->cidlen = vmwi_generate(last->cidspill, res, 1, AST_LAW(last));
last->cidpos = 0;
last->msgstate = res;
@@ -7797,7 +7766,7 @@ static void *do_monitor(void *data)
if ((i->subs[SUB_REAL].zfd > -1) && i->sig) {
if (i->radio && !i->owner)
{
- res = zt_get_event(i->subs[SUB_REAL].zfd);
+ res = dahdi_get_event(i->subs[SUB_REAL].zfd);
if (res)
{
ast_debug(1, "Monitor doohicky got event %s on radio channel %d\n", event2str(res), i->channel);
@@ -7878,7 +7847,7 @@ static void *do_monitor(void *data)
i = i->next;
continue;
}
- res = zt_get_event(i->subs[SUB_REAL].zfd);
+ res = dahdi_get_event(i->subs[SUB_REAL].zfd);
ast_debug(1, "Monitor doohicky got event %s on channel %d\n", event2str(res), i->channel);
/* Don't hold iflock while handling init events */
ast_mutex_unlock(&iflock);
@@ -7922,7 +7891,7 @@ static int restart_monitor(void)
}
#ifdef HAVE_PRI
-static int pri_resolve_span(int *span, int channel, int offset, struct zt_spaninfo *si)
+static int pri_resolve_span(int *span, int channel, int offset, struct dahdi_spaninfo *si)
{
int x;
int trunkgroup;
@@ -7962,8 +7931,8 @@ static int pri_resolve_span(int *span, int channel, int offset, struct zt_spanin
static int pri_create_trunkgroup(int trunkgroup, int *channels)
{
- struct zt_spaninfo si;
- ZT_PARAMS p;
+ struct dahdi_spaninfo si;
+ DAHDI_PARAMS p;
int fd;
int span;
int ospan=0;
@@ -7979,35 +7948,35 @@ static int pri_create_trunkgroup(int trunkgroup, int *channels)
break;
memset(&si, 0, sizeof(si));
memset(&p, 0, sizeof(p));
- fd = open("/dev/zap/channel", O_RDWR);
+ fd = open("/dev/dahdi/channel", O_RDWR);
if (fd < 0) {
ast_log(LOG_WARNING, "Failed to open channel: %s\n", strerror(errno));
return -1;
}
x = channels[y];
- if (ioctl(fd, ZT_SPECIFY, &x)) {
+ if (ioctl(fd, DAHDI_SPECIFY, &x)) {
ast_log(LOG_WARNING, "Failed to specify channel %d: %s\n", channels[y], strerror(errno));
- zt_close(fd);
+ dahdi_close(fd);
return -1;
}
- if (ioctl(fd, ZT_GET_PARAMS, &p)) {
+ if (ioctl(fd, DAHDI_GET_PARAMS, &p)) {
ast_log(LOG_WARNING, "Failed to get channel parameters for channel %d: %s\n", channels[y], strerror(errno));
return -1;
}
- if (ioctl(fd, ZT_SPANSTAT, &si)) {
+ if (ioctl(fd, DAHDI_SPANSTAT, &si)) {
ast_log(LOG_WARNING, "Failed go get span information on channel %d (span %d)\n", channels[y], p.spanno);
- zt_close(fd);
+ dahdi_close(fd);
return -1;
}
span = p.spanno - 1;
if (pris[span].trunkgroup) {
ast_log(LOG_WARNING, "Span %d is already provisioned for trunk group %d\n", span + 1, pris[span].trunkgroup);
- zt_close(fd);
+ dahdi_close(fd);
return -1;
}
if (pris[span].pvts[0]) {
ast_log(LOG_WARNING, "Span %d is already provisioned with channels (implicit PRI maybe?)\n", span + 1);
- zt_close(fd);
+ dahdi_close(fd);
return -1;
}
if (!y) {
@@ -8018,7 +7987,7 @@ static int pri_create_trunkgroup(int trunkgroup, int *channels)
pris[ospan].dchannels[y] = channels[y];
pris[ospan].dchanavail[y] |= DCHAN_PROVISIONED;
pris[span].span = span + 1;
- zt_close(fd);
+ dahdi_close(fd);
}
return 0;
}
@@ -8052,7 +8021,7 @@ static unsigned int parse_pointcode(const char *pcstring)
return 0;
}
-static struct zt_ss7 * ss7_resolve_linkset(int linkset)
+static struct dahdi_ss7 * ss7_resolve_linkset(int linkset)
{
if ((linkset < 0) || (linkset >= NUM_SPANS))
return NULL;
@@ -8061,8 +8030,8 @@ static struct zt_ss7 * ss7_resolve_linkset(int linkset)
}
#endif /* HAVE_SS7 */
-/* converts a Zaptel sigtype to signalling as can be configured from
- * zapata.conf.
+/* converts a DAHDI sigtype to signalling as can be configured from
+ * chan_dahdi.conf.
* While both have basically the same values, this will later be the
* place to add filters and sanity checks
*/
@@ -8071,23 +8040,23 @@ static int sigtype_to_signalling(int sigtype)
return sigtype;
}
-static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struct zt_pri *pri, int reloading)
+static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf, struct dahdi_pri *pri, int reloading)
{
- /* Make a zt_pvt structure for this interface (or CRV if "pri" is specified) */
- struct zt_pvt *tmp = NULL, *tmp2, *prev = NULL;
+ /* Make a dahdi_pvt structure for this interface (or CRV if "pri" is specified) */
+ struct dahdi_pvt *tmp = NULL, *tmp2, *prev = NULL;
char fn[80];
#if 1
- struct zt_bufferinfo bi;
+ struct dahdi_bufferinfo bi;
#endif
- struct zt_spaninfo si;
+ struct dahdi_spaninfo si;
int res;
int span = 0;
int here = 0;
int x;
- struct zt_pvt **wlist;
- struct zt_pvt **wend;
- ZT_PARAMS p;
+ struct dahdi_pvt **wlist;
+ struct dahdi_pvt **wend;
+ DAHDI_PARAMS p;
wlist = &iflist;
wend = &ifend;
@@ -8119,7 +8088,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
if (!here && !reloading) {
if (!(tmp = ast_calloc(1, sizeof(*tmp)))) {
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
ast_mutex_init(&tmp->lock);
@@ -8136,25 +8105,25 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
snprintf(fn, sizeof(fn), "%d", channel);
/* Open non-blocking */
if (!here)
- tmp->subs[SUB_REAL].zfd = zt_open(fn);
- /* Allocate a zapata structure */
+ tmp->subs[SUB_REAL].zfd = dahdi_open(fn);
+ /* Allocate a dahdi structure */
if (tmp->subs[SUB_REAL].zfd < 0) {
ast_log(LOG_ERROR, "Unable to open channel %d: %s\nhere = %d, tmp->channel = %d, channel = %d\n", channel, strerror(errno), here, tmp->channel, channel);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
memset(&p, 0, sizeof(p));
- res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &p);
+ res = ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &p);
if (res < 0) {
ast_log(LOG_ERROR, "Unable to get parameters\n");
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (conf->is_sig_auto)
chan_sig = sigtype_to_signalling(p.sigtype);
if (p.sigtype != (conf->chan.sig & 0x3ffff)) {
ast_log(LOG_ERROR, "Signalling requested on channel %d is %s but line is in %s signalling\n", channel, sig2str(conf->chan.sig), sig2str(p.sigtype));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
tmp->law = p.curlaw;
@@ -8169,24 +8138,24 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
}
}
#ifdef HAVE_SS7
- if (chan_sig == SIG_SS7) {
- struct zt_ss7 *ss7;
+ if (conf->chan.sig == SIG_SS7) {
+ struct dahdi_ss7 *ss7;
int clear = 0;
- if (ioctl(tmp->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &clear)) {
+ if (ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &clear)) {
ast_log(LOG_ERROR, "Unable to set clear mode on clear channel %d of span %d: %s\n", channel, p.spanno, strerror(errno));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
ss7 = ss7_resolve_linkset(cur_linkset);
if (!ss7) {
ast_log(LOG_ERROR, "Unable to find linkset %d\n", cur_linkset);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (cur_cicbeginswith < 0) {
ast_log(LOG_ERROR, "Need to set cicbeginswith for the channels!\n");
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
@@ -8209,27 +8178,27 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
}
#endif
#ifdef HAVE_PRI
- if ((chan_sig == SIG_PRI) || (chan_sig == SIG_BRI) || (chan_sig == SIG_BRI_PTMP) || (chan_sig == SIG_GR303FXOKS) || (chan_sig == SIG_GR303FXSKS)) {
+ if ((conf->chan.sig == SIG_PRI) || (conf->chan.sig == SIG_BRI) || (conf->chan.sig == SIG_BRI_PTMP) || (conf->chan.sig == SIG_GR303FXOKS) || (conf->chan.sig == SIG_GR303FXSKS)) {
int offset;
int myswitchtype;
int matchesdchan;
int x,y;
offset = 0;
- if (((chan_sig == SIG_PRI) || (chan_sig == SIG_BRI) || (chan_sig == SIG_BRI_PTMP))
- && ioctl(tmp->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &offset)) {
+ if (((conf->chan.sig == SIG_PRI) || (conf->chan.sig == SIG_BRI) || (conf->chan.sig == SIG_BRI_PTMP))
+ && ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &offset)) {
ast_log(LOG_ERROR, "Unable to set clear mode on clear channel %d of span %d: %s\n", channel, p.spanno, strerror(errno));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (span >= NUM_SPANS) {
ast_log(LOG_ERROR, "Channel %d does not lie on a span I know of (%d)\n", channel, span);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
} else {
si.spanno = 0;
- if (ioctl(tmp->subs[SUB_REAL].zfd,ZT_SPANSTAT,&si) == -1) {
+ if (ioctl(tmp->subs[SUB_REAL].zfd,DAHDI_SPANSTAT,&si) == -1) {
ast_log(LOG_ERROR, "Unable to get span status: %s\n", strerror(errno));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
/* Store the logical span first based upon the real span */
@@ -8237,12 +8206,12 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
pri_resolve_span(&span, channel, (channel - p.chanpos), &si);
if (span < 0) {
ast_log(LOG_WARNING, "Channel %d: Unable to find locate channel/trunk group!\n", channel);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
- if ((chan_sig == SIG_PRI) ||
- (chan_sig == SIG_BRI) ||
- (chan_sig == SIG_BRI_PTMP))
+ if ((conf->chan.sig == SIG_PRI) ||
+ (conf->chan.sig == SIG_BRI) ||
+ (conf->chan.sig == SIG_BRI_PTMP))
myswitchtype = conf->pri.switchtype;
else
myswitchtype = PRI_SWITCH_GR303_TMC;
@@ -8260,43 +8229,43 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
if (!matchesdchan) {
if (pris[span].nodetype && (pris[span].nodetype != conf->pri.nodetype)) {
ast_log(LOG_ERROR, "Span %d is already a %s node\n", span + 1, pri_node2str(pris[span].nodetype));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (pris[span].switchtype && (pris[span].switchtype != myswitchtype)) {
ast_log(LOG_ERROR, "Span %d is already a %s switch\n", span + 1, pri_switch2str(pris[span].switchtype));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if ((pris[span].dialplan) && (pris[span].dialplan != conf->pri.dialplan)) {
ast_log(LOG_ERROR, "Span %d is already a %s dialing plan\n", span + 1, dialplan2str(pris[span].dialplan));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (!ast_strlen_zero(pris[span].idledial) && strcmp(pris[span].idledial, conf->pri.idledial)) {
ast_log(LOG_ERROR, "Span %d already has idledial '%s'.\n", span + 1, conf->pri.idledial);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (!ast_strlen_zero(pris[span].idleext) && strcmp(pris[span].idleext, conf->pri.idleext)) {
ast_log(LOG_ERROR, "Span %d already has idleext '%s'.\n", span + 1, conf->pri.idleext);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (pris[span].minunused && (pris[span].minunused != conf->pri.minunused)) {
ast_log(LOG_ERROR, "Span %d already has minunused of %d.\n", span + 1, conf->pri.minunused);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (pris[span].minidle && (pris[span].minidle != conf->pri.minidle)) {
ast_log(LOG_ERROR, "Span %d already has minidle of %d.\n", span + 1, conf->pri.minidle);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (pris[span].numchans >= MAX_CHANNELS) {
ast_log(LOG_ERROR, "Unable to add channel %d: Too many channels in trunk group %d!\n", channel,
pris[span].trunkgroup);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
@@ -8325,7 +8294,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
tmp->call = NULL;
} else {
ast_log(LOG_ERROR, "Channel %d is reserved for D-channel.\n", offset);
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
}
@@ -8337,7 +8306,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
chan_sig = tmp->sig;
memset(&p, 0, sizeof(p));
if (tmp->subs[SUB_REAL].zfd > -1)
- res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &p);
+ res = ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &p);
}
/* Adjust starttime on loopstart and kewlstart trunks to reasonable values */
switch (chan_sig) {
@@ -8394,22 +8363,22 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
/* dont set parms on a pseudo-channel (or CRV) */
if (tmp->subs[SUB_REAL].zfd >= 0)
{
- res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_SET_PARAMS, &p);
+ res = ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_SET_PARAMS, &p);
if (res < 0) {
ast_log(LOG_ERROR, "Unable to set parameters\n");
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
}
#if 1
if (!here && (tmp->subs[SUB_REAL].zfd > -1)) {
memset(&bi, 0, sizeof(bi));
- res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_GET_BUFINFO, &bi);
+ res = ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GET_BUFINFO, &bi);
if (!res) {
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = numbufs;
- res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_SET_BUFINFO, &bi);
+ res = ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_SET_BUFINFO, &bi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on channel %d\n", channel);
}
@@ -8419,7 +8388,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
#endif
tmp->immediate = conf->chan.immediate;
tmp->transfertobusy = conf->chan.transfertobusy;
- if (conf->chan.sig & __ZT_SIG_FXS) {
+ if (conf->chan.sig & __DAHDI_SIG_FXS) {
tmp->mwimonitor_fsk = conf->chan.mwimonitor_fsk;
tmp->mwimonitor_neon = conf->chan.mwimonitor_neon;
}
@@ -8453,11 +8422,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
tmp->echocancel = conf->chan.echocancel;
tmp->echotraining = conf->chan.echotraining;
tmp->pulse = conf->chan.pulse;
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
if (tmp->echocancel.head.tap_length) {
-#else
- if (tmp->echocancel) {
-#endif
tmp->echocanbridged = conf->chan.echocanbridged;
} else {
if (conf->chan.echocanbridged)
@@ -8478,7 +8443,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
tmp->use_callerid = conf->chan.use_callerid;
tmp->cid_signalling = conf->chan.cid_signalling;
tmp->cid_start = conf->chan.cid_start;
- tmp->zaptrcallerid = conf->chan.zaptrcallerid;
+ tmp->dahditrcallerid = conf->chan.dahditrcallerid;
tmp->restrictcid = conf->chan.restrictcid;
tmp->use_callingpres = conf->chan.use_callingpres;
tmp->priindication_oob = conf->chan.priindication_oob;
@@ -8554,9 +8519,9 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
if (!here) {
if ((chan_sig != SIG_BRI) && (chan_sig != SIG_BRI_PTMP) && (chan_sig != SIG_PRI) && (chan_sig != SIG_SS7))
/* Hang it up to be sure it's good */
- zt_set_hook(tmp->subs[SUB_REAL].zfd, ZT_ONHOOK);
+ dahdi_set_hook(tmp->subs[SUB_REAL].zfd, DAHDI_ONHOOK);
}
- ioctl(tmp->subs[SUB_REAL].zfd,ZT_SETTONEZONE,&tmp->tonezone);
+ ioctl(tmp->subs[SUB_REAL].zfd,DAHDI_SETTONEZONE,&tmp->tonezone);
#ifdef HAVE_PRI
/* the dchannel is down so put the channel in alarm */
if (tmp->pri && !pri_is_up(tmp->pri))
@@ -8565,9 +8530,9 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
tmp->inalarm = 0;
#endif
memset(&si, 0, sizeof(si));
- if (ioctl(tmp->subs[SUB_REAL].zfd,ZT_SPANSTAT,&si) == -1) {
+ if (ioctl(tmp->subs[SUB_REAL].zfd,DAHDI_SPANSTAT,&si) == -1) {
ast_log(LOG_ERROR, "Unable to get span status: %s\n", strerror(errno));
- destroy_zt_pvt(&tmp);
+ destroy_dahdi_pvt(&tmp);
return NULL;
}
if (si.alarms) tmp->inalarm = 1;
@@ -8594,7 +8559,7 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
*wend = tmp;
} else {
/* at least one member on the iflist */
- struct zt_pvt *working = *wlist;
+ struct dahdi_pvt *working = *wlist;
/* check if we maybe have to put it on the begining */
if (working->channel > tmp->channel) {
@@ -8632,10 +8597,10 @@ static struct zt_pvt *mkintf(int channel, const struct zt_chan_conf *conf, struc
return tmp;
}
-static inline int available(struct zt_pvt *p, int channelmatch, ast_group_t groupmatch, int *busy, int *channelmatched, int *groupmatched)
+static inline int available(struct dahdi_pvt *p, int channelmatch, ast_group_t groupmatch, int *busy, int *channelmatched, int *groupmatched)
{
int res;
- ZT_PARAMS par;
+ DAHDI_PARAMS par;
/* First, check group matching */
if (groupmatch) {
@@ -8690,7 +8655,7 @@ static inline int available(struct zt_pvt *p, int channelmatch, ast_group_t grou
return 1;
/* Check hook state */
if (p->subs[SUB_REAL].zfd > -1)
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &par);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &par);
else {
/* Assume not off hook on CVRS */
res = 0;
@@ -8707,7 +8672,7 @@ static inline int available(struct zt_pvt *p, int channelmatch, ast_group_t grou
if (par.rxisoffhook)
return 1;
else
-#ifdef ZAP_CHECK_HOOKSTATE
+#ifdef DAHDI_CHECK_HOOKSTATE
return 0;
#else
return 1;
@@ -8748,28 +8713,28 @@ static inline int available(struct zt_pvt *p, int channelmatch, ast_group_t grou
return 1;
}
-static struct zt_pvt *chandup(struct zt_pvt *src)
+static struct dahdi_pvt *chandup(struct dahdi_pvt *src)
{
- struct zt_pvt *p;
- ZT_BUFFERINFO bi;
+ struct dahdi_pvt *p;
+ DAHDI_BUFFERINFO bi;
int res;
if ((p = ast_malloc(sizeof(*p)))) {
- memcpy(p, src, sizeof(struct zt_pvt));
+ memcpy(p, src, sizeof(struct dahdi_pvt));
ast_mutex_init(&p->lock);
- p->subs[SUB_REAL].zfd = zt_open("/dev/zap/pseudo");
- /* Allocate a zapata structure */
+ p->subs[SUB_REAL].zfd = dahdi_open("/dev/dahdi/pseudo");
+ /* Allocate a dahdi structure */
if (p->subs[SUB_REAL].zfd < 0) {
ast_log(LOG_ERROR, "Unable to dup channel: %s\n", strerror(errno));
- destroy_zt_pvt(&p);
+ destroy_dahdi_pvt(&p);
return NULL;
}
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_GET_BUFINFO, &bi);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_GET_BUFINFO, &bi);
if (!res) {
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = numbufs;
- res = ioctl(p->subs[SUB_REAL].zfd, ZT_SET_BUFINFO, &bi);
+ res = ioctl(p->subs[SUB_REAL].zfd, DAHDI_SET_BUFINFO, &bi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on dup channel\n");
}
@@ -8787,7 +8752,7 @@ static struct zt_pvt *chandup(struct zt_pvt *src)
#ifdef HAVE_PRI
-static int pri_find_empty_chan(struct zt_pri *pri, int backwards)
+static int pri_find_empty_chan(struct dahdi_pri *pri, int backwards)
{
int x;
if (backwards)
@@ -8813,14 +8778,14 @@ static int pri_find_empty_chan(struct zt_pri *pri, int backwards)
}
#endif
-static struct ast_channel *zt_request(const char *type, int format, void *data, int *cause)
+static struct ast_channel *dahdi_request(const char *type, int format, void *data, int *cause)
{
ast_group_t groupmatch = 0;
int channelmatch = -1;
int roundrobin = 0;
int callwait = 0;
int busy = 0;
- struct zt_pvt *p;
+ struct dahdi_pvt *p;
struct ast_channel *tmp = NULL;
char *dest=NULL;
int x;
@@ -8832,9 +8797,9 @@ static struct ast_channel *zt_request(const char *type, int format, void *data,
int crv;
int bearer = -1;
int trunkgroup;
- struct zt_pri *pri=NULL;
+ struct dahdi_pri *pri=NULL;
#endif
- struct zt_pvt *exit, *start, *end;
+ struct dahdi_pvt *exit, *start, *end;
ast_mutex_t *lock;
int channelmatched = 0;
int groupmatched = 0;
@@ -8972,7 +8937,7 @@ static struct ast_channel *zt_request(const char *type, int format, void *data,
}
}
p->outgoing = 1;
- tmp = zt_new(p, AST_STATE_RESERVED, 0, p->owner ? SUB_CALLWAIT : SUB_REAL, 0, 0);
+ tmp = dahdi_new(p, AST_STATE_RESERVED, 0, p->owner ? SUB_CALLWAIT : SUB_REAL, 0, 0);
#ifdef HAVE_PRI
if (p->bearer) {
/* Log owner to bearer channel, too */
@@ -9035,15 +9000,15 @@ next:
}
#if defined(HAVE_PRI) || defined(HAVE_SS7)
-static int zt_setlaw(int zfd, int law)
+static int dahdi_setlaw(int zfd, int law)
{
- return ioctl(zfd, ZT_SETLAW, &law);
+ return ioctl(zfd, DAHDI_SETLAW, &law);
}
#endif
#ifdef HAVE_SS7
-static int ss7_find_cic(struct zt_ss7 *linkset, int cic, unsigned int dpc)
+static int ss7_find_cic(struct dahdi_ss7 *linkset, int cic, unsigned int dpc)
{
int i;
int winner = -1;
@@ -9056,10 +9021,10 @@ static int ss7_find_cic(struct zt_ss7 *linkset, int cic, unsigned int dpc)
return winner;
}
-static void ss7_handle_cqm(struct zt_ss7 *linkset, int startcic, int endcic, unsigned int dpc)
+static void ss7_handle_cqm(struct dahdi_ss7 *linkset, int startcic, int endcic, unsigned int dpc)
{
unsigned char status[32];
- struct zt_pvt *p = NULL;
+ struct dahdi_pvt *p = NULL;
int i, offset;
for (i = 0; i < linkset->numchans; i++) {
@@ -9088,7 +9053,7 @@ static void ss7_handle_cqm(struct zt_ss7 *linkset, int startcic, int endcic, uns
}
-static inline void ss7_block_cics(struct zt_ss7 *linkset, int startcic, int endcic, unsigned int dpc, unsigned char state[], int block)
+static inline void ss7_block_cics(struct dahdi_ss7 *linkset, int startcic, int endcic, unsigned int dpc, unsigned char state[], int block)
{
int i;
@@ -9103,7 +9068,7 @@ static inline void ss7_block_cics(struct zt_ss7 *linkset, int startcic, int endc
}
}
-static void ss7_inservice(struct zt_ss7 *linkset, int startcic, int endcic, unsigned int dpc)
+static void ss7_inservice(struct dahdi_ss7 *linkset, int startcic, int endcic, unsigned int dpc)
{
int i;
@@ -9113,7 +9078,7 @@ static void ss7_inservice(struct zt_ss7 *linkset, int startcic, int endcic, unsi
}
}
-static void ss7_reset_linkset(struct zt_ss7 *linkset)
+static void ss7_reset_linkset(struct dahdi_ss7 *linkset)
{
int i, startcic = -1, endcic, dpc;
@@ -9141,10 +9106,10 @@ static void ss7_reset_linkset(struct zt_ss7 *linkset)
}
}
-static void zt_loopback(struct zt_pvt *p, int enable)
+static void dahdi_loopback(struct dahdi_pvt *p, int enable)
{
if (p->loopedback != enable) {
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_LOOPBACK, &enable)) {
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_LOOPBACK, &enable)) {
ast_log(LOG_WARNING, "Unable to set loopback on channel %d\n", p->channel);
return;
}
@@ -9153,7 +9118,7 @@ static void zt_loopback(struct zt_pvt *p, int enable)
}
/* XXX: This function is assumed to be called with the private channel lock and linkset lock held */
-static void ss7_start_call(struct zt_pvt *p, struct zt_ss7 *linkset)
+static void ss7_start_call(struct dahdi_pvt *p, struct dahdi_ss7 *linkset)
{
struct ss7 *ss7 = linkset->ss7;
int res;
@@ -9161,15 +9126,15 @@ static void ss7_start_call(struct zt_pvt *p, struct zt_ss7 *linkset)
struct ast_channel *c;
char tmp[256];
- if (ioctl(p->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &law) == -1)
+ if (ioctl(p->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &law) == -1)
ast_log(LOG_WARNING, "Unable to set audio mode on channel %d to %d\n", p->channel, law);
if (linkset->type == SS7_ITU)
- law = ZT_LAW_ALAW;
+ law = DAHDI_LAW_ALAW;
else
- law = ZT_LAW_MULAW;
+ law = DAHDI_LAW_MULAW;
- res = zt_setlaw(p->subs[SUB_REAL].zfd, law);
+ res = dahdi_setlaw(p->subs[SUB_REAL].zfd, law);
if (res < 0)
ast_log(LOG_WARNING, "Unable to set law on channel %d\n", p->channel);
@@ -9177,7 +9142,7 @@ static void ss7_start_call(struct zt_pvt *p, struct zt_ss7 *linkset)
isup_acm(ss7, p->ss7call);
ast_mutex_unlock(&linkset->lock);
- c = zt_new(p, AST_STATE_RING, 1, SUB_REAL, law, 0);
+ c = dahdi_new(p, AST_STATE_RING, 1, SUB_REAL, law, 0);
if (!c) {
ast_log(LOG_WARNING, "Unable to start PBX on CIC %d\n", p->cic);
@@ -9187,7 +9152,7 @@ static void ss7_start_call(struct zt_pvt *p, struct zt_ss7 *linkset)
} else
ast_verb(3, "Accepting call to '%s' on CIC %d\n", p->exten, p->cic);
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
/* We only reference these variables in the context of the ss7_linkset function
* when receiving either and IAM or a COT message. Since they are only accessed
@@ -9267,7 +9232,7 @@ static void ss7_start_call(struct zt_pvt *p, struct zt_ss7 *linkset)
ast_mutex_lock(&linkset->lock);
}
-static void ss7_apply_plan_to_number(char *buf, size_t size, const struct zt_ss7 *ss7, const char *number, const unsigned nai)
+static void ss7_apply_plan_to_number(char *buf, size_t size, const struct dahdi_ss7 *ss7, const char *number, const unsigned nai)
{
switch (nai) {
case SS7_NAI_INTERNATIONAL:
@@ -9296,10 +9261,10 @@ static void *ss7_linkset(void *data)
{
int res, i;
struct timeval *next = NULL, tv;
- struct zt_ss7 *linkset = (struct zt_ss7 *) data;
+ struct dahdi_ss7 *linkset = (struct dahdi_ss7 *) data;
struct ss7 *ss7 = linkset->ss7;
ss7_event *e = NULL;
- struct zt_pvt *p;
+ struct dahdi_pvt *p;
int chanpos;
struct pollfd pollers[NUM_DCHANS];
int cic;
@@ -9347,26 +9312,26 @@ static void *ss7_linkset(void *data)
for (i = 0; i < linkset->numsigchans; i++) {
if (pollers[i].revents & POLLPRI) {
int x;
- if (ioctl(pollers[i].fd, ZT_GETEVENT, &x)) {
+ if (ioctl(pollers[i].fd, DAHDI_GETEVENT, &x)) {
ast_log(LOG_ERROR, "Error in exception retrieval!\n");
}
switch (x) {
- case ZT_EVENT_OVERRUN:
+ case DAHDI_EVENT_OVERRUN:
ast_debug(1, "Overrun detected!\n");
break;
- case ZT_EVENT_BADFCS:
+ case DAHDI_EVENT_BADFCS:
ast_debug(1, "Bad FCS\n");
break;
- case ZT_EVENT_ABORT:
+ case DAHDI_EVENT_ABORT:
ast_debug(1, "HDLC Abort\n");
break;
- case ZT_EVENT_ALARM:
+ case DAHDI_EVENT_ALARM:
ast_log(LOG_ERROR, "Alarm on link!\n");
linkset->linkstate[i] |= (LINKSTATE_DOWN | LINKSTATE_INALARM);
linkset->linkstate[i] &= ~LINKSTATE_UP;
ss7_link_alarm(ss7, pollers[i].fd);
break;
- case ZT_EVENT_NOALARM:
+ case DAHDI_EVENT_NOALARM:
ast_log(LOG_ERROR, "Alarm cleared on link\n");
linkset->linkstate[i] &= ~(LINKSTATE_INALARM | LINKSTATE_DOWN);
linkset->linkstate[i] |= LINKSTATE_STARTING;
@@ -9407,7 +9372,7 @@ static void *ss7_linkset(void *data)
ast_verbose("--- SS7 Down ---\n");
linkset->state = LINKSET_STATE_DOWN;
for (i = 0; i < linkset->numchans; i++) {
- struct zt_pvt *p = linkset->pvts[i];
+ struct dahdi_pvt *p = linkset->pvts[i];
if (p)
p->inalarm = 1;
}
@@ -9433,7 +9398,7 @@ static void *ss7_linkset(void *data)
{
struct ast_frame f = { AST_FRAME_CONTROL, AST_CONTROL_PROGRESS, };
ast_debug(1, "Queuing frame PROGRESS on CIC %d\n", p->cic);
- zap_queue_frame(p, &f, linkset);
+ dahdi_queue_frame(p, &f, linkset);
p->progress = 1;
if (p->dsp && p->dsp_features) {
ast_dsp_set_features(p->dsp, p->dsp_features);
@@ -9456,18 +9421,11 @@ static void *ss7_linkset(void *data)
}
p = linkset->pvts[chanpos];
ast_mutex_lock(&p->lock);
-
p->inservice = 1;
p->remotelyblocked = 0;
dpc = p->dpc;
isup_set_call_dpc(e->rsc.call, dpc);
- if (p->ss7call)
- p->ss7call = NULL;
- if (p->owner)
- p->owner->_softhangup |= AST_SOFTHANGUP_DEV;
-
ast_mutex_unlock(&p->lock);
-
isup_rlc(ss7, e->rsc.call);
break;
case ISUP_EVENT_GRS:
@@ -9564,7 +9522,7 @@ static void *ss7_linkset(void *data)
if (ast_exists_extension(NULL, p->context, p->exten, 1, p->cid_num)) {
if (e->iam.cot_check_required) {
- zt_loopback(p, 1);
+ dahdi_loopback(p, 1);
} else
ss7_start_call(p, linkset);
} else {
@@ -9585,7 +9543,7 @@ static void *ss7_linkset(void *data)
ast_mutex_lock(&p->lock);
if (p->loopedback) {
- zt_loopback(p, 0);
+ dahdi_loopback(p, 0);
ss7_start_call(p, linkset);
}
@@ -9603,7 +9561,7 @@ static void *ss7_linkset(void *data)
p = linkset->pvts[chanpos];
ast_mutex_lock(&p->lock);
- zt_loopback(p, 1);
+ dahdi_loopback(p, 1);
ast_mutex_unlock(&p->lock);
isup_lpa(linkset->ss7, e->ccr.cic, p->dpc);
@@ -9619,7 +9577,7 @@ static void *ss7_linkset(void *data)
p = linkset->pvts[chanpos];
ast_mutex_lock(&p->lock);
- zt_loopback(p, 1);
+ dahdi_loopback(p, 1);
ast_mutex_unlock(&p->lock);
isup_cvr(linkset->ss7, e->cvt.cic, p->dpc);
@@ -9639,7 +9597,7 @@ static void *ss7_linkset(void *data)
ast_log(LOG_WARNING, "REL on channel (CIC %d) without owner!\n", p->cic);
/* End the loopback if we have one */
- zt_loopback(p, 0);
+ dahdi_loopback(p, 0);
isup_rlc(ss7, e->rel.call);
p->ss7call = NULL;
@@ -9664,7 +9622,7 @@ static void *ss7_linkset(void *data)
}
ast_mutex_lock(&p->lock);
- zap_queue_frame(p, &f, linkset);
+ dahdi_queue_frame(p, &f, linkset);
p->proceeding = 1;
/* Send alerting if subscriber is free */
if (e->acm.called_party_status_ind == 1) {
@@ -9777,7 +9735,7 @@ static void *ss7_linkset(void *data)
ast_dsp_set_features(p->dsp, p->dsp_features);
p->dsp_features = 0;
}
- zt_enable_ec(p);
+ dahdi_enable_ec(p);
ast_mutex_unlock(&p->lock);
}
break;
@@ -9823,7 +9781,7 @@ static void *ss7_linkset(void *data)
return 0;
}
-static void zt_ss7_message(struct ss7 *ss7, char *s)
+static void dahdi_ss7_message(struct ss7 *ss7, char *s)
{
#if 0
int i;
@@ -9838,7 +9796,7 @@ static void zt_ss7_message(struct ss7 *ss7, char *s)
#endif
}
-static void zt_ss7_error(struct ss7 *ss7, char *s)
+static void dahdi_ss7_error(struct ss7 *ss7, char *s)
{
#if 0
int i;
@@ -9855,9 +9813,9 @@ static void zt_ss7_error(struct ss7 *ss7, char *s)
#endif /* HAVE_SS7 */
#ifdef HAVE_PRI
-static struct zt_pvt *pri_find_crv(struct zt_pri *pri, int crv)
+static struct dahdi_pvt *pri_find_crv(struct dahdi_pri *pri, int crv)
{
- struct zt_pvt *p;
+ struct dahdi_pvt *p;
p = pri->crvs;
while (p) {
if (p->channel == crv)
@@ -9868,19 +9826,19 @@ static struct zt_pvt *pri_find_crv(struct zt_pri *pri, int crv)
}
-static int pri_find_principle(struct zt_pri *pri, int channel)
+static int pri_find_principle(struct dahdi_pri *pri, int channel)
{
int x;
int span = PRI_SPAN(channel);
int spanfd;
- ZT_PARAMS param;
+ DAHDI_PARAMS param;
int principle = -1;
int explicit = PRI_EXPLICIT(channel);
channel = PRI_CHANNEL(channel);
if (!explicit) {
spanfd = pri_active_dchan_fd(pri);
- if (ioctl(spanfd, ZT_GET_PARAMS, &param))
+ if (ioctl(spanfd, DAHDI_GET_PARAMS, &param))
return -1;
span = pris[param.spanno - 1].prilogicalspan;
}
@@ -9895,10 +9853,10 @@ static int pri_find_principle(struct zt_pri *pri, int channel)
return principle;
}
-static int pri_fixup_principle(struct zt_pri *pri, int principle, q931_call *c)
+static int pri_fixup_principle(struct dahdi_pri *pri, int principle, q931_call *c)
{
int x;
- struct zt_pvt *crv;
+ struct dahdi_pvt *crv;
if (!c) {
if (principle < 0)
return -1;
@@ -9916,7 +9874,7 @@ static int pri_fixup_principle(struct zt_pri *pri, int principle, q931_call *c)
if (pri->pvts[x]->call == c) {
/* Found our call */
if (principle != x) {
- struct zt_pvt *new = pri->pvts[principle], *old = pri->pvts[x];
+ struct dahdi_pvt *new = pri->pvts[principle], *old = pri->pvts[x];
ast_verb(3, "Moving call from channel %d to channel %d\n",
old->channel, new->channel);
@@ -9930,7 +9888,7 @@ static int pri_fixup_principle(struct zt_pri *pri, int principle, q931_call *c)
old->owner = NULL;
if (new->owner) {
ast_string_field_build(new->owner, name,
- "Zap/%d:%d-%d", pri->trunkgroup,
+ "DAHDI/%d:%d-%d", pri->trunkgroup,
new->channel, 1);
new->owner->tech_pvt = new;
ast_channel_set_fd(new->owner, 0, new->subs[SUB_REAL].zfd);
@@ -9962,7 +9920,7 @@ static int pri_fixup_principle(struct zt_pri *pri, int principle, q931_call *c)
else {
/* Looks good. Drop the pseudo channel now, clear up the assignment, and
wakeup the potential sleeper */
- zt_close(crv->subs[SUB_REAL].zfd);
+ dahdi_close(crv->subs[SUB_REAL].zfd);
pri->pvts[principle]->call = crv->call;
pri_assign_bearer(crv, pri, pri->pvts[principle]);
ast_debug(1, "Assigning bearer %d/%d to CRV %d:%d\n",
@@ -9981,7 +9939,7 @@ static int pri_fixup_principle(struct zt_pri *pri, int principle, q931_call *c)
static void *do_idle_thread(void *vchan)
{
struct ast_channel *chan = vchan;
- struct zt_pvt *pvt = chan->tech_pvt;
+ struct dahdi_pvt *pvt = chan->tech_pvt;
struct ast_frame *f;
char ex[80];
/* Wait up to 30 seconds for an answer */
@@ -10029,7 +9987,7 @@ static void *do_idle_thread(void *vchan)
#ifndef PRI_RESTART
#error "Upgrade your libpri"
#endif
-static void zt_pri_message(struct pri *pri, char *s)
+static void dahdi_pri_message(struct pri *pri, char *s)
{
int x, y;
int dchan = -1, span = -1;
@@ -10065,7 +10023,7 @@ static void zt_pri_message(struct pri *pri, char *s)
ast_mutex_unlock(&pridebugfdlock);
}
-static void zt_pri_error(struct pri *pri, char *s)
+static void dahdi_pri_error(struct pri *pri, char *s)
{
int x, y;
int dchan = -1, span = -1;
@@ -10101,7 +10059,7 @@ static void zt_pri_error(struct pri *pri, char *s)
ast_mutex_unlock(&pridebugfdlock);
}
-static int pri_check_restart(struct zt_pri *pri)
+static int pri_check_restart(struct dahdi_pri *pri)
{
do {
pri->resetpos++;
@@ -10120,7 +10078,7 @@ static int pri_check_restart(struct zt_pri *pri)
return 0;
}
-static int pri_hangup_all(struct zt_pvt *p, struct zt_pri *pri)
+static int pri_hangup_all(struct dahdi_pvt *p, struct dahdi_pri *pri)
{
int x;
int redo;
@@ -10160,7 +10118,7 @@ static char * redirectingreason2str(int redirectingreason)
}
}
-static void apply_plan_to_number(char *buf, size_t size, const struct zt_pri *pri, const char *number, const int plan)
+static void apply_plan_to_number(char *buf, size_t size, const struct dahdi_pri *pri, const char *number, const int plan)
{
if (pri->dialplan == -2) { /* autodetect the TON but leave the number untouched */
snprintf(buf, size, "%s", number);
@@ -10191,7 +10149,7 @@ static void apply_plan_to_number(char *buf, size_t size, const struct zt_pri *pr
static void *pri_dchannel(void *vpri)
{
- struct zt_pri *pri = vpri;
+ struct dahdi_pri *pri = vpri;
pri_event *e;
struct pollfd fds[NUM_DCHANS];
int res;
@@ -10212,7 +10170,7 @@ static void *pri_dchannel(void *vpri)
int i, which=-1;
int numdchans;
int cause=0;
- struct zt_pvt *crv;
+ struct dahdi_pvt *crv;
pthread_t threadid;
char ani2str[6];
char plancallingnum[256];
@@ -10279,15 +10237,15 @@ static void *pri_dchannel(void *vpri)
if (ast_tvdiff_ms(ast_tvnow(), lastidle) > 1000) {
/* Don't create a new idle call more than once per second */
snprintf(idlen, sizeof(idlen), "%d/%s", pri->pvts[nextidle]->channel, pri->idledial);
- idle = zt_request("Zap", AST_FORMAT_ULAW, idlen, &cause);
+ idle = dahdi_request("DAHDI", AST_FORMAT_ULAW, idlen, &cause);
if (idle) {
pri->pvts[nextidle]->isidlecall = 1;
if (ast_pthread_create_background(&p, NULL, do_idle_thread, idle)) {
ast_log(LOG_WARNING, "Unable to start new thread for idle channel '%s'\n", idle->name);
- zt_hangup(idle);
+ dahdi_hangup(idle);
}
} else
- ast_log(LOG_WARNING, "Unable to request channel 'Zap/%s' for idle call\n", idlen);
+ ast_log(LOG_WARNING, "Unable to request channel 'DAHDI/%s' for idle call\n", idlen);
lastidle = ast_tvnow();
}
} else if ((haveidles < pri->minunused) &&
@@ -10363,7 +10321,7 @@ static void *pri_dchannel(void *vpri)
if (fds[which].revents & POLLPRI) {
/* Check for an event */
x = 0;
- res = ioctl(pri->fds[which], ZT_GETEVENT, &x);
+ res = ioctl(pri->fds[which], DAHDI_GETEVENT, &x);
if (x) {
ast_log(LOG_NOTICE, "PRI got event: %s (%d) on %s D-channel of span %d\n", event2str(x), x, pri_order(which), pri->span);
manager_event(EVENT_FLAG_SYSTEM, "PRIEvent",
@@ -10378,10 +10336,10 @@ static void *pri_dchannel(void *vpri)
);
}
/* Keep track of alarm state */
- if (x == ZT_EVENT_ALARM) {
+ if (x == DAHDI_EVENT_ALARM) {
pri->dchanavail[which] &= ~(DCHAN_NOTINALARM | DCHAN_UP);
pri_find_dchan(pri);
- } else if (x == ZT_EVENT_NOALARM) {
+ } else if (x == DAHDI_EVENT_NOALARM) {
pri->dchanavail[which] |= DCHAN_NOTINALARM;
pri_restart(pri->dchans[which]);
}
@@ -10441,7 +10399,7 @@ static void *pri_dchannel(void *vpri)
pri->resetting = 0;
/* Hangup active channels and put them in alarm mode */
for (i = 0; i < pri->numchans; i++) {
- struct zt_pvt *p = pri->pvts[i];
+ struct dahdi_pvt *p = pri->pvts[i];
if (p) {
if (!p->pri || !p->pri->pri || pri_get_timer(p->pri->pri, PRI_TIMER_T309) < 0) {
/* T309 is not enabled : hangup calls when alarm occurs */
@@ -10511,7 +10469,7 @@ static void *pri_dchannel(void *vpri)
if (chanpos > -1) {
ast_mutex_lock(&pri->pvts[chanpos]->lock);
/* queue DTMF frame if the PBX for this call was already started (we're forwarding KEYPAD_DIGITs further on */
- if ((pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING) && pri->pvts[chanpos]->call==e->digit.call && pri->pvts[chanpos]->owner) {
+ if ((pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING) && pri->pvts[chanpos]->call==e->digit.call && pri->pvts[chanpos]->owner) {
/* how to do that */
int digitlen = strlen(e->digit.digits);
char digit;
@@ -10520,7 +10478,7 @@ static void *pri_dchannel(void *vpri)
digit = e->digit.digits[i];
{
struct ast_frame f = { AST_FRAME_DTMF, digit, };
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
}
}
}
@@ -10539,7 +10497,7 @@ static void *pri_dchannel(void *vpri)
if (chanpos > -1) {
ast_mutex_lock(&pri->pvts[chanpos]->lock);
/* queue DTMF frame if the PBX for this call was already started (we're forwarding INFORMATION further on */
- if ((pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING) && pri->pvts[chanpos]->call==e->ring.call && pri->pvts[chanpos]->owner) {
+ if ((pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING) && pri->pvts[chanpos]->call==e->ring.call && pri->pvts[chanpos]->owner) {
/* how to do that */
int digitlen = strlen(e->ring.callednum);
char digit;
@@ -10548,7 +10506,7 @@ static void *pri_dchannel(void *vpri)
digit = e->ring.callednum[i];
{
struct ast_frame f = { AST_FRAME_DTMF, digit, };
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
}
}
}
@@ -10659,27 +10617,27 @@ static void *pri_dchannel(void *vpri)
pri->pvts[chanpos]->exten[1] = '\0';
}
/* Make sure extension exists (or in overlap dial mode, can exist) */
- if (((pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING) && ast_canmatch_extension(NULL, pri->pvts[chanpos]->context, pri->pvts[chanpos]->exten, 1, pri->pvts[chanpos]->cid_num)) ||
+ if (((pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING) && ast_canmatch_extension(NULL, pri->pvts[chanpos]->context, pri->pvts[chanpos]->exten, 1, pri->pvts[chanpos]->cid_num)) ||
ast_exists_extension(NULL, pri->pvts[chanpos]->context, pri->pvts[chanpos]->exten, 1, pri->pvts[chanpos]->cid_num)) {
/* Setup law */
int law;
if (pri->switchtype != PRI_SWITCH_GR303_TMC) {
/* Set to audio mode at this point */
law = 1;
- if (ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &law) == -1)
+ if (ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, DAHDI_AUDIOMODE, &law) == -1)
ast_log(LOG_WARNING, "Unable to set audio mode on channel %d to %d\n", pri->pvts[chanpos]->channel, law);
}
if (e->ring.layer1 == PRI_LAYER_1_ALAW)
- law = ZT_LAW_ALAW;
+ law = DAHDI_LAW_ALAW;
else
- law = ZT_LAW_MULAW;
- res = zt_setlaw(pri->pvts[chanpos]->subs[SUB_REAL].zfd, law);
+ law = DAHDI_LAW_MULAW;
+ res = dahdi_setlaw(pri->pvts[chanpos]->subs[SUB_REAL].zfd, law);
if (res < 0)
ast_log(LOG_WARNING, "Unable to set law on channel %d\n", pri->pvts[chanpos]->channel);
res = set_actual_gain(pri->pvts[chanpos]->subs[SUB_REAL].zfd, 0, pri->pvts[chanpos]->rxgain, pri->pvts[chanpos]->txgain, law);
if (res < 0)
ast_log(LOG_WARNING, "Unable to set gains on channel %d\n", pri->pvts[chanpos]->channel);
- if (e->ring.complete || !(pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING)) {
+ if (e->ring.complete || !(pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING)) {
/* Just announce proceeding */
pri->pvts[chanpos]->proceeding = 1;
pri_proceeding(pri->pri, e->ring.call, PVT_TO_CHANNEL(pri->pvts[chanpos]), 0);
@@ -10693,17 +10651,17 @@ static void *pri_dchannel(void *vpri)
pri->pvts[chanpos]->callingpres = e->ring.callingpres;
/* Start PBX */
- if (!e->ring.complete && (pri->overlapdial & ZAP_OVERLAPDIAL_INCOMING) && ast_matchmore_extension(NULL, pri->pvts[chanpos]->context, pri->pvts[chanpos]->exten, 1, pri->pvts[chanpos]->cid_num)) {
+ if (!e->ring.complete && (pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING) && ast_matchmore_extension(NULL, pri->pvts[chanpos]->context, pri->pvts[chanpos]->exten, 1, pri->pvts[chanpos]->cid_num)) {
/* Release the PRI lock while we create the channel */
ast_mutex_unlock(&pri->lock);
if (crv) {
/* Set bearer and such */
pri_assign_bearer(crv, pri, pri->pvts[chanpos]);
- c = zt_new(crv, AST_STATE_RESERVED, 0, SUB_REAL, law, e->ring.ctype);
+ c = dahdi_new(crv, AST_STATE_RESERVED, 0, SUB_REAL, law, e->ring.ctype);
pri->pvts[chanpos]->owner = &inuse;
ast_debug(1, "Started up crv %d:%d on bearer channel %d\n", pri->trunkgroup, crv->channel, crv->bearer->channel);
} else {
- c = zt_new(pri->pvts[chanpos], AST_STATE_RESERVED, 0, SUB_REAL, law, e->ring.ctype);
+ c = dahdi_new(pri->pvts[chanpos], AST_STATE_RESERVED, 0, SUB_REAL, law, e->ring.ctype);
}
ast_mutex_unlock(&pri->pvts[chanpos]->lock);
@@ -10747,7 +10705,7 @@ static void *pri_dchannel(void *vpri)
} else {
ast_mutex_unlock(&pri->lock);
/* Release PRI lock while we create the channel */
- c = zt_new(pri->pvts[chanpos], AST_STATE_RING, 1, SUB_REAL, law, e->ring.ctype);
+ c = dahdi_new(pri->pvts[chanpos], AST_STATE_RING, 1, SUB_REAL, law, e->ring.ctype);
if (c) {
char calledtonstr[10];
@@ -10778,7 +10736,7 @@ static void *pri_dchannel(void *vpri)
plancallingnum, pri->pvts[chanpos]->exten,
pri->pvts[chanpos]->logicalspan, pri->pvts[chanpos]->prioffset, pri->span);
- zt_enable_ec(pri->pvts[chanpos]);
+ dahdi_enable_ec(pri->pvts[chanpos]);
} else {
ast_mutex_lock(&pri->lock);
@@ -10820,7 +10778,7 @@ static void *pri_dchannel(void *vpri)
} else {
ast_mutex_lock(&pri->pvts[chanpos]->lock);
if (ast_strlen_zero(pri->pvts[chanpos]->dop.dialstr)) {
- zt_enable_ec(pri->pvts[chanpos]);
+ dahdi_enable_ec(pri->pvts[chanpos]);
pri->pvts[chanpos]->subs[SUB_REAL].needringing = 1;
pri->pvts[chanpos]->alerting = 1;
} else
@@ -10880,7 +10838,7 @@ static void *pri_dchannel(void *vpri)
ast_mutex_lock(&pri->pvts[chanpos]->lock);
ast_debug(1, "Queuing frame from PRI_EVENT_PROGRESS on channel %d/%d span %d\n",
pri->pvts[chanpos]->logicalspan, pri->pvts[chanpos]->prioffset,pri->span);
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
#ifdef PRI_PROGRESS_MASK
if (e->proceeding.progressmask & PRI_PROG_INBAND_AVAILABLE) {
#else
@@ -10906,7 +10864,7 @@ static void *pri_dchannel(void *vpri)
ast_mutex_lock(&pri->pvts[chanpos]->lock);
ast_debug(1, "Queuing frame from PRI_EVENT_PROCEEDING on channel %d/%d span %d\n",
pri->pvts[chanpos]->logicalspan, pri->pvts[chanpos]->prioffset,pri->span);
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
#ifdef PRI_PROGRESS_MASK
if (e->proceeding.progressmask & PRI_PROG_INBAND_AVAILABLE) {
#else
@@ -10919,7 +10877,7 @@ static void *pri_dchannel(void *vpri)
}
/* Bring voice path up */
f.subclass = AST_CONTROL_PROGRESS;
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
}
pri->pvts[chanpos]->proceeding = 1;
ast_mutex_unlock(&pri->pvts[chanpos]->lock);
@@ -10942,7 +10900,7 @@ static void *pri_dchannel(void *vpri)
ast_copy_string(pri->pvts[chanpos]->lastcid_num, e->facname.callingnum, sizeof(pri->pvts[chanpos]->lastcid_num));
ast_copy_string(pri->pvts[chanpos]->lastcid_name, e->facname.callingname, sizeof(pri->pvts[chanpos]->lastcid_name));
pri->pvts[chanpos]->subs[SUB_REAL].needcallerid =1;
- zt_enable_ec(pri->pvts[chanpos]);
+ dahdi_enable_ec(pri->pvts[chanpos]);
ast_mutex_unlock(&pri->pvts[chanpos]->lock);
}
}
@@ -10970,8 +10928,8 @@ static void *pri_dchannel(void *vpri)
}
if (pri->pvts[chanpos]->realcall && (pri->pvts[chanpos]->realcall->sig == SIG_FXSKS)) {
ast_debug(1, "Starting up GR-303 trunk now that we got CONNECT...\n");
- x = ZT_START;
- res = ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, ZT_HOOK, &x);
+ x = DAHDI_START;
+ res = ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, DAHDI_HOOK, &x);
if (res < 0) {
if (errno != EINPROGRESS) {
ast_log(LOG_WARNING, "Unable to start channel: %s\n", strerror(errno));
@@ -10980,7 +10938,7 @@ static void *pri_dchannel(void *vpri)
} else if (!ast_strlen_zero(pri->pvts[chanpos]->dop.dialstr)) {
pri->pvts[chanpos]->dialing = 1;
/* Send any "w" waited stuff */
- res = ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, ZT_DIAL, &pri->pvts[chanpos]->dop);
+ res = ioctl(pri->pvts[chanpos]->subs[SUB_REAL].zfd, DAHDI_DIAL, &pri->pvts[chanpos]->dop);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to initiate dialing on trunk channel %d\n", pri->pvts[chanpos]->channel);
pri->pvts[chanpos]->dop.dialstr[0] = '\0';
@@ -10993,7 +10951,7 @@ static void *pri_dchannel(void *vpri)
} else {
pri->pvts[chanpos]->subs[SUB_REAL].needanswer =1;
/* Enable echo cancellation if it's not on already */
- zt_enable_ec(pri->pvts[chanpos]);
+ dahdi_enable_ec(pri->pvts[chanpos]);
}
#ifdef SUPPORT_USERUSER
@@ -11019,7 +10977,7 @@ static void *pri_dchannel(void *vpri)
if (chanpos > -1) {
ast_mutex_lock(&pri->pvts[chanpos]->lock);
if (!pri->pvts[chanpos]->alreadyhungup) {
- /* we're calling here zt_hangup so once we get there we need to clear p->call after calling pri_hangup */
+ /* we're calling here dahdi_hangup so once we get there we need to clear p->call after calling pri_hangup */
pri->pvts[chanpos]->alreadyhungup = 1;
if (pri->pvts[chanpos]->realcall)
pri_hangup_all(pri->pvts[chanpos]->realcall, pri);
@@ -11258,11 +11216,11 @@ static void *pri_dchannel(void *vpri)
switch (e->notify.info) {
case PRI_NOTIFY_REMOTE_HOLD:
f.subclass = AST_CONTROL_HOLD;
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
break;
case PRI_NOTIFY_REMOTE_RETRIEVAL:
f.subclass = AST_CONTROL_UNHOLD;
- zap_queue_frame(pri->pvts[chanpos], &f, pri);
+ dahdi_queue_frame(pri->pvts[chanpos], &f, pri);
break;
}
ast_mutex_unlock(&pri->pvts[chanpos]->lock);
@@ -11278,40 +11236,40 @@ static void *pri_dchannel(void *vpri)
return NULL;
}
-static int start_pri(struct zt_pri *pri)
+static int start_pri(struct dahdi_pri *pri)
{
int res, x;
- ZT_PARAMS p;
- ZT_BUFFERINFO bi;
- struct zt_spaninfo si;
+ DAHDI_PARAMS p;
+ DAHDI_BUFFERINFO bi;
+ struct dahdi_spaninfo si;
int i;
for (i = 0; i < NUM_DCHANS; i++) {
if (!pri->dchannels[i])
break;
- pri->fds[i] = open("/dev/zap/channel", O_RDWR);
+ pri->fds[i] = open("/dev/dahdi/channel", O_RDWR);
x = pri->dchannels[i];
- if ((pri->fds[i] < 0) || (ioctl(pri->fds[i],ZT_SPECIFY,&x) == -1)) {
+ if ((pri->fds[i] < 0) || (ioctl(pri->fds[i],DAHDI_SPECIFY,&x) == -1)) {
ast_log(LOG_ERROR, "Unable to open D-channel %d (%s)\n", x, strerror(errno));
return -1;
}
- res = ioctl(pri->fds[i], ZT_GET_PARAMS, &p);
+ res = ioctl(pri->fds[i], DAHDI_GET_PARAMS, &p);
if (res) {
- zt_close(pri->fds[i]);
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
ast_log(LOG_ERROR, "Unable to get parameters for D-channel %d (%s)\n", x, strerror(errno));
return -1;
}
- if ((p.sigtype != ZT_SIG_HDLCFCS) && (p.sigtype != ZT_SIG_HARDHDLC)) {
- zt_close(pri->fds[i]);
+ if ((p.sigtype != DAHDI_SIG_HDLCFCS) && (p.sigtype != DAHDI_SIG_HARDHDLC)) {
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
- ast_log(LOG_ERROR, "D-channel %d is not in HDLC/FCS mode. See /etc/zaptel.conf\n", x);
+ ast_log(LOG_ERROR, "D-channel %d is not in HDLC/FCS mode. See /etc/dahdi.conf\n", x);
return -1;
}
memset(&si, 0, sizeof(si));
- res = ioctl(pri->fds[i], ZT_SPANSTAT, &si);
+ res = ioctl(pri->fds[i], DAHDI_SPANSTAT, &si);
if (res) {
- zt_close(pri->fds[i]);
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
ast_log(LOG_ERROR, "Unable to get span state for D-channel %d (%s)\n", x, strerror(errno));
}
@@ -11319,13 +11277,13 @@ static int start_pri(struct zt_pri *pri)
pri->dchanavail[i] |= DCHAN_NOTINALARM;
else
pri->dchanavail[i] &= ~DCHAN_NOTINALARM;
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = 32;
bi.bufsize = 1024;
- if (ioctl(pri->fds[i], ZT_SET_BUFINFO, &bi)) {
+ if (ioctl(pri->fds[i], DAHDI_SET_BUFINFO, &bi)) {
ast_log(LOG_ERROR, "Unable to set appropriate buffering on channel %d\n", x);
- zt_close(pri->fds[i]);
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
return -1;
}
@@ -11341,13 +11299,13 @@ static int start_pri(struct zt_pri *pri)
}
/* Force overlap dial if we're doing GR-303! */
if (pri->switchtype == PRI_SWITCH_GR303_TMC)
- pri->overlapdial |= ZAP_OVERLAPDIAL_BOTH;
- pri_set_overlapdial(pri->dchans[i],(pri->overlapdial & ZAP_OVERLAPDIAL_OUTGOING)?1:0);
+ pri->overlapdial |= DAHDI_OVERLAPDIAL_BOTH;
+ pri_set_overlapdial(pri->dchans[i],(pri->overlapdial & DAHDI_OVERLAPDIAL_OUTGOING)?1:0);
/* Enslave to master if appropriate */
if (i)
pri_enslave(pri->dchans[0], pri->dchans[i]);
if (!pri->dchans[i]) {
- zt_close(pri->fds[i]);
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
ast_log(LOG_ERROR, "Unable to create PRI structure\n");
return -1;
@@ -11368,7 +11326,7 @@ static int start_pri(struct zt_pri *pri)
for (i = 0; i < NUM_DCHANS; i++) {
if (!pri->dchannels[i])
break;
- zt_close(pri->fds[i]);
+ dahdi_close(pri->fds[i]);
pri->fds[i] = -1;
}
ast_log(LOG_ERROR, "Unable to spawn D-channel: %s\n", strerror(errno));
@@ -11667,7 +11625,7 @@ static char *handle_pri_show_span(struct ast_cli_entry *e, int cmd, struct ast_c
#else
pri_dump_info(pris[span-1].pri);
#endif
- ast_cli(a->fd, "Overlap Recv: %s\n\n", (pris[span-1].overlapdial & ZAP_OVERLAPDIAL_INCOMING)?"Yes":"No");
+ ast_cli(a->fd, "Overlap Recv: %s\n\n", (pris[span-1].overlapdial & DAHDI_OVERLAPDIAL_INCOMING)?"Yes":"No");
}
}
return CLI_SUCCESS;
@@ -11726,7 +11684,7 @@ static char *handle_pri_version(struct ast_cli_entry *e, int cmd, struct ast_cli
return CLI_SUCCESS;
}
-static struct ast_cli_entry zap_pri_cli[] = {
+static struct ast_cli_entry dahdi_pri_cli[] = {
AST_CLI_DEFINE(handle_pri_debug, "Enables PRI debugging on a span"),
AST_CLI_DEFINE(handle_pri_no_debug, "Disables PRI debugging on a span"),
AST_CLI_DEFINE(handle_pri_really_debug, "Enables REALLY INTENSE PRI debugging"),
@@ -11740,15 +11698,15 @@ static struct ast_cli_entry zap_pri_cli[] = {
#endif /* HAVE_PRI */
-static char *zap_destroy_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *dahdi_destroy_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int channel;
int ret;
switch (cmd) {
case CLI_INIT:
- e->command = "zap destroy channel";
+ e->command = "dahdi destroy channel";
e->usage =
- "Usage: zap destroy channel <chan num>\n"
+ "Usage: dahdi destroy channel <chan num>\n"
" DON'T USE THIS UNLESS YOU KNOW WHAT YOU ARE DOING. Immediately removes a given channel, whether it is in use or not\n";
return NULL;
case CLI_GENERATE:
@@ -11758,37 +11716,55 @@ static char *zap_destroy_channel(struct ast_cli_entry *e, int cmd, struct ast_cl
return CLI_SHOWUSAGE;
channel = atoi(a->argv[3]);
- ret = zap_destroy_channel_bynum(channel);
+ ret = dahdi_destroy_channel_bynum(channel);
return ( RESULT_SUCCESS == ret ) ? CLI_SUCCESS : CLI_FAILURE;
}
-static int setup_zap(int reload);
-static int zap_restart(void)
+static char *handle_cli_zap_destroy_channel_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
- ast_verb(1, "Destroying channels and reloading Zaptel configuration.\n");
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap destroy channel";
+ e->usage =
+ "Usage: zap destroy channel <chan num>\n"
+ " DON'T USE THIS UNLESS YOU KNOW WHAT YOU ARE DOING. Immediately removes a given channel, whether it is in use or not\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_destroy_channel(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static int setup_dahdi(int reload);
+static int dahdi_restart(void)
+{
+ ast_verb(1, "Destroying channels and reloading DAHDI configuration.\n");
while (iflist) {
- ast_debug(1, "Destroying Zaptel channel no. %d\n", iflist->channel);
+ ast_debug(1, "Destroying DAHDI channel no. %d\n", iflist->channel);
/* Also updates iflist: */
destroy_channel(NULL, iflist, 1);
}
ast_debug(1, "Channels destroyed. Now re-reading config.\n");
- if (setup_zap(2) != 0) {
- ast_log(LOG_WARNING, "Reload channels from zap config failed!\n");
+ if (setup_dahdi(2) != 0) {
+ ast_log(LOG_WARNING, "Reload channels from dahdi config failed!\n");
return 1;
}
return 0;
}
-static char *zap_restart_cmd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *dahdi_restart_cmd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
switch (cmd) {
case CLI_INIT:
- e->command = "zap restart";
+ e->command = "dahdi restart";
e->usage =
- "Usage: zap restart\n"
- " Restarts the Zaptel channels: destroys them all and then\n"
- " re-reads them from zapata.conf.\n"
- " Note that this will STOP any running CALL on Zaptel channels.\n"
+ "Usage: dahdi restart\n"
+ " Restarts the DAHDI channels: destroys them all and then\n"
+ " re-reads them from chan_dahdi.conf.\n"
+ " Note that this will STOP any running CALL on DAHDI channels.\n"
"";
return NULL;
case CLI_GENERATE:
@@ -11797,43 +11773,64 @@ static char *zap_restart_cmd(struct ast_cli_entry *e, int cmd, struct ast_cli_ar
if (a->argc != 2)
return CLI_SHOWUSAGE;
- if (zap_restart() != 0)
+ if (dahdi_restart() != 0)
return CLI_FAILURE;
return CLI_SUCCESS;
}
-static int action_zaprestart(struct mansession *s, const struct message *m)
+static char *handle_cli_zap_restart_cmd_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap restart";
+ e->usage =
+ "Usage: zap restart\n"
+ " Restarts the zap channels: destroys them all and then\n"
+ " re-reads them from chan_dahdi.conf.\n"
+ " Note that this will STOP any running CALL on zap channels.\n"
+ "";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_restart_cmd(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static int action_dahdirestart(struct mansession *s, const struct message *m)
{
- if (zap_restart() != 0) {
- astman_send_error(s, m, "Failed rereading Zaptel configuration");
+ if (dahdi_restart() != 0) {
+ astman_send_error(s, m, "Failed rereading DAHDI configuration");
return 1;
}
- astman_send_ack(s, m, "ZapRestart: Success");
+ astman_send_ack(s, m, "DAHDIRestart: Success");
return 0;
}
-static char *zap_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *dahdi_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
#define FORMAT "%7s %-10.10s %-15.15s %-10.10s %-20.20s %-10.10s %-10.10s\n"
#define FORMAT2 "%7s %-10.10s %-15.15s %-10.10s %-20.20s %-10.10s %-10.10s\n"
unsigned int targetnum = 0;
int filtertype = 0;
- struct zt_pvt *tmp = NULL;
+ struct dahdi_pvt *tmp = NULL;
char tmps[20] = "";
char statestr[20] = "";
char blockstr[20] = "";
ast_mutex_t *lock;
- struct zt_pvt *start;
+ struct dahdi_pvt *start;
#ifdef HAVE_PRI
int trunkgroup;
- struct zt_pri *pri = NULL;
+ struct dahdi_pri *pri = NULL;
int x;
#endif
switch (cmd) {
case CLI_INIT:
- e->command = "zap show channels [trunkgroup|group|context]";
+ e->command = "dahdi show channels [trunkgroup|group|context]";
e->usage =
- "Usage: zap show channels [ trunkgroup <trunkgroup> | group <group> | context <context> ]\n"
+ "Usage: dahdi show channels [ trunkgroup <trunkgroup> | group <group> | context <context> ]\n"
" Shows a list of available channels with optional filtering\n"
" <group> must be a number between 0 and 63\n";
return NULL;
@@ -11844,7 +11841,7 @@ static char *zap_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cli_
lock = &iflock;
start = iflist;
- /* syntax: zap show channels [ group <group> | context <context> | trunkgroup <trunkgroup> ] */
+ /* syntax: dahdi show channels [ group <group> | context <context> | trunkgroup <trunkgroup> ] */
if (!((a->argc == 3) || (a->argc == 5)))
return CLI_SHOWUSAGE;
@@ -11892,13 +11889,13 @@ static char *zap_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cli_
while (tmp) {
if (filtertype) {
switch(filtertype) {
- case 1: /* zap show channels group <group> */
+ case 1: /* dahdi show channels group <group> */
if (tmp->group != targetnum) {
tmp = tmp->next;
continue;
}
break;
- case 2: /* zap show channels context <context> */
+ case 2: /* dahdi show channels context <context> */
if (strcasecmp(tmp->context, a->argv[4])) {
tmp = tmp->next;
continue;
@@ -11936,25 +11933,44 @@ static char *zap_show_channels(struct ast_cli_entry *e, int cmd, struct ast_cli_
#undef FORMAT2
}
-static char *zap_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_show_channels_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap show channels [trunkgroup|group|context]";
+ e->usage =
+ "Usage: zap show channels [ trunkgroup <trunkgroup> | group <group> | context <context> ]\n"
+ " Shows a list of available channels with optional filtering\n"
+ " <group> must be a number between 0 and 63\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_show_channels(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *dahdi_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int channel;
- struct zt_pvt *tmp = NULL;
- ZT_CONFINFO ci;
- ZT_PARAMS ps;
+ struct dahdi_pvt *tmp = NULL;
+ DAHDI_CONFINFO ci;
+ DAHDI_PARAMS ps;
int x;
ast_mutex_t *lock;
- struct zt_pvt *start;
+ struct dahdi_pvt *start;
#ifdef HAVE_PRI
char *c;
int trunkgroup;
- struct zt_pri *pri=NULL;
+ struct dahdi_pri *pri=NULL;
#endif
switch (cmd) {
case CLI_INIT:
- e->command = "zap show channel";
+ e->command = "dahdi show channel";
e->usage =
- "Usage: zap show channel <chan num>\n"
+ "Usage: dahdi show channel <chan num>\n"
" Detailed information about a given channel\n";
return NULL;
case CLI_GENERATE:
@@ -12042,12 +12058,12 @@ static char *zap_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_a
ast_cli(a->fd, "TDD: %s\n", tmp->tdd ? "yes" : "no");
ast_cli(a->fd, "Relax DTMF: %s\n", tmp->dtmfrelax ? "yes" : "no");
ast_cli(a->fd, "Dialing/CallwaitCAS: %d/%d\n", tmp->dialing, tmp->callwaitcas);
- ast_cli(a->fd, "Default law: %s\n", tmp->law == ZT_LAW_MULAW ? "ulaw" : tmp->law == ZT_LAW_ALAW ? "alaw" : "unknown");
+ ast_cli(a->fd, "Default law: %s\n", tmp->law == DAHDI_LAW_MULAW ? "ulaw" : tmp->law == DAHDI_LAW_ALAW ? "alaw" : "unknown");
ast_cli(a->fd, "Fax Handled: %s\n", tmp->faxhandled ? "yes" : "no");
ast_cli(a->fd, "Pulse phone: %s\n", tmp->pulsedial ? "yes" : "no");
ast_cli(a->fd, "DND: %s\n", tmp->dnd ? "yes" : "no");
ast_cli(a->fd, "Echo Cancellation:\n");
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
+
if (tmp->echocancel.head.tap_length) {
ast_cli(a->fd, "\t%d taps\n", tmp->echocancel.head.tap_length);
for (x = 0; x < tmp->echocancel.head.param_count; x++) {
@@ -12057,14 +12073,6 @@ static char *zap_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_a
} else {
ast_cli(a->fd, "\tnone\n");
}
-#else
- if (tmp->echocancel) {
- ast_cli(a->fd, "\t%d taps\n", tmp->echocancel);
- ast_cli(a->fd, "\t%scurrently %s\n", tmp->echocanbridged ? "" : "(unless TDM bridged) ", tmp->echocanon ? "ON" : "OFF");
- }
- else
- ast_cli(a->fd, "\tnone\n");
-#endif
if (tmp->master)
ast_cli(a->fd, "Master Channel: %d\n", tmp->master->channel);
for (x = 0; x < MAX_SLAVES; x++) {
@@ -12096,15 +12104,15 @@ static char *zap_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_a
memset(&ci, 0, sizeof(ci));
ps.channo = tmp->channel;
if (tmp->subs[SUB_REAL].zfd > -1) {
- if (!ioctl(tmp->subs[SUB_REAL].zfd, ZT_GETCONF, &ci)) {
+ if (!ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GETCONF, &ci)) {
ast_cli(a->fd, "Actual Confinfo: Num/%d, Mode/0x%04x\n", ci.confno, ci.confmode);
}
-#ifdef ZT_GETCONFMUTE
- if (!ioctl(tmp->subs[SUB_REAL].zfd, ZT_GETCONFMUTE, &x)) {
+#ifdef DAHDI_GETCONFMUTE
+ if (!ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GETCONFMUTE, &x)) {
ast_cli(a->fd, "Actual Confmute: %s\n", x ? "Yes" : "No");
}
#endif
- if (ioctl(tmp->subs[SUB_REAL].zfd, ZT_GET_PARAMS, &ps) < 0) {
+ if (ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_GET_PARAMS, &ps) < 0) {
ast_log(LOG_WARNING, "Failed to get parameters on channel %d\n", tmp->channel);
} else {
ast_cli(a->fd, "Hookstate (FXS only): %s\n", ps.rxisoffhook ? "Offhook" : "Onhook");
@@ -12121,14 +12129,32 @@ static char *zap_show_channel(struct ast_cli_entry *e, int cmd, struct ast_cli_a
return CLI_FAILURE;
}
-static char *handle_zap_show_cadences(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_show_channel_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap show channel";
+ e->usage =
+ "Usage: zap show channel <chan num>\n"
+ " Detailed information about a given channel\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_show_channel(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *handle_dahdi_show_cadences(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int i, j;
switch (cmd) {
case CLI_INIT:
- e->command = "zap show cadences";
+ e->command = "dahdi show cadences";
e->usage =
- "Usage: zap show cadences\n"
+ "Usage: dahdi show cadences\n"
" Shows all cadences currently defined\n";
return NULL;
case CLI_GENERATE:
@@ -12157,10 +12183,28 @@ static char *handle_zap_show_cadences(struct ast_cli_entry *e, int cmd, struct a
return CLI_SUCCESS;
}
+static char *handle_cli_zap_show_cadences_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch(cmd) {
+ case CLI_INIT:
+ e->command = "zap show cadences";
+ e->usage =
+ "Usage: zap show cadences\n"
+ " Shows all cadences currently defined\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return handle_dahdi_show_cadences(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
/* Based on irqmiss.c */
-static char *zap_show_status(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *dahdi_show_status(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
-#ifdef ZT_SPANINFO_HAS_LINECONFIG
+#ifdef DAHDI_SPANINFO_HAS_LINECONFIG
#define FORMAT "%-40.40s %-7.7s %-6d %-6d %-6d %-3.3s %-4.4s %-8.8s %s\n"
#define FORMAT2 "%-40.40s %-7.7s %-6.6s %-6.6s %-6.6s %-3.3s %-4.4s %-8.8s %s\n"
#else
@@ -12172,48 +12216,48 @@ static char *zap_show_status(struct ast_cli_entry *e, int cmd, struct ast_cli_ar
char alarms[50];
int ctl;
- ZT_SPANINFO s;
+ DAHDI_SPANINFO s;
switch (cmd) {
case CLI_INIT:
- e->command = "zap show status";
+ e->command = "dahdi show status";
e->usage =
- "Usage: zap show status\n"
- " Shows a list of Zaptel cards with status\n";
+ "Usage: dahdi show status\n"
+ " Shows a list of DAHDI cards with status\n";
return NULL;
case CLI_GENERATE:
return NULL;
}
- ctl = open("/dev/zap/ctl", O_RDWR);
+ ctl = open("/dev/dahdi/ctl", O_RDWR);
if (ctl < 0) {
- ast_cli(a->fd, "No Zaptel interface found. Unable to open /dev/zap/ctl: %s\n", strerror(errno));
+ ast_cli(a->fd, "No DAHDI found. Unable to open /dev/dahdi/ctl: %s\n", strerror(errno));
return CLI_FAILURE;
}
ast_cli(a->fd, FORMAT2, "Description", "Alarms", "IRQ", "bpviol", "CRC4"
-#ifdef ZT_SPANINFO_HAS_LINECONFIG
+#ifdef DAHDI_SPANINFO_HAS_LINECONFIG
, "Framing", "Coding", "Options", "LBO"
#endif
);
- for (span = 1; span < ZT_MAX_SPANS; ++span) {
+ for (span = 1; span < DAHDI_MAX_SPANS; ++span) {
s.spanno = span;
- res = ioctl(ctl, ZT_SPANSTAT, &s);
+ res = ioctl(ctl, DAHDI_SPANSTAT, &s);
if (res) {
continue;
}
alarms[0] = '\0';
if (s.alarms > 0) {
- if (s.alarms & ZT_ALARM_BLUE)
+ if (s.alarms & DAHDI_ALARM_BLUE)
strcat(alarms, "BLU/");
- if (s.alarms & ZT_ALARM_YELLOW)
+ if (s.alarms & DAHDI_ALARM_YELLOW)
strcat(alarms, "YEL/");
- if (s.alarms & ZT_ALARM_RED)
+ if (s.alarms & DAHDI_ALARM_RED)
strcat(alarms, "RED/");
- if (s.alarms & ZT_ALARM_LOOPBACK)
+ if (s.alarms & DAHDI_ALARM_LOOPBACK)
strcat(alarms, "LB/");
- if (s.alarms & ZT_ALARM_RECOVER)
+ if (s.alarms & DAHDI_ALARM_RECOVER)
strcat(alarms, "REC/");
- if (s.alarms & ZT_ALARM_NOTOPEN)
+ if (s.alarms & DAHDI_ALARM_NOTOPEN)
strcat(alarms, "NOP/");
if (!strlen(alarms))
strcat(alarms, "UUU/");
@@ -12229,17 +12273,17 @@ static char *zap_show_status(struct ast_cli_entry *e, int cmd, struct ast_cli_ar
}
ast_cli(a->fd, FORMAT, s.desc, alarms, s.irqmisses, s.bpvcount, s.crc4count
-#ifdef ZT_SPANINFO_HAS_LINECONFIG
- , s.lineconfig & ZT_CONFIG_D4 ? "D4" :
- s.lineconfig & ZT_CONFIG_ESF ? "ESF" :
- s.lineconfig & ZT_CONFIG_CCS ? "CCS" :
+#ifdef DAHDI_SPANINFO_HAS_LINECONFIG
+ , s.lineconfig & DAHDI_CONFIG_D4 ? "D4" :
+ s.lineconfig & DAHDI_CONFIG_ESF ? "ESF" :
+ s.lineconfig & DAHDI_CONFIG_CCS ? "CCS" :
"CAS"
- , s.lineconfig & ZT_CONFIG_B8ZS ? "B8ZS" :
- s.lineconfig & ZT_CONFIG_HDB3 ? "HDB3" :
- s.lineconfig & ZT_CONFIG_AMI ? "AMI" :
+ , s.lineconfig & DAHDI_CONFIG_B8ZS ? "B8ZS" :
+ s.lineconfig & DAHDI_CONFIG_HDB3 ? "HDB3" :
+ s.lineconfig & DAHDI_CONFIG_AMI ? "AMI" :
"Unk"
- , s.lineconfig & ZT_CONFIG_CRC4 ?
- s.lineconfig & ZT_CONFIG_NOTOPEN ? "CRC4/YEL" : "CRC4" : "YEL"
+ , s.lineconfig & DAHDI_CONFIG_CRC4 ?
+ s.lineconfig & DAHDI_CONFIG_NOTOPEN ? "CRC4/YEL" : "CRC4" : "YEL"
, lbostr[s.lbo]
#endif
);
@@ -12251,22 +12295,40 @@ static char *zap_show_status(struct ast_cli_entry *e, int cmd, struct ast_cli_ar
#undef FORMAT2
}
-static char *zap_show_version(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_show_status_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap show status";
+ e->usage =
+ "Usage: zap show status\n"
+ " Shows a list of zap cards with status\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_show_status(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *dahdi_show_version(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int pseudo_fd = -1;
- struct zt_versioninfo vi;
+ struct dahdi_versioninfo vi;
switch (cmd) {
case CLI_INIT:
- e->command = "zap show version";
+ e->command = "dahdi show version";
e->usage =
- "Usage: zap show version\n"
- " Shows the Zaptel version in use\n";
+ "Usage: dahdi show version\n"
+ " Shows the DAHDI version in use\n";
return NULL;
case CLI_GENERATE:
return NULL;
}
- if ((pseudo_fd = open("/dev/zap/ctl", O_RDONLY)) < 0) {
+ if ((pseudo_fd = open("/dev/dahdi/ctl", O_RDONLY)) < 0) {
ast_cli(a->fd, "Failed to open control file to get version.\n");
return CLI_SUCCESS;
}
@@ -12274,30 +12336,47 @@ static char *zap_show_version(struct ast_cli_entry *e, int cmd, struct ast_cli_a
strcpy(vi.version, "Unknown");
strcpy(vi.echo_canceller, "Unknown");
- if (ioctl(pseudo_fd, ZT_GETVERSION, &vi))
+ if (ioctl(pseudo_fd, DAHDI_GETVERSION, &vi))
ast_cli(a->fd, "Failed to get version from control file.\n");
else
- ast_cli(a->fd, "Zaptel Version: %s Echo Canceller: %s\n", vi.version, vi.echo_canceller);
+ ast_cli(a->fd, "DAHDI Version: %s Echo Canceller: %s\n", vi.version, vi.echo_canceller);
close(pseudo_fd);
return CLI_SUCCESS;
}
-#if defined(HAVE_ZAPTEL_HWGAIN)
-static char *zap_set_hwgain(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_show_version_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap show version";
+ e->usage =
+ "Usage: zap show version\n"
+ " Shows the zap version in use\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_show_version(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *dahdi_set_hwgain(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int channel;
int gain;
int tx;
- struct zt_hwgain hwgain;
- struct zt_pvt *tmp = NULL;
+ struct dahdi_hwgain hwgain;
+ struct dahdi_pvt *tmp = NULL;
switch (cmd) {
case CLI_INIT:
- e->command = "zap set hwgain";
+ e->command = "dahdi set hwgain";
e->usage =
- "Usage: zap set hwgain <rx|tx> <chan#> <gain>\n"
+ "Usage: dahdi set hwgain <rx|tx> <chan#> <gain>\n"
" Sets the hardware gain on a a given channel, overriding the\n"
" value provided at module loadtime, whether the channel is in\n"
" use or not. Changes take effect immediately.\n"
@@ -12334,7 +12413,7 @@ static char *zap_set_hwgain(struct ast_cli_entry *e, int cmd, struct ast_cli_arg
hwgain.newgain = gain;
hwgain.tx = tx;
- if (ioctl(tmp->subs[SUB_REAL].zfd, ZT_SET_HWGAIN, &hwgain) < 0) {
+ if (ioctl(tmp->subs[SUB_REAL].zfd, DAHDI_SET_HWGAIN, &hwgain) < 0) {
ast_cli(a->fd, "Unable to set the hardware gain for channel %d\n", channel);
ast_mutex_unlock(&iflock);
return CLI_FAILURE;
@@ -12353,22 +12432,44 @@ static char *zap_set_hwgain(struct ast_cli_entry *e, int cmd, struct ast_cli_arg
return CLI_FAILURE;
}
-#endif
-static char *zap_set_swgain(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_set_hwgain_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap set hwgain";
+ e->usage =
+ "Usage: zap set hwgain <rx|tx> <chan#> <gain>\n"
+ " Sets the hardware gain on a a given channel, overriding the\n"
+ " value provided at module loadtime, whether the channel is in\n"
+ " use or not. Changes take effect immediately.\n"
+ " <rx|tx> which direction do you want to change (relative to our module)\n"
+ " <chan num> is the channel number relative to the device\n"
+ " <gain> is the gain in dB (e.g. -3.5 for -3.5dB)\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_set_hwgain(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *dahdi_set_swgain(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int channel;
float gain;
int tx;
int res;
ast_mutex_t *lock;
- struct zt_pvt *tmp = NULL;
+ struct dahdi_pvt *tmp = NULL;
switch (cmd) {
case CLI_INIT:
- e->command = "zap set swgain";
+ e->command = "dahdi set swgain";
e->usage =
- "Usage: zap set swgain <rx|tx> <chan#> <gain>\n"
+ "Usage: dahdi set swgain <rx|tx> <chan#> <gain>\n"
" Sets the software gain on a a given channel, overriding the\n"
" value provided at module loadtime, whether the channel is in\n"
" use or not. Changes take effect immediately.\n"
@@ -12429,17 +12530,40 @@ static char *zap_set_swgain(struct ast_cli_entry *e, int cmd, struct ast_cli_arg
}
-static char *zap_set_dnd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+static char *handle_cli_zap_set_swgain_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap set swgain";
+ e->usage =
+ "Usage: zap set swgain <rx|tx> <chan#> <gain>\n"
+ " Sets the software gain on a a given channel, overriding the\n"
+ " value provided at module loadtime, whether the channel is in\n"
+ " use or not. Changes take effect immediately.\n"
+ " <rx|tx> which direction do you want to change (relative to our module)\n"
+ " <chan num> is the channel number relative to the device\n"
+ " <gain> is the gain in dB (e.g. -3.5 for -3.5dB)\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_set_swgain(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static char *dahdi_set_dnd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int channel;
int on;
- struct zt_pvt *zt_chan = NULL;
+ struct dahdi_pvt *dahdi_chan = NULL;
switch (cmd) {
case CLI_INIT:
- e->command = "zap set dnd";
+ e->command = "dahdi set dnd";
e->usage =
- "Usage: zap set dnd <chan#> <on|off>\n"
+ "Usage: dahdi set dnd <chan#> <on|off>\n"
" Sets/resets DND (Do Not Disturb) mode on a channel.\n"
" Changes take effect immediately.\n"
" <chan num> is the channel number\n"
@@ -12468,17 +12592,17 @@ static char *zap_set_dnd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *
}
ast_mutex_lock(&iflock);
- for (zt_chan = iflist; zt_chan; zt_chan = zt_chan->next) {
- if (zt_chan->channel != channel)
+ for (dahdi_chan = iflist; dahdi_chan; dahdi_chan = dahdi_chan->next) {
+ if (dahdi_chan->channel != channel)
continue;
/* Found the channel. Actually set it */
- zap_dnd(zt_chan, on);
+ dahdi_dnd(dahdi_chan, on);
break;
}
ast_mutex_unlock(&iflock);
- if (!zt_chan) {
+ if (!dahdi_chan) {
ast_cli(a->fd, "Unable to find given channel %d\n", channel);
return CLI_FAILURE;
}
@@ -12486,33 +12610,64 @@ static char *zap_set_dnd(struct ast_cli_entry *e, int cmd, struct ast_cli_args *
return CLI_SUCCESS;
}
-static struct ast_cli_entry zap_cli[] = {
- AST_CLI_DEFINE(handle_zap_show_cadences, "List cadences"),
- AST_CLI_DEFINE(zap_show_channels, "Show active zapata channels"),
- AST_CLI_DEFINE(zap_show_channel, "Show information on a channel"),
- AST_CLI_DEFINE(zap_destroy_channel, "Destroy a channel"),
- AST_CLI_DEFINE(zap_restart_cmd, "Fully restart Zaptel channels"),
- AST_CLI_DEFINE(zap_show_status, "Show all Zaptel cards status"),
- AST_CLI_DEFINE(zap_show_version, "Show the Zaptel version in use"),
-#if defined(HAVE_ZAPTEL_HWGAIN)
- AST_CLI_DEFINE(zap_set_hwgain, "Set hardware gain on a channel"),
-#endif
- AST_CLI_DEFINE(zap_set_swgain, "Set software gain on a channel"),
- AST_CLI_DEFINE(zap_set_dnd, "Set software gain on a channel"),
+static char *handle_cli_zap_set_dnd_deprecated(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+{
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "zap set dnd";
+ e->usage =
+ "Usage: zap set dnd <chan#> <on|off>\n"
+ " Sets/resets DND (Do Not Disturb) mode on a channel.\n"
+ " Changes take effect immediately.\n"
+ " <chan num> is the channel number\n"
+ " <on|off> Enable or disable DND mode?\n"
+ ;
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ case CLI_HANDLER:
+ return dahdi_set_dnd(e, cmd, a);
+ }
+
+ return CLI_FAILURE;
+}
+
+static struct ast_cli_entry cli_zap_show_cadences_deprecated = AST_CLI_DEFINE(handle_cli_zap_show_cadences_deprecated, "List cadences");
+static struct ast_cli_entry cli_zap_show_channels_deprecated = AST_CLI_DEFINE(handle_cli_zap_show_channels_deprecated, "Show active channels");
+static struct ast_cli_entry cli_zap_show_channel_deprecated = AST_CLI_DEFINE(handle_cli_zap_show_channel_deprecated, "Show information on a channel");
+static struct ast_cli_entry cli_zap_destroy_channel_deprecated = AST_CLI_DEFINE(handle_cli_zap_destroy_channel_deprecated, "Destroy a channel");
+static struct ast_cli_entry cli_zap_restart_cmd_deprecated = AST_CLI_DEFINE(handle_cli_zap_restart_cmd_deprecated, "Fully restart channels");
+static struct ast_cli_entry cli_zap_show_status_deprecated = AST_CLI_DEFINE(handle_cli_zap_show_status_deprecated, "Show all cards status");
+static struct ast_cli_entry cli_zap_show_version_deprecated = AST_CLI_DEFINE(handle_cli_zap_show_version_deprecated, "Show DAHDI version in use");
+static struct ast_cli_entry cli_zap_set_hwgain_deprecated = AST_CLI_DEFINE(handle_cli_zap_set_hwgain_deprecated, "Set hardware gain on a channel");
+static struct ast_cli_entry cli_zap_set_swgain_deprecated = AST_CLI_DEFINE(handle_cli_zap_set_swgain_deprecated, "Set software gain on a channel");
+static struct ast_cli_entry cli_zap_set_dnd_deprecated = AST_CLI_DEFINE(handle_cli_zap_set_dnd_deprecated, "Set software gain on a channel");
+
+static struct ast_cli_entry dahdi_cli[] = {
+ AST_CLI_DEFINE(handle_dahdi_show_cadences, "List cadences", .deprecate_cmd = &cli_zap_show_cadences_deprecated),
+ AST_CLI_DEFINE(dahdi_show_channels, "Show active DAHDI channels", .deprecate_cmd = &cli_zap_show_channels_deprecated),
+ AST_CLI_DEFINE(dahdi_show_channel, "Show information on a channel", .deprecate_cmd = &cli_zap_show_channel_deprecated),
+ AST_CLI_DEFINE(dahdi_destroy_channel, "Destroy a channel", .deprecate_cmd = &cli_zap_destroy_channel_deprecated),
+ AST_CLI_DEFINE(dahdi_restart_cmd, "Fully restart DAHDI channels", .deprecate_cmd = &cli_zap_restart_cmd_deprecated),
+ AST_CLI_DEFINE(dahdi_show_status, "Show all DAHDI cards status", .deprecate_cmd = &cli_zap_show_status_deprecated),
+ AST_CLI_DEFINE(dahdi_show_version, "Show the DAHDI version in use", .deprecate_cmd = &cli_zap_show_version_deprecated),
+ AST_CLI_DEFINE(dahdi_set_hwgain, "Set hardware gain on a channel", .deprecate_cmd = &cli_zap_set_hwgain_deprecated),
+ AST_CLI_DEFINE(dahdi_set_swgain, "Set software gain on a channel", .deprecate_cmd = &cli_zap_set_swgain_deprecated),
+ AST_CLI_DEFINE(dahdi_set_dnd, "Set software gain on a channel", .deprecate_cmd = &cli_zap_set_dnd_deprecated),
};
#define TRANSFER 0
#define HANGUP 1
-static int zap_fake_event(struct zt_pvt *p, int mode)
+static int dahdi_fake_event(struct dahdi_pvt *p, int mode)
{
if (p) {
switch (mode) {
case TRANSFER:
- p->fake_event = ZT_EVENT_WINKFLASH;
+ p->fake_event = DAHDI_EVENT_WINKFLASH;
break;
case HANGUP:
- p->fake_event = ZT_EVENT_ONHOOK;
+ p->fake_event = DAHDI_EVENT_ONHOOK;
break;
default:
ast_log(LOG_WARNING, "I don't know how to handle transfer event with this: %d on channel %s\n",mode, p->owner->name);
@@ -12520,9 +12675,9 @@ static int zap_fake_event(struct zt_pvt *p, int mode)
}
return 0;
}
-static struct zt_pvt *find_channel(int channel)
+static struct dahdi_pvt *find_channel(int channel)
{
- struct zt_pvt *p = iflist;
+ struct dahdi_pvt *p = iflist;
while (p) {
if (p->channel == channel) {
break;
@@ -12532,10 +12687,10 @@ static struct zt_pvt *find_channel(int channel)
return p;
}
-static int action_zapdndon(struct mansession *s, const struct message *m)
+static int action_dahdidndon(struct mansession *s, const struct message *m)
{
- struct zt_pvt *p = NULL;
- const char *channel = astman_get_header(m, "ZapChannel");
+ struct dahdi_pvt *p = NULL;
+ const char *channel = astman_get_header(m, "DAHDIChannel");
if (ast_strlen_zero(channel)) {
astman_send_error(s, m, "No channel specified");
@@ -12551,10 +12706,10 @@ static int action_zapdndon(struct mansession *s, const struct message *m)
return 0;
}
-static int action_zapdndoff(struct mansession *s, const struct message *m)
+static int action_dahdidndoff(struct mansession *s, const struct message *m)
{
- struct zt_pvt *p = NULL;
- const char *channel = astman_get_header(m, "ZapChannel");
+ struct dahdi_pvt *p = NULL;
+ const char *channel = astman_get_header(m, "DAHDIChannel");
if (ast_strlen_zero(channel)) {
astman_send_error(s, m, "No channel specified");
@@ -12572,8 +12727,8 @@ static int action_zapdndoff(struct mansession *s, const struct message *m)
static int action_transfer(struct mansession *s, const struct message *m)
{
- struct zt_pvt *p = NULL;
- const char *channel = astman_get_header(m, "ZapChannel");
+ struct dahdi_pvt *p = NULL;
+ const char *channel = astman_get_header(m, "DAHDIChannel");
if (ast_strlen_zero(channel)) {
astman_send_error(s, m, "No channel specified");
@@ -12584,15 +12739,15 @@ static int action_transfer(struct mansession *s, const struct message *m)
astman_send_error(s, m, "No such channel");
return 0;
}
- zap_fake_event(p,TRANSFER);
- astman_send_ack(s, m, "ZapTransfer");
+ dahdi_fake_event(p,TRANSFER);
+ astman_send_ack(s, m, "DAHDITransfer");
return 0;
}
static int action_transferhangup(struct mansession *s, const struct message *m)
{
- struct zt_pvt *p = NULL;
- const char *channel = astman_get_header(m, "ZapChannel");
+ struct dahdi_pvt *p = NULL;
+ const char *channel = astman_get_header(m, "DAHDIChannel");
if (ast_strlen_zero(channel)) {
astman_send_error(s, m, "No channel specified");
@@ -12603,15 +12758,15 @@ static int action_transferhangup(struct mansession *s, const struct message *m)
astman_send_error(s, m, "No such channel");
return 0;
}
- zap_fake_event(p,HANGUP);
- astman_send_ack(s, m, "ZapHangup");
+ dahdi_fake_event(p,HANGUP);
+ astman_send_ack(s, m, "DAHDIHangup");
return 0;
}
-static int action_zapdialoffhook(struct mansession *s, const struct message *m)
+static int action_dahdidialoffhook(struct mansession *s, const struct message *m)
{
- struct zt_pvt *p = NULL;
- const char *channel = astman_get_header(m, "ZapChannel");
+ struct dahdi_pvt *p = NULL;
+ const char *channel = astman_get_header(m, "DAHDIChannel");
const char *number = astman_get_header(m, "Number");
int i;
@@ -12634,25 +12789,25 @@ static int action_zapdialoffhook(struct mansession *s, const struct message *m)
}
for (i = 0; i < strlen(number); i++) {
struct ast_frame f = { AST_FRAME_DTMF, number[i] };
- zap_queue_frame(p, &f, NULL);
+ dahdi_queue_frame(p, &f, NULL);
}
- astman_send_ack(s, m, "ZapDialOffhook");
+ astman_send_ack(s, m, "DAHDIDialOffhook");
return 0;
}
-static int action_zapshowchannels(struct mansession *s, const struct message *m)
+static int action_dahdishowchannels(struct mansession *s, const struct message *m)
{
- struct zt_pvt *tmp = NULL;
+ struct dahdi_pvt *tmp = NULL;
const char *id = astman_get_header(m, "ActionID");
- const char *zapchannel = astman_get_header(m, "ZapChannel");
+ const char *dahdichannel = astman_get_header(m, "DAHDIChannel");
char idText[256] = "";
int channels = 0;
- int zapchanquery = -1;
- if (!ast_strlen_zero(zapchannel)) {
- zapchanquery = atoi(zapchannel);
+ int dahdichanquery = -1;
+ if (!ast_strlen_zero(dahdichannel)) {
+ dahdichanquery = atoi(dahdichannel);
}
- astman_send_ack(s, m, "Zapata channel status will follow");
+ astman_send_ack(s, m, "DAHDI channel status will follow");
if (!ast_strlen_zero(id))
snprintf(idText, sizeof(idText), "ActionID: %s\r\n", id);
@@ -12664,15 +12819,15 @@ static int action_zapshowchannels(struct mansession *s, const struct message *m)
int alarm = get_alarms(tmp);
/* If a specific channel is queried for, only deliver status for that channel */
- if (zapchanquery > 0 && tmp->channel != zapchanquery)
+ if (dahdichanquery > 0 && tmp->channel != dahdichanquery)
continue;
channels++;
if (tmp->owner) {
/* Add data if we have a current call */
astman_append(s,
- "Event: ZapShowChannels\r\n"
- "ZapChannel: %d\r\n"
+ "Event: DAHDIShowChannels\r\n"
+ "DAHDIChannel: %d\r\n"
"Channel: %s\r\n"
"Uniqueid: %s\r\n"
"AccountCode: %s\r\n"
@@ -12694,8 +12849,8 @@ static int action_zapshowchannels(struct mansession *s, const struct message *m)
alarm2str(alarm), idText);
} else {
astman_append(s,
- "Event: ZapShowChannels\r\n"
- "ZapChannel: %d\r\n"
+ "Event: DAHDIShowChannels\r\n"
+ "DAHDIChannel: %d\r\n"
"Signalling: %s\r\n"
"SignallingCode: %d\r\n"
"Context: %s\r\n"
@@ -12716,7 +12871,7 @@ static int action_zapshowchannels(struct mansession *s, const struct message *m)
ast_mutex_unlock(&iflock);
astman_append(s,
- "Event: ZapShowChannelsComplete\r\n"
+ "Event: DAHDIShowChannelsComplete\r\n"
"%s"
"Items: %d\r\n"
"\r\n",
@@ -12728,7 +12883,7 @@ static int action_zapshowchannels(struct mansession *s, const struct message *m)
static int __unload_module(void)
{
int x;
- struct zt_pvt *p, *pl;
+ struct dahdi_pvt *p, *pl;
#if defined(HAVE_PRI) || defined(HAVE_SS7)
int i;
#endif
@@ -12738,19 +12893,19 @@ static int __unload_module(void)
if (pris[i].master != AST_PTHREADT_NULL)
pthread_cancel(pris[i].master);
}
- ast_cli_unregister_multiple(zap_pri_cli, sizeof(zap_pri_cli) / sizeof(struct ast_cli_entry));
- ast_unregister_application(zap_send_keypad_facility_app);
+ ast_cli_unregister_multiple(dahdi_pri_cli, sizeof(dahdi_pri_cli) / sizeof(struct ast_cli_entry));
+ ast_unregister_application(dahdi_send_keypad_facility_app);
#endif
- ast_cli_unregister_multiple(zap_cli, sizeof(zap_cli) / sizeof(struct ast_cli_entry));
- ast_manager_unregister( "ZapDialOffhook" );
- ast_manager_unregister( "ZapHangup" );
- ast_manager_unregister( "ZapTransfer" );
- ast_manager_unregister( "ZapDNDoff" );
- ast_manager_unregister( "ZapDNDon" );
- ast_manager_unregister("ZapShowChannels");
- ast_manager_unregister("ZapRestart");
- ast_channel_unregister(&zap_tech);
+ ast_cli_unregister_multiple(dahdi_cli, sizeof(dahdi_cli) / sizeof(struct ast_cli_entry));
+ ast_manager_unregister( "DAHDIDialOffhook" );
+ ast_manager_unregister( "DAHDIHangup" );
+ ast_manager_unregister( "DAHDITransfer" );
+ ast_manager_unregister( "DAHDIDNDoff" );
+ ast_manager_unregister( "DAHDIDNDon" );
+ ast_manager_unregister("DAHDIShowChannels");
+ ast_manager_unregister("DAHDIRestart");
+ ast_channel_unregister(&dahdi_tech);
ast_mutex_lock(&iflock);
/* Hangup all interfaces if they have an owner */
p = iflist;
@@ -12776,15 +12931,15 @@ static int __unload_module(void)
/* Free any callerid */
if (p->cidspill)
ast_free(p->cidspill);
- /* Close the zapata thingy */
+ /* Close the DAHDI thingy */
if (p->subs[SUB_REAL].zfd > -1)
- zt_close(p->subs[SUB_REAL].zfd);
+ dahdi_close(p->subs[SUB_REAL].zfd);
pl = p;
p = p->next;
x = pl->channel;
/* Free associated memory */
if (pl)
- destroy_zt_pvt(&pl);
+ destroy_dahdi_pvt(&pl);
ast_verb(3, "Unregistered channel %d\n", x);
}
iflist = NULL;
@@ -12795,7 +12950,7 @@ static int __unload_module(void)
for (i = 0; i < NUM_SPANS; i++) {
if (pris[i].master && (pris[i].master != AST_PTHREADT_NULL))
pthread_join(pris[i].master, NULL);
- zt_close(pris[i].fds[i]);
+ dahdi_close(pris[i].fds[i]);
}
#endif /* HAVE_PRI */
@@ -12803,7 +12958,7 @@ static int __unload_module(void)
for (i = 0; i < NUM_SPANS; i++) {
if (linksets[i].master && (linksets[i].master != AST_PTHREADT_NULL))
pthread_join(linksets[i].master, NULL);
- zt_close(linksets[i].fds[i]);
+ dahdi_close(linksets[i].fds[i]);
}
#endif /* HAVE_SS7 */
@@ -12813,12 +12968,12 @@ static int __unload_module(void)
#ifdef HAVE_SS7
static int linkset_addsigchan(int sigchan)
{
- struct zt_ss7 *link;
+ struct dahdi_ss7 *link;
int res;
int curfd;
- ZT_PARAMS p;
- ZT_BUFFERINFO bi;
- struct zt_spaninfo si;
+ DAHDI_PARAMS p;
+ DAHDI_BUFFERINFO bi;
+ struct dahdi_spaninfo si;
link = ss7_resolve_linkset(cur_linkset);
@@ -12858,48 +13013,44 @@ static int linkset_addsigchan(int sigchan)
}
curfd = link->numsigchans;
- link->fds[curfd] = open("/dev/zap/channel", O_RDWR, 0600);
- if ((link->fds[curfd] < 0) || (ioctl(link->fds[curfd],ZT_SPECIFY,&sigchan) == -1)) {
+ link->fds[curfd] = open("/dev/dahdi/channel", O_RDWR, 0600);
+ if ((link->fds[curfd] < 0) || (ioctl(link->fds[curfd],DAHDI_SPECIFY,&sigchan) == -1)) {
ast_log(LOG_ERROR, "Unable to open SS7 sigchan %d (%s)\n", sigchan, strerror(errno));
return -1;
}
- res = ioctl(link->fds[curfd], ZT_GET_PARAMS, &p);
+ res = ioctl(link->fds[curfd], DAHDI_GET_PARAMS, &p);
if (res) {
- zt_close(link->fds[curfd]);
+ dahdi_close(link->fds[curfd]);
link->fds[curfd] = -1;
ast_log(LOG_ERROR, "Unable to get parameters for sigchan %d (%s)\n", sigchan, strerror(errno));
return -1;
}
- if ((p.sigtype != ZT_SIG_HDLCFCS) && (p.sigtype != ZT_SIG_HARDHDLC)
-#if defined(HAVE_ZAPTEL_SIG_MTP2)
- && (p.sigtype != ZT_SIG_MTP2)
-#endif
- ) {
- zt_close(link->fds[curfd]);
+ if ((p.sigtype != DAHDI_SIG_HDLCFCS) && (p.sigtype != DAHDI_SIG_HARDHDLC) && (p.sigtype != DAHDI_SIG_MTP2)) {
+ dahdi_close(link->fds[curfd]);
link->fds[curfd] = -1;
- ast_log(LOG_ERROR, "sigchan %d is not in HDLC/FCS mode. See /etc/zaptel.conf\n", sigchan);
+ ast_log(LOG_ERROR, "sigchan %d is not in HDLC/FCS mode. See /etc/dahdi.conf\n", sigchan);
return -1;
}
- bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
- bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
+ bi.txbufpolicy = DAHDI_POLICY_IMMEDIATE;
+ bi.rxbufpolicy = DAHDI_POLICY_IMMEDIATE;
bi.numbufs = 32;
bi.bufsize = 512;
- if (ioctl(link->fds[curfd], ZT_SET_BUFINFO, &bi)) {
+ if (ioctl(link->fds[curfd], DAHDI_SET_BUFINFO, &bi)) {
ast_log(LOG_ERROR, "Unable to set appropriate buffering on channel %d\n", sigchan);
- zt_close(link->fds[curfd]);
+ dahdi_close(link->fds[curfd]);
link->fds[curfd] = -1;
return -1;
}
- ss7_add_link(link->ss7, SS7_TRANSPORT_ZAP, link->fds[curfd]);
+ ss7_add_link(link->ss7, SS7_TRANSPORT_DAHDI, link->fds[curfd]);
link->numsigchans++;
memset(&si, 0, sizeof(si));
- res = ioctl(link->fds[curfd], ZT_SPANSTAT, &si);
+ res = ioctl(link->fds[curfd], DAHDI_SPANSTAT, &si);
if (res) {
- zt_close(link->fds[curfd]);
+ dahdi_close(link->fds[curfd]);
link->fds[curfd] = -1;
ast_log(LOG_ERROR, "Unable to get span state for sigchan %d (%s)\n", sigchan, strerror(errno));
}
@@ -13112,7 +13263,7 @@ static char *handle_ss7_unblock_cic(struct ast_cli_entry *e, int cmd, struct ast
static char *handle_ss7_show_linkset(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
int linkset;
- struct zt_ss7 *ss7;
+ struct dahdi_ss7 *ss7;
switch (cmd) {
case CLI_INIT:
e->command = "ss7 show linkset";
@@ -13158,7 +13309,7 @@ static char *handle_ss7_version(struct ast_cli_entry *e, int cmd, struct ast_cli
return CLI_SUCCESS;
}
-static struct ast_cli_entry zap_ss7_cli[] = {
+static struct ast_cli_entry dahdi_ss7_cli[] = {
AST_CLI_DEFINE(handle_ss7_debug, "Enables SS7 debugging on a linkset"),
AST_CLI_DEFINE(handle_ss7_no_debug, "Disables SS7 debugging on a linkset"),
AST_CLI_DEFINE(handle_ss7_block_cic, "Disables SS7 debugging on a linkset"),
@@ -13184,13 +13335,13 @@ static int unload_module(void)
return __unload_module();
}
-static int build_channels(struct zt_chan_conf *conf, int iscrv, const char *value, int reload, int lineno, int *found_pseudo)
+static int build_channels(struct dahdi_chan_conf *conf, int iscrv, const char *value, int reload, int lineno, int *found_pseudo)
{
char *c, *chan;
int x, start, finish;
- struct zt_pvt *tmp;
+ struct dahdi_pvt *tmp;
#ifdef HAVE_PRI
- struct zt_pri *pri;
+ struct dahdi_pri *pri;
int trunkgroup, y;
#endif
@@ -13272,15 +13423,14 @@ static int build_channels(struct zt_chan_conf *conf, int iscrv, const char *valu
return 0;
}
-/** The length of the parameters list of 'zapchan'.
+/** The length of the parameters list of 'dahdichan'.
* \todo Move definition of MAX_CHANLIST_LEN to a proper place. */
#define MAX_CHANLIST_LEN 80
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
-static void process_echocancel(struct zt_chan_conf *confp, const char *data, unsigned int line)
+static void process_echocancel(struct dahdi_chan_conf *confp, const char *data, unsigned int line)
{
char *parse = ast_strdupa(data);
- char *params[ZT_MAX_ECHOCANPARAMS + 1];
+ char *params[DAHDI_MAX_ECHOCANPARAMS + 1];
unsigned int param_count;
unsigned int x;
@@ -13327,20 +13477,19 @@ static void process_echocancel(struct zt_chan_conf *confp, const char *data, uns
confp->chan.echocancel.head.param_count++;
}
}
-#endif /* defined(HAVE_ZAPTEL_ECHOCANPARAMS) */
-/*! process_zap() - ignore keyword 'channel' and similar */
-#define PROC_ZAP_OPT_NOCHAN (1 << 0)
-/*! process_zap() - No warnings on non-existing cofiguration keywords */
-#define PROC_ZAP_OPT_NOWARN (1 << 1)
+/*! process_dahdi() - ignore keyword 'channel' and similar */
+#define PROC_DAHDI_OPT_NOCHAN (1 << 0)
+/*! process_dahdi() - No warnings on non-existing cofiguration keywords */
+#define PROC_DAHDI_OPT_NOWARN (1 << 1)
-static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int reload, int options)
+static int process_dahdi(struct dahdi_chan_conf *confp, struct ast_variable *v, int reload, int options)
{
- struct zt_pvt *tmp;
+ struct dahdi_pvt *tmp;
const char *ringc; /* temporary string for parsing the dring number. */
int y;
int found_pseudo = 0;
- char zapchan[MAX_CHANLIST_LEN] = {};
+ char dahdichan[MAX_CHANLIST_LEN] = {};
for (; v; v = v->next) {
if (!ast_jb_read_conf(&global_jbconf, v->name, v->value))
@@ -13358,13 +13507,13 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
#endif
) {
int iscrv;
- if (options && PROC_ZAP_OPT_NOCHAN)
+ if (options && PROC_DAHDI_OPT_NOCHAN)
continue;
iscrv = !strcasecmp(v->name, "crv");
if (build_channels(confp, iscrv, v->value, reload, v->lineno, &found_pseudo))
return -1;
- } else if (!strcasecmp(v->name, "zapchan")) {
- ast_copy_string(zapchan, v->value, sizeof(zapchan));
+ } else if (!strcasecmp(v->name, "dahdichan")) {
+ ast_copy_string(dahdichan, v->value, sizeof(dahdichan));
} else if (!strcasecmp(v->name, "usedistinctiveringdetection")) {
usedistinctiveringdetection = ast_true(v->value);
} else if (!strcasecmp(v->name, "distinctiveringaftercid")) {
@@ -13458,16 +13607,7 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
} else if (!strcasecmp(v->value, "both") || ast_true(v->value))
confp->chan.callprogress |= CALLPROGRESS_FAX_INCOMING | CALLPROGRESS_FAX_OUTGOING;
} else if (!strcasecmp(v->name, "echocancel")) {
-#if defined(HAVE_ZAPTEL_ECHOCANPARAMS)
process_echocancel(confp, v->value, v->lineno);
-#else
- y = ast_strlen_zero(v->value) ? 0 : atoi(v->value);
-
- if ((y == 32) || (y == 64) || (y == 128) || (y == 256) || (y == 512) || (y == 1024))
- confp->chan.echocancel = y;
- else if ((confp->chan.echocancel = ast_true(v->value)))
- confp->chan.echocancel = 128;
-#endif
} else if (!strcasecmp(v->name, "echotraining")) {
if (sscanf(v->value, "%d", &y) == 1) {
if ((y < 10) || (y > 4000)) {
@@ -13573,8 +13713,8 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
ast_copy_string(confp->chan.cid_name, v->value, sizeof(confp->chan.cid_name));
} else if (!strcasecmp(v->name, "cid_number")) {
ast_copy_string(confp->chan.cid_num, v->value, sizeof(confp->chan.cid_num));
- } else if (!strcasecmp(v->name, "useincomingcalleridonzaptransfer")) {
- confp->chan.zaptrcallerid = ast_true(v->value);
+ } else if (!strcasecmp(v->name, "useincomingcalleridondahditransfer")) {
+ confp->chan.dahditrcallerid = ast_true(v->value);
} else if (!strcasecmp(v->name, "restrictcid")) {
confp->chan.restrictcid = ast_true(v->value);
} else if (!strcasecmp(v->name, "usecallingpres")) {
@@ -13868,15 +14008,15 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
ast_copy_string(confp->pri.idledial, v->value, sizeof(confp->pri.idledial));
} else if (!strcasecmp(v->name, "overlapdial")) {
if (ast_true(v->value)) {
- confp->pri.overlapdial = ZAP_OVERLAPDIAL_BOTH;
+ confp->pri.overlapdial = DAHDI_OVERLAPDIAL_BOTH;
} else if (!strcasecmp(v->value, "incoming")) {
- confp->pri.overlapdial = ZAP_OVERLAPDIAL_INCOMING;
+ confp->pri.overlapdial = DAHDI_OVERLAPDIAL_INCOMING;
} else if (!strcasecmp(v->value, "outgoing")) {
- confp->pri.overlapdial = ZAP_OVERLAPDIAL_OUTGOING;
+ confp->pri.overlapdial = DAHDI_OVERLAPDIAL_OUTGOING;
} else if (!strcasecmp(v->value, "both") || ast_true(v->value)) {
- confp->pri.overlapdial = ZAP_OVERLAPDIAL_BOTH;
+ confp->pri.overlapdial = DAHDI_OVERLAPDIAL_BOTH;
} else {
- confp->pri.overlapdial = ZAP_OVERLAPDIAL_NONE;
+ confp->pri.overlapdial = DAHDI_OVERLAPDIAL_NONE;
}
} else if (!strcasecmp(v->name, "pritimer")) {
#ifdef PRI_GETSET_TIMERS
@@ -13973,7 +14113,7 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
/* setup to scan our argument */
int element_count, c[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int i;
- struct zt_ring_cadence new_cadence;
+ struct dahdi_ring_cadence new_cadence;
int cid_location = -1;
int firstcadencepos = 0;
char original_args[80];
@@ -14009,7 +14149,7 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
} else {
if (firstcadencepos == 0) {
firstcadencepos = i; /* only recorded to avoid duplicate specification */
- /* duration will be passed negative to the Zaptel driver */
+ /* duration will be passed negative to the DAHDI driver */
} else {
ast_log(LOG_ERROR, "First cadence position specified twice: %s at line %d.\n", original_args, v->lineno);
cadence_is_ok = 0;
@@ -14071,11 +14211,11 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
int toneduration;
int ctlfd;
int res;
- struct zt_dialparams dps;
+ struct dahdi_dialparams dps;
- ctlfd = open("/dev/zap/ctl", O_RDWR);
+ ctlfd = open("/dev/dahdi/ctl", O_RDWR);
if (ctlfd == -1) {
- ast_log(LOG_ERROR, "Unable to open /dev/zap/ctl to set toneduration at line %d.\n", v->lineno);
+ ast_log(LOG_ERROR, "Unable to open /dev/dahdi/ctl to set toneduration at line %d.\n", v->lineno);
return -1;
}
@@ -14084,7 +14224,7 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
memset(&dps, 0, sizeof(dps));
dps.dtmf_tonelen = dps.mfv1_tonelen = toneduration;
- res = ioctl(ctlfd, ZT_SET_DIALPARAMS, &dps);
+ res = ioctl(ctlfd, DAHDI_SET_DIALPARAMS, &dps);
if (res < 0) {
ast_log(LOG_ERROR, "Invalid tone duration: %d ms at line %d.\n", toneduration, v->lineno);
return -1;
@@ -14098,13 +14238,13 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
} else if (!strcasecmp(v->name, "mwilevel")) {
mwilevel = atoi(v->value);
}
- } else if (!(options && PROC_ZAP_OPT_NOWARN) )
+ } else if (!(options && PROC_DAHDI_OPT_NOWARN) )
ast_log(LOG_WARNING, "Ignoring %s at line %d.\n", v->name, v->lineno);
}
- if (zapchan[0]) {
- /* The user has set 'zapchan' */
+ if (dahdichan[0]) {
+ /* The user has set 'dahdichan' */
/*< \todo pass proper line number instead of 0 */
- if (build_channels(confp, 0, zapchan, reload, 0, &found_pseudo)) {
+ if (build_channels(confp, 0, dahdichan, reload, 0, &found_pseudo)) {
return -1;
}
}
@@ -14129,12 +14269,12 @@ static int process_zap(struct zt_chan_conf *confp, struct ast_variable *v, int r
return 0;
}
-static int setup_zap(int reload)
+static int setup_dahdi(int reload)
{
struct ast_config *cfg, *ucfg;
struct ast_variable *v;
- struct zt_chan_conf base_conf = zt_chan_conf_default();
- struct zt_chan_conf conf;
+ struct dahdi_chan_conf base_conf = dahdi_chan_conf_default();
+ struct dahdi_chan_conf conf;
struct ast_flags config_flags = { reload == 1 ? CONFIG_FLAG_FILEUNCHANGED : 0 };
const char *cat;
int res;
@@ -14181,22 +14321,22 @@ static int setup_zap(int reload)
while (c && (i < NUM_DCHANS)) {
dchannels[i] = atoi(c + 1);
if (dchannels[i] < 0) {
- ast_log(LOG_WARNING, "D-channel for trunk group %d must be a postiive number at line %d of zapata.conf\n", trunkgroup, v->lineno);
+ ast_log(LOG_WARNING, "D-channel for trunk group %d must be a postiive number at line %d of chan_dahdi.conf\n", trunkgroup, v->lineno);
} else
i++;
c = strchr(c + 1, ',');
}
if (i) {
if (pri_create_trunkgroup(trunkgroup, dchannels)) {
- ast_log(LOG_WARNING, "Unable to create trunk group %d with Primary D-channel %d at line %d of zapata.conf\n", trunkgroup, dchannels[0], v->lineno);
+ ast_log(LOG_WARNING, "Unable to create trunk group %d with Primary D-channel %d at line %d of chan_dahdi.conf\n", trunkgroup, dchannels[0], v->lineno);
} else
ast_verb(2, "Created trunk group %d with Primary D-channel %d and %d backup%s\n", trunkgroup, dchannels[0], i - 1, (i == 1) ? "" : "s");
} else
- ast_log(LOG_WARNING, "Trunk group %d lacks any valid D-channels at line %d of zapata.conf\n", trunkgroup, v->lineno);
+ ast_log(LOG_WARNING, "Trunk group %d lacks any valid D-channels at line %d of chan_dahdi.conf\n", trunkgroup, v->lineno);
} else
- ast_log(LOG_WARNING, "Trunk group %d lacks a primary D-channel at line %d of zapata.conf\n", trunkgroup, v->lineno);
+ ast_log(LOG_WARNING, "Trunk group %d lacks a primary D-channel at line %d of chan_dahdi.conf\n", trunkgroup, v->lineno);
} else
- ast_log(LOG_WARNING, "Trunk group identifier must be a positive integer at line %d of zapata.conf\n", v->lineno);
+ ast_log(LOG_WARNING, "Trunk group identifier must be a positive integer at line %d of chan_dahdi.conf\n", v->lineno);
} else if (!strcasecmp(v->name, "spanmap")) {
spanno = atoi(v->value);
if (spanno > 0) {
@@ -14213,13 +14353,13 @@ static int setup_zap(int reload)
} else
ast_verb(2, "Mapped span %d to trunk group %d (logical span %d)\n", spanno, trunkgroup, logicalspan);
} else
- ast_log(LOG_WARNING, "Logical span must be a postive number, or '0' (for unspecified) at line %d of zapata.conf\n", v->lineno);
+ ast_log(LOG_WARNING, "Logical span must be a postive number, or '0' (for unspecified) at line %d of chan_dahdi.conf\n", v->lineno);
} else
- ast_log(LOG_WARNING, "Trunk group must be a postive number at line %d of zapata.conf\n", v->lineno);
+ ast_log(LOG_WARNING, "Trunk group must be a postive number at line %d of chan_dahdi.conf\n", v->lineno);
} else
- ast_log(LOG_WARNING, "Missing trunk group for span map at line %d of zapata.conf\n", v->lineno);
+ ast_log(LOG_WARNING, "Missing trunk group for span map at line %d of chan_dahdi.conf\n", v->lineno);
} else
- ast_log(LOG_WARNING, "Span number must be a postive integer at line %d of zapata.conf\n", v->lineno);
+ ast_log(LOG_WARNING, "Span number must be a postive integer at line %d of chan_dahdi.conf\n", v->lineno);
} else {
ast_log(LOG_NOTICE, "Ignoring unknown keyword '%s' in trunkgroups\n", v->name);
}
@@ -14234,7 +14374,7 @@ static int setup_zap(int reload)
mwimonitornotify[0] = '\0';
v = ast_variable_browse(cfg, "channels");
- if ((res = process_zap(&base_conf, v, reload, 0))) {
+ if ((res = process_dahdi(&base_conf, v, reload, 0))) {
ast_mutex_unlock(&iflock);
ast_config_destroy(cfg);
if (ucfg) {
@@ -14243,7 +14383,7 @@ static int setup_zap(int reload)
return res;
}
- /* Now get configuration from all normal sections in zapata.conf: */
+ /* Now get configuration from all normal sections in chan_dahdi.conf: */
for (cat = ast_category_browse(cfg, NULL); cat ; cat = ast_category_browse(cfg, cat)) {
/* [channels] and [trunkgroups] are used. Let's also reserve
* [globals] and [general] for future use
@@ -14257,7 +14397,7 @@ static int setup_zap(int reload)
memcpy(&conf, &base_conf, sizeof(conf));
- if ((res = process_zap(&conf, ast_variable_browse(cfg, cat), reload, PROC_ZAP_OPT_NOCHAN))) {
+ if ((res = process_dahdi(&conf, ast_variable_browse(cfg, cat), reload, PROC_DAHDI_OPT_NOCHAN))) {
ast_mutex_unlock(&iflock);
ast_config_destroy(cfg);
if (ucfg) {
@@ -14272,14 +14412,14 @@ static int setup_zap(int reload)
if (ucfg) {
const char *chans;
- process_zap(&base_conf, ast_variable_browse(ucfg, "general"), 1, 0);
+ process_dahdi(&base_conf, ast_variable_browse(ucfg, "general"), 1, 0);
for (cat = ast_category_browse(ucfg, NULL); cat ; cat = ast_category_browse(ucfg, cat)) {
if (!strcasecmp(cat, "general")) {
continue;
}
- chans = ast_variable_retrieve(ucfg, cat, "zapchan");
+ chans = ast_variable_retrieve(ucfg, cat, "dahdichan");
if (ast_strlen_zero(chans)) {
continue;
@@ -14287,7 +14427,7 @@ static int setup_zap(int reload)
memcpy(&conf, &base_conf, sizeof(conf));
- if ((res = process_zap(&conf, ast_variable_browse(ucfg, cat), reload, PROC_ZAP_OPT_NOCHAN | PROC_ZAP_OPT_NOWARN))) {
+ if ((res = process_dahdi(&conf, ast_variable_browse(ucfg, cat), reload, PROC_DAHDI_OPT_NOCHAN | PROC_DAHDI_OPT_NOWARN))) {
ast_config_destroy(ucfg);
ast_mutex_unlock(&iflock);
return res;
@@ -14346,10 +14486,10 @@ static int load_module(void)
for (i = 0; i < NUM_DCHANS; i++)
pris[y].fds[i] = -1;
}
- pri_set_error(zt_pri_error);
- pri_set_message(zt_pri_message);
- ast_register_application(zap_send_keypad_facility_app, zap_send_keypad_facility_exec,
- zap_send_keypad_facility_synopsis, zap_send_keypad_facility_descrip);
+ pri_set_error(dahdi_pri_error);
+ pri_set_message(dahdi_pri_message);
+ ast_register_application(dahdi_send_keypad_facility_app, dahdi_send_keypad_facility_exec,
+ dahdi_send_keypad_facility_synopsis, dahdi_send_keypad_facility_descrip);
#endif
#ifdef HAVE_SS7
memset(linksets, 0, sizeof(linksets));
@@ -14359,42 +14499,42 @@ static int load_module(void)
for (i = 0; i < NUM_DCHANS; i++)
linksets[y].fds[i] = -1;
}
- ss7_set_error(zt_ss7_error);
- ss7_set_message(zt_ss7_message);
+ ss7_set_error(dahdi_ss7_error);
+ ss7_set_message(dahdi_ss7_message);
#endif /* HAVE_SS7 */
- res = setup_zap(0);
- /* Make sure we can register our Zap channel type */
+ res = setup_dahdi(0);
+ /* Make sure we can register our DAHDI channel type */
if (res)
return AST_MODULE_LOAD_DECLINE;
- if (ast_channel_register(&zap_tech)) {
- ast_log(LOG_ERROR, "Unable to register channel class 'Zap'\n");
+ if (ast_channel_register(&dahdi_tech)) {
+ ast_log(LOG_ERROR, "Unable to register channel class 'DAHDI'\n");
__unload_module();
return AST_MODULE_LOAD_FAILURE;
}
#ifdef HAVE_PRI
ast_string_field_init(&inuse, 16);
ast_string_field_set(&inuse, name, "GR-303InUse");
- ast_cli_register_multiple(zap_pri_cli, sizeof(zap_pri_cli) / sizeof(struct ast_cli_entry));
+ ast_cli_register_multiple(dahdi_pri_cli, sizeof(dahdi_pri_cli) / sizeof(struct ast_cli_entry));
#endif
#ifdef HAVE_SS7
- ast_cli_register_multiple(zap_ss7_cli, sizeof(zap_ss7_cli) / sizeof(zap_ss7_cli[0]));
+ ast_cli_register_multiple(dahdi_ss7_cli, sizeof(dahdi_ss7_cli) / sizeof(dahdi_ss7_cli[0]));
#endif
- ast_cli_register_multiple(zap_cli, sizeof(zap_cli) / sizeof(struct ast_cli_entry));
+ ast_cli_register_multiple(dahdi_cli, sizeof(dahdi_cli) / sizeof(struct ast_cli_entry));
memset(round_robin, 0, sizeof(round_robin));
- ast_manager_register( "ZapTransfer", 0, action_transfer, "Transfer Zap Channel" );
- ast_manager_register( "ZapHangup", 0, action_transferhangup, "Hangup Zap Channel" );
- ast_manager_register( "ZapDialOffhook", 0, action_zapdialoffhook, "Dial over Zap channel while offhook" );
- ast_manager_register( "ZapDNDon", 0, action_zapdndon, "Toggle Zap channel Do Not Disturb status ON" );
- ast_manager_register( "ZapDNDoff", 0, action_zapdndoff, "Toggle Zap channel Do Not Disturb status OFF" );
- ast_manager_register("ZapShowChannels", 0, action_zapshowchannels, "Show status zapata channels");
- ast_manager_register("ZapRestart", 0, action_zaprestart, "Fully Restart Zaptel channels (terminates calls)");
+ ast_manager_register( "DAHDITransfer", 0, action_transfer, "Transfer DAHDI Channel" );
+ ast_manager_register( "DAHDIHangup", 0, action_transferhangup, "Hangup DAHDI Channel" );
+ ast_manager_register( "DAHDIDialOffhook", 0, action_dahdidialoffhook, "Dial over DAHDI channel while offhook" );
+ ast_manager_register( "DAHDIDNDon", 0, action_dahdidndon, "Toggle DAHDI channel Do Not Disturb status ON" );
+ ast_manager_register( "DAHDIDNDoff", 0, action_dahdidndoff, "Toggle DAHDI channel Do Not Disturb status OFF" );
+ ast_manager_register("DAHDIShowChannels", 0, action_dahdishowchannels, "Show status DAHDI channels");
+ ast_manager_register("DAHDIRestart", 0, action_dahdirestart, "Fully Restart DAHDI channels (terminates calls)");
return res;
}
-static int zt_sendtext(struct ast_channel *c, const char *text)
+static int dahdi_sendtext(struct ast_channel *c, const char *text)
{
#define END_SILENCE_LEN 400
#define HEADER_MS 50
@@ -14403,7 +14543,7 @@ static int zt_sendtext(struct ast_channel *c, const char *text)
#define ASCII_BYTES_PER_CHAR 80
unsigned char *buf,*mybuf;
- struct zt_pvt *p = c->tech_pvt;
+ struct dahdi_pvt *p = c->tech_pvt;
struct pollfd fds[1];
int size,res,fd,len,x;
int bytes=0;
@@ -14413,7 +14553,7 @@ static int zt_sendtext(struct ast_channel *c, const char *text)
float scont = 0.0;
int index;
- index = zt_get_index(c, p, 0);
+ index = dahdi_get_index(c, p, 0);
if (index < 0) {
ast_log(LOG_WARNING, "Huh? I don't exist?\n");
return -1;
@@ -14498,22 +14638,22 @@ static int reload(void)
{
int res = 0;
- res = setup_zap(1);
+ res = setup_dahdi(1);
if (res) {
- ast_log(LOG_WARNING, "Reload of chan_zap.so is unsuccessful!\n");
+ ast_log(LOG_WARNING, "Reload of chan_dahdi.so is unsuccessful!\n");
return -1;
}
return 0;
}
/* This is a workaround so that menuselect displays a proper description
- * AST_MODULE_INFO(, , "Zapata Telephony"
+ * AST_MODULE_INFO(, , "DAHDI Telephony"
*/
-#ifdef ZAPATA_PRI
-#define tdesc "Zapata Telephony w/PRI"
+#ifdef DAHDI_PRI
+#define tdesc "DAHDI Telephony w/PRI"
#else
-#define tdesc "Zapata Telephony"
+#define tdesc "DAHDI Telephony"
#endif
AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, tdesc,
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index d20cc1c2e..3ff7a256a 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -31,7 +31,7 @@
*/
/*** MODULEINFO
- <use>zaptel</use>
+ <use>dahdi</use>
<use>crypto</use>
***/
@@ -55,7 +55,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <sys/stat.h>
#include <regex.h>
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/paths.h" /* need ast_config_AST_DATA_DIR for firmware */
#include "asterisk/lock.h"
@@ -7238,17 +7238,17 @@ static int timing_read(int *id, int fd, short events, void *cbdata)
char buf[1024];
int res, processed = 0, totalcalls = 0;
struct iax2_trunk_peer *tpeer = NULL, *drop = NULL;
-#ifdef ZT_TIMERACK
+#ifdef DAHDI_TIMERACK
int x = 1;
#endif
struct timeval now = ast_tvnow();
if (iaxtrunkdebug)
ast_verbose("Beginning trunk processing. Trunk queue ceiling is %d bytes per host\n", trunkmaxsize);
if (events & AST_IO_PRI) {
-#ifdef ZT_TIMERACK
+#ifdef DAHDI_TIMERACK
/* Great, this is a timing interface, just call the ioctl */
- if (ioctl(fd, ZT_TIMERACK, &x)) {
- ast_log(LOG_WARNING, "Unable to acknowledge zap timer. IAX trunking will fail!\n");
+ if (ioctl(fd, DAHDI_TIMERACK, &x)) {
+ ast_log(LOG_WARNING, "Unable to acknowledge DAHDI timer. IAX trunking will fail!\n");
usleep(1);
return -1;
}
@@ -10366,7 +10366,7 @@ static struct iax2_peer *build_peer(const char *name, struct ast_variable *v, st
} else if (!strcasecmp(v->name, "trunk")) {
ast_set2_flag(peer, ast_true(v->value), IAX_TRUNK);
if (ast_test_flag(peer, IAX_TRUNK) && (timingfd < 0)) {
- ast_log(LOG_WARNING, "Unable to support trunking on peer '%s' without zaptel timing\n", peer->name);
+ ast_log(LOG_WARNING, "Unable to support trunking on peer '%s' without DAHDI timing\n", peer->name);
ast_clear_flag(peer, IAX_TRUNK);
}
} else if (!strcasecmp(v->name, "auth")) {
@@ -10634,7 +10634,7 @@ static struct iax2_user *build_user(const char *name, struct ast_variable *v, st
} else if (!strcasecmp(v->name, "trunk")) {
ast_set2_flag(user, ast_true(v->value), IAX_TRUNK);
if (ast_test_flag(user, IAX_TRUNK) && (timingfd < 0)) {
- ast_log(LOG_WARNING, "Unable to support trunking on user '%s' without zaptel timing\n", user->name);
+ ast_log(LOG_WARNING, "Unable to support trunking on user '%s' without DAHDI timing\n", user->name);
ast_clear_flag(user, IAX_TRUNK);
}
} else if (!strcasecmp(v->name, "auth")) {
@@ -10828,14 +10828,14 @@ static void prune_peers(void)
static void set_timing(void)
{
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
int bs = trunkfreq * 8;
if (timingfd > -1) {
if (
-#ifdef ZT_TIMERACK
- ioctl(timingfd, ZT_TIMERCONFIG, &bs) &&
+#ifdef DAHDI_TIMERACK
+ ioctl(timingfd, DAHDI_TIMERCONFIG, &bs) &&
#endif
- ioctl(timingfd, ZT_SET_BLOCKSIZE, &bs))
+ ioctl(timingfd, DAHDI_SET_BLOCKSIZE, &bs))
ast_log(LOG_WARNING, "Unable to set blocksize on timing source\n");
}
#endif
@@ -12103,12 +12103,12 @@ static int load_module(void)
iax_set_error(iax_error_output);
jb_setoutput(jb_error_output, jb_warning_output, NULL);
-#ifdef HAVE_ZAPTEL
-#ifdef ZT_TIMERACK
- timingfd = open("/dev/zap/timer", O_RDWR);
+#ifdef HAVE_DAHDI
+#ifdef DAHDI_TIMERACK
+ timingfd = open("/dev/dahdi/timer", O_RDWR);
if (timingfd < 0)
#endif
- timingfd = open("/dev/zap/pseudo", O_RDWR);
+ timingfd = open("/dev/dahdi/pseudo", O_RDWR);
if (timingfd < 0)
ast_log(LOG_WARNING, "Unable to open IAX timing interface: %s\n", strerror(errno));
#endif
diff --git a/channels/chan_mgcp.c b/channels/chan_mgcp.c
index 4dc9f671a..6cc7e66f0 100644
--- a/channels/chan_mgcp.c
+++ b/channels/chan_mgcp.c
@@ -2696,7 +2696,7 @@ static void *mgcp_ss(void *data)
ast_indicate(chan, -1);
} else {
/* XXX Redundant? We should already be playing dialtone */
- /*tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);*/
+ /*tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALTONE);*/
transmit_notify_request(sub, "L/dl");
}
if (ast_exists_extension(chan, chan->context, p->dtmf_buf, 1, p->cid_num)) {
@@ -2706,7 +2706,7 @@ static void *mgcp_ss(void *data)
ast_copy_string(p->call_forward, p->dtmf_buf, sizeof(p->call_forward));
ast_verb(3, "Setting call forward to '%s' on channel %s\n",
p->call_forward, chan->name);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
if (res)
break;
@@ -2715,7 +2715,7 @@ static void *mgcp_ss(void *data)
ast_indicate(chan, -1);
sleep(1);
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALTONE);*/
transmit_notify_request(sub, "L/dl");
len = 0;
getforward = 0;
@@ -2729,7 +2729,7 @@ static void *mgcp_ss(void *data)
p->hidecallerid ? "" : p->cid_name,
chan->cid.cid_ani ? NULL : p->cid_num);
ast_setstate(chan, AST_STATE_RING);
- /*zt_enable_ec(p);*/
+ /*dahdi_enable_ec(p);*/
if (p->dtmfmode & MGCP_DTMF_HYBRID) {
p->dtmfmode |= MGCP_DTMF_INBAND;
ast_indicate(chan, -1);
@@ -2737,7 +2737,7 @@ static void *mgcp_ss(void *data)
res = ast_pbx_run(chan);
if (res) {
ast_log(LOG_WARNING, "PBX exited non-zero\n");
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);*/
/*transmit_notify_request(p, "nbz", 1);*/
transmit_notify_request(sub, "G/cg");
}
@@ -2750,9 +2750,9 @@ static void *mgcp_ss(void *data)
}
} else if (res == 0) {
ast_debug(1, "not enough digits (and no ambiguous match)...\n");
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);*/
transmit_notify_request(sub, "G/cg");
- /*zt_wait_event(p->subs[index].zfd);*/
+ /*dahdi_wait_event(p->subs[index].zfd);*/
ast_hangup(chan);
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
return NULL;
@@ -2760,7 +2760,7 @@ static void *mgcp_ss(void *data)
ast_verb(3, "Disabling call waiting on %s\n", chan->name);
/* Disable call waiting if enabled */
p->callwaiting = 0;
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
len = 0;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
@@ -2772,7 +2772,7 @@ static void *mgcp_ss(void *data)
*/
if (ast_pickup_call(chan)) {
ast_log(LOG_WARNING, "No call pickup possible...\n");
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_CONGESTION);*/
transmit_notify_request(sub, "G/cg");
}
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
@@ -2783,7 +2783,7 @@ static void *mgcp_ss(void *data)
/* Disable Caller*ID if enabled */
p->hidecallerid = 1;
ast_set_callerid(chan, "", "", NULL);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
len = 0;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
@@ -2794,13 +2794,13 @@ static void *mgcp_ss(void *data)
res = ast_say_digit_str(chan, p->lastcallerid, "", chan->language);
}
if (!res)
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
break;
} else if (!strcmp(p->dtmf_buf, "*78")) {
/* Do not disturb */
ast_verb(3, "Enabled DND on channel %s\n", chan->name);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
p->dnd = 1;
getforward = 0;
@@ -2809,21 +2809,21 @@ static void *mgcp_ss(void *data)
} else if (!strcmp(p->dtmf_buf, "*79")) {
/* Do not disturb */
ast_verb(3, "Disabled DND on channel %s\n", chan->name);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
p->dnd = 0;
getforward = 0;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
len = 0;
} else if (p->cancallforward && !strcmp(p->dtmf_buf, "*72")) {
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
getforward = 1;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
len = 0;
} else if (p->cancallforward && !strcmp(p->dtmf_buf, "*73")) {
ast_verb(3, "Cancelling call forwarding on channel %s\n", chan->name);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
memset(p->call_forward, 0, sizeof(p->call_forward));
getforward = 0;
@@ -2840,7 +2840,7 @@ static void *mgcp_ss(void *data)
ast_verb(3, "Blacklisting number %s\n", p->lastcallerid);
res = ast_db_put("blacklist", p->lastcallerid, "1");
if (!res) {
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
len = 0;
@@ -2850,7 +2850,7 @@ static void *mgcp_ss(void *data)
/* Enable Caller*ID if enabled */
p->hidecallerid = 0;
ast_set_callerid(chan, p->cid_num, p->cid_name, NULL);
- /*res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALRECALL);*/
+ /*res = tone_zone_play_tone(p->subs[index].zfd, DAHDI_TONE_DIALRECALL);*/
transmit_notify_request(sub, "L/sl");
len = 0;
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
diff --git a/codecs/codec_zap.c b/codecs/codec_dahdi.c
index 645b65a35..7142a5057 100644
--- a/codecs/codec_zap.c
+++ b/codecs/codec_dahdi.c
@@ -1,7 +1,7 @@
/*
* Asterisk -- An open source telephony toolkit.
*
- * Zaptel native transcoding support
+ * DAHDI native transcoding support
*
* Copyright (C) 1999 - 2006, Digium, Inc.
*
@@ -21,14 +21,13 @@
/*! \file
*
- * \brief Translate between various formats natively through Zaptel transcoding
+ * \brief Translate between various formats natively through DAHDI transcoding
*
* \ingroup codecs
*/
/*** MODULEINFO
- <depend>zaptel_transcode</depend>
- <depend>zaptel</depend>
+ <depend>dahdi</depend>
***/
#include "asterisk.h"
@@ -39,8 +38,8 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <netinet/in.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
-#include <zaptel/zaptel.h>
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/translate.h"
#include "asterisk/config.h"
@@ -63,7 +62,7 @@ static struct channel_usage {
static char *handle_cli_transcoder_show(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
static struct ast_cli_entry cli[] = {
- AST_CLI_DEFINE(handle_cli_transcoder_show, "Display Zaptel transcoder utilization.")
+ AST_CLI_DEFINE(handle_cli_transcoder_show, "Display DAHDI transcoder utilization.")
};
struct format_map {
@@ -86,7 +85,7 @@ struct pvt {
int totalms;
int lasttotalms;
#endif
- struct zt_transcode_header *hdr;
+ struct dahdi_transcode_header *hdr;
};
static char *handle_cli_transcoder_show(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
@@ -98,7 +97,7 @@ static char *handle_cli_transcoder_show(struct ast_cli_entry *e, int cmd, struct
e->command = "transcoder show";
e->usage =
"Usage: transcoder show\n"
- " Displays channel utilization of Zaptel transcoder(s).\n";
+ " Displays channel utilization of DAHDI transcoder(s).\n";
return NULL;
case CLI_GENERATE:
return NULL;
@@ -110,21 +109,21 @@ static char *handle_cli_transcoder_show(struct ast_cli_entry *e, int cmd, struct
copy = channels;
if (copy.total == 0)
- ast_cli(a->fd, "No Zaptel transcoders found.\n");
+ ast_cli(a->fd, "No DAHDI transcoders found.\n");
else
ast_cli(a->fd, "%d/%d encoders/decoders of %d channels are in use.\n", copy.encoders, copy.decoders, copy.total);
return CLI_SUCCESS;
}
-static int zap_framein(struct ast_trans_pvt *pvt, struct ast_frame *f)
+static int dahdi_framein(struct ast_trans_pvt *pvt, struct ast_frame *f)
{
- struct pvt *ztp = pvt->pvt;
- struct zt_transcode_header *hdr = ztp->hdr;
+ struct pvt *dahdip = pvt->pvt;
+ struct dahdi_transcode_header *hdr = dahdip->hdr;
if (!f->subclass) {
/* Fake a return frame for calculation purposes */
- ztp->fake = 2;
+ dahdip->fake = 2;
pvt->samples = f->samples;
return 0;
}
@@ -151,14 +150,14 @@ static int zap_framein(struct ast_trans_pvt *pvt, struct ast_frame *f)
return -1;
}
-static struct ast_frame *zap_frameout(struct ast_trans_pvt *pvt)
+static struct ast_frame *dahdi_frameout(struct ast_trans_pvt *pvt)
{
- struct pvt *ztp = pvt->pvt;
- struct zt_transcode_header *hdr = ztp->hdr;
+ struct pvt *dahdip = pvt->pvt;
+ struct dahdi_transcode_header *hdr = dahdip->hdr;
unsigned int x;
- if (ztp->fake == 2) {
- ztp->fake = 1;
+ if (dahdip->fake == 2) {
+ dahdip->fake = 1;
pvt->f.frametype = AST_FRAME_VOICE;
pvt->f.subclass = 0;
pvt->f.samples = 160;
@@ -168,15 +167,15 @@ static struct ast_frame *zap_frameout(struct ast_trans_pvt *pvt)
pvt->f.mallocd = 0;
ast_set_flag(&pvt->f, AST_FRFLAG_FROM_TRANSLATOR);
pvt->samples = 0;
- } else if (ztp->fake == 1) {
+ } else if (dahdip->fake == 1) {
return NULL;
} else {
if (hdr->dstlen) {
#ifdef DEBUG_TRANSCODE
- ztp->totalms += hdr->dstsamples;
- if ((ztp->totalms - ztp->lasttotalms) > 8000) {
- printf("Whee %p, %d (%d to %d)\n", ztp, hdr->dstlen, ztp->lasttotalms, ztp->totalms);
- ztp->lasttotalms = ztp->totalms;
+ dahdip->totalms += hdr->dstsamples;
+ if ((dahdip->totalms - dahdip->lasttotalms) > 8000) {
+ printf("Whee %p, %d (%d to %d)\n", dahdip, hdr->dstlen, dahdip->lasttotalms, dahdip->totalms);
+ dahdip->lasttotalms = dahdip->totalms;
}
#endif
pvt->f.frametype = AST_FRAME_VOICE;
@@ -193,8 +192,8 @@ static struct ast_frame *zap_frameout(struct ast_trans_pvt *pvt)
} else {
if (hdr->srclen) {
hdr->dstoffset = AST_FRIENDLY_OFFSET;
- x = ZT_TCOP_TRANSCODE;
- if (ioctl(ztp->fd, ZT_TRANSCODE_OP, &x))
+ x = DAHDI_TCOP_TRANSCODE;
+ if (ioctl(dahdip->fd, DAHDI_TRANSCODE_OP, &x))
ast_log(LOG_WARNING, "Failed to transcode: %s\n", strerror(errno));
}
return NULL;
@@ -204,16 +203,16 @@ static struct ast_frame *zap_frameout(struct ast_trans_pvt *pvt)
return &pvt->f;
}
-static void zap_destroy(struct ast_trans_pvt *pvt)
+static void dahdi_destroy(struct ast_trans_pvt *pvt)
{
- struct pvt *ztp = pvt->pvt;
+ struct pvt *dahdip = pvt->pvt;
unsigned int x;
- x = ZT_TCOP_RELEASE;
- if (ioctl(ztp->fd, ZT_TRANSCODE_OP, &x))
+ x = DAHDI_TCOP_RELEASE;
+ if (ioctl(dahdip->fd, DAHDI_TRANSCODE_OP, &x))
ast_log(LOG_WARNING, "Failed to release transcoder channel: %s\n", strerror(errno));
- switch (ztp->hdr->dstfmt) {
+ switch (dahdip->hdr->dstfmt) {
case AST_FORMAT_G729A:
case AST_FORMAT_G723_1:
ast_atomic_fetchadd_int(&channels.encoders, -1);
@@ -223,20 +222,20 @@ static void zap_destroy(struct ast_trans_pvt *pvt)
break;
}
- munmap(ztp->hdr, sizeof(*ztp->hdr));
- close(ztp->fd);
+ munmap(dahdip->hdr, sizeof(*dahdip->hdr));
+ close(dahdip->fd);
}
-static int zap_translate(struct ast_trans_pvt *pvt, int dest, int source)
+static int dahdi_translate(struct ast_trans_pvt *pvt, int dest, int source)
{
- /* Request translation through zap if possible */
+ /* Request translation through dahdi if possible */
int fd;
- unsigned int x = ZT_TCOP_ALLOCATE;
- struct pvt *ztp = pvt->pvt;
- struct zt_transcode_header *hdr;
+ unsigned int x = DAHDI_TCOP_ALLOCATE;
+ struct pvt *dahdip = pvt->pvt;
+ struct dahdi_transcode_header *hdr;
int flags;
- if ((fd = open("/dev/zap/transcode", O_RDWR)) < 0)
+ if ((fd = open("/dev/dahdi/transcode", O_RDWR)) < 0)
return -1;
flags = fcntl(fd, F_GETFL);
if (flags > - 1) {
@@ -252,7 +251,7 @@ static int zap_translate(struct ast_trans_pvt *pvt, int dest, int source)
return -1;
}
- if (hdr->magic != ZT_TRANSCODE_MAGIC) {
+ if (hdr->magic != DAHDI_TRANSCODE_MAGIC) {
ast_log(LOG_ERROR, "Transcoder header (%08x) wasn't magic. Abandoning\n", hdr->magic);
munmap(hdr, sizeof(*hdr));
close(fd);
@@ -262,7 +261,7 @@ static int zap_translate(struct ast_trans_pvt *pvt, int dest, int source)
hdr->srcfmt = (1 << source);
hdr->dstfmt = (1 << dest);
- if (ioctl(fd, ZT_TRANSCODE_OP, &x)) {
+ if (ioctl(fd, DAHDI_TRANSCODE_OP, &x)) {
ast_log(LOG_ERROR, "Unable to attach transcoder: %s\n", strerror(errno));
munmap(hdr, sizeof(*hdr));
close(fd);
@@ -270,9 +269,9 @@ static int zap_translate(struct ast_trans_pvt *pvt, int dest, int source)
return -1;
}
- ztp = pvt->pvt;
- ztp->fd = fd;
- ztp->hdr = hdr;
+ dahdip = pvt->pvt;
+ dahdip->fd = fd;
+ dahdip->hdr = hdr;
switch (hdr->dstfmt) {
case AST_FORMAT_G729A:
@@ -287,9 +286,9 @@ static int zap_translate(struct ast_trans_pvt *pvt, int dest, int source)
return 0;
}
-static int zap_new(struct ast_trans_pvt *pvt)
+static int dahdi_new(struct ast_trans_pvt *pvt)
{
- return zap_translate(pvt, pvt->t->dstfmt, pvt->t->srcfmt);
+ return dahdi_translate(pvt, pvt->t->dstfmt, pvt->t->srcfmt);
}
static struct ast_frame *fakesrc_sample(void)
@@ -306,31 +305,31 @@ static struct ast_frame *fakesrc_sample(void)
static int register_translator(int dst, int src)
{
- struct translator *zt;
+ struct translator *dahdi;
int res;
- if (!(zt = ast_calloc(1, sizeof(*zt))))
+ if (!(dahdi = ast_calloc(1, sizeof(*dahdi))))
return -1;
- snprintf((char *) (zt->t.name), sizeof(zt->t.name), "zap%sto%s",
+ snprintf((char *) (dahdi->t.name), sizeof(dahdi->t.name), "DAHDI%sto%s",
ast_getformatname((1 << src)), ast_getformatname((1 << dst)));
- zt->t.srcfmt = (1 << src);
- zt->t.dstfmt = (1 << dst);
- zt->t.newpvt = zap_new;
- zt->t.framein = zap_framein;
- zt->t.frameout = zap_frameout;
- zt->t.destroy = zap_destroy;
- zt->t.sample = fakesrc_sample;
- zt->t.useplc = global_useplc;
- zt->t.buf_size = BUFFER_SAMPLES * 2;
- zt->t.desc_size = sizeof(struct pvt);
- if ((res = ast_register_translator(&zt->t))) {
- ast_free(zt);
+ dahdi->t.srcfmt = (1 << src);
+ dahdi->t.dstfmt = (1 << dst);
+ dahdi->t.newpvt = dahdi_new;
+ dahdi->t.framein = dahdi_framein;
+ dahdi->t.frameout = dahdi_frameout;
+ dahdi->t.destroy = dahdi_destroy;
+ dahdi->t.sample = fakesrc_sample;
+ dahdi->t.useplc = global_useplc;
+ dahdi->t.buf_size = BUFFER_SAMPLES * 2;
+ dahdi->t.desc_size = sizeof(struct pvt);
+ if ((res = ast_register_translator(&dahdi->t))) {
+ ast_free(dahdi);
return -1;
}
AST_LIST_LOCK(&translators);
- AST_LIST_INSERT_HEAD(&translators, zt, entry);
+ AST_LIST_INSERT_HEAD(&translators, dahdi, entry);
AST_LIST_UNLOCK(&translators);
global_format_map.map[dst][src] = 1;
@@ -386,7 +385,7 @@ static int parse_config(int reload)
for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
if (!strcasecmp(var->name, "genericplc")) {
global_useplc = ast_true(var->value);
- ast_verb(3, "codec_zap: %susing generic PLC\n",
+ ast_verb(3, "codec_dahdi: %susing generic PLC\n",
global_useplc ? "" : "not ");
}
}
@@ -417,18 +416,18 @@ static void build_translators(struct format_map *map, unsigned int dstfmts, unsi
static int find_transcoders(void)
{
- struct zt_transcode_info info = { 0, };
+ struct dahdi_transcode_info info = { 0, };
struct format_map map = { { { 0 } } };
int fd, res;
unsigned int x, y;
- if ((fd = open("/dev/zap/transcode", O_RDWR)) < 0) {
+ if ((fd = open("/dev/dahdi/transcode", O_RDWR)) < 0) {
ast_verbose(VERBOSE_PREFIX_2 "No hardware transcoders found.\n");
return 0;
}
- info.op = ZT_TCOP_GETINFO;
- for (info.tcnum = 0; !(res = ioctl(fd, ZT_TRANSCODE_OP, &info)); info.tcnum++) {
+ info.op = DAHDI_TCOP_GETINFO;
+ for (info.tcnum = 0; !(res = ioctl(fd, DAHDI_TRANSCODE_OP, &info)); info.tcnum++) {
ast_verb(2, "Found transcoder '%s'.\n", info.name);
build_translators(&map, info.dstfmts, info.srcfmts);
ast_atomic_fetchadd_int(&channels.total, info.numchannels / 2);
@@ -481,7 +480,7 @@ static int load_module(void)
return AST_MODULE_LOAD_SUCCESS;
}
-AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Generic Zaptel Transcoder Codec Translator",
+AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "Generic DAHDI Transcoder Codec Translator",
.load = load_module,
.unload = unload_module,
.reload = reload,
diff --git a/configs/extensions.ael.sample b/configs/extensions.ael.sample
index 3bc16a315..21680a4db 100644
--- a/configs/extensions.ael.sample
+++ b/configs/extensions.ael.sample
@@ -20,19 +20,19 @@
globals {
CONSOLE="Console/dsp"; // Console interface for demo
- //CONSOLE=Zap/1
+ //CONSOLE=DAHDI/1
//CONSOLE=Phone/phone0
IAXINFO=guest; // IAXtel username/password
//IAXINFO="myuser:mypass";
- TRUNK="Zap/G2"; // Trunk interface
+ TRUNK="DAHDI/G2"; // Trunk interface
//
// Note the 'G2' in the TRUNK variable above. It specifies which group (defined
- // in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
+ // in dahdi.conf) to dial, i.e. group 2, and how to choose a channel to use in
// the specified group. The four possible options are:
//
- // g: select the lowest-numbered non-busy Zap channel
+ // g: select the lowest-numbered non-busy DAHDI channel
// (aka. ascending sequential hunt group).
- // G: select the highest-numbered non-busy Zap channel
+ // G: select the highest-numbered non-busy DAHDI channel
// (aka. descending sequential hunt group).
// r: use a round-robin search, starting at the next highest channel than last
// time (aka. ascending rotary hunt group).
@@ -129,8 +129,8 @@ context ael-dundi-e164-via-pstn {
//
// If you are freely delivering calls to the PSTN, list them here
//
- //_1256428XXXX => Dial(Zap/G2/${EXTEN:7}); // Expose all of 256-428
- //_1256325XXXX => Dial(Zap/G2/${EXTEN:7}); // Ditto for 256-325
+ //_1256428XXXX => Dial(DAHDI/G2/${EXTEN:7}); // Expose all of 256-428
+ //_1256325XXXX => Dial(DAHDI/G2/${EXTEN:7}); // Ditto for 256-325
};
context ael-dundi-e164-local {
@@ -418,7 +418,7 @@ context ael-default {
// 6389 => Dial(MGCP/aaln/1@192.168.0.14);
// 6394 => Dial(Local/6275/n); // this will dial ${MARK}
-// 6275 => &ael-stdexten(6275,${MARK}); // assuming ${MARK} is something like Zap/2
+// 6275 => &ael-stdexten(6275,${MARK}); // assuming ${MARK} is something like DAHDI/2
// mark => goto 6275|1; // alias mark to 6275
// 6536 => &ael-stdexten(6236,${WIL}); // Ditto for wil
// wil => goto 6236|1;
diff --git a/configs/extensions.conf.sample b/configs/extensions.conf.sample
index 6241cddf0..71a4b204f 100644
--- a/configs/extensions.conf.sample
+++ b/configs/extensions.conf.sample
@@ -116,19 +116,19 @@ clearglobalvars=no
;
[globals]
CONSOLE=Console/dsp ; Console interface for demo
-;CONSOLE=Zap/1
+;CONSOLE=DAHDI/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
-TRUNK=Zap/G2 ; Trunk interface
+TRUNK=DAHDI/G2 ; Trunk interface
;
; Note the 'G2' in the TRUNK variable above. It specifies which group (defined
-; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
+; in dahdi.conf) to dial, i.e. group 2, and how to choose a channel to use in
; the specified group. The four possible options are:
;
-; g: select the lowest-numbered non-busy Zap channel
+; g: select the lowest-numbered non-busy DAHDI channel
; (aka. ascending sequential hunt group).
-; G: select the highest-numbered non-busy Zap channel
+; G: select the highest-numbered non-busy DAHDI channel
; (aka. descending sequential hunt group).
; r: use a round-robin search, starting at the next highest channel than last
; time (aka. ascending rotary hunt group).
@@ -225,8 +225,8 @@ TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;
; If you are freely delivering calls to the PSTN, list them here
;
-;exten => _1256428XXXX,1,Dial(Zap/G2/${EXTEN:7}) ; Expose all of 256-428
-;exten => _1256325XXXX,1,Dial(Zap/G2/${EXTEN:7}) ; Ditto for 256-325
+;exten => _1256428XXXX,1,Dial(DAHDI/G2/${EXTEN:7}) ; Expose all of 256-428
+;exten => _1256325XXXX,1,Dial(DAHDI/G2/${EXTEN:7}) ; Ditto for 256-325
[dundi-e164-local]
;
@@ -618,7 +618,7 @@ include => demo
;exten => 6394,1,Dial(Local/6275/n) ; this will dial ${MARK}
;exten => 6275,1,Gosub(stdexten,s,1(6275,${MARK}))
- ; assuming ${MARK} is something like Zap/2
+ ; assuming ${MARK} is something like DAHDI/2
;exten => 6275,n,Goto(default,s,1) ; exited Voicemail
;exten => mark,1,Goto(6275|1) ; alias mark to 6275
;exten => 6536,1,Gosub(stdexten,s,1(6236,${WIL}))
diff --git a/configs/extensions.lua.sample b/configs/extensions.lua.sample
index a6ae60ca6..8aee734b4 100644
--- a/configs/extensions.lua.sample
+++ b/configs/extensions.lua.sample
@@ -1,13 +1,13 @@
CONSOLE = "Console/dsp" -- Console interface for demo
---CONSOLE = "Zap/1"
+--CONSOLE = "DAHDI/1"
--CONSOLE = "Phone/phone0"
IAXINFO = "guest" -- IAXtel username/password
--IAXINFO = "myuser:mypass"
-TRUNK = "Zap/G2"
+TRUNK = "DAHDI/G2"
TRUNKMSD = 1
-- TRUNK = "IAX2/user:pass@provider"
@@ -92,8 +92,8 @@ TRUNKMSD = 1
--
-- Dialplan applications can be accessed through the global 'app' table.
--
--- app.Dial("Zap/1")
--- app.dial("Zap/1")
+-- app.Dial("DAHDI/1")
+-- app.dial("DAHDI/1")
--
-- More examples can be found below.
--
@@ -106,7 +106,7 @@ TRUNKMSD = 1
--
function outgoing_local(c, e)
- app.dial("zap/1/" .. e, "", "")
+ app.dial("DAHDI/1/" .. e, "", "")
end
function demo_instruct()
diff --git a/configs/meetme.conf.sample b/configs/meetme.conf.sample
index a28c5d3c9..3eb3a82a5 100644
--- a/configs/meetme.conf.sample
+++ b/configs/meetme.conf.sample
@@ -5,7 +5,7 @@
[general]
;audiobuffers=32 ; The number of 20ms audio buffers to be used
- ; when feeding audio frames from non-Zap channels
+ ; when feeding audio frames from non-DAHDI channels
; into the conference; larger numbers will allow
; for the conference to 'de-jitter' audio that arrives
; at different timing than the conference's timing
diff --git a/configs/muted.conf.sample b/configs/muted.conf.sample
index a5e869b99..15c7409d9 100644
--- a/configs/muted.conf.sample
+++ b/configs/muted.conf.sample
@@ -25,8 +25,8 @@ pass pass
#
# List each channel we're supposed to watch
#
-channel Zap/1
-channel Zap/2
+channel DAHDI/1
+channel DAHDI/2
channel SIP/mark
#
# Mute level is the percentage of the current volume we should
diff --git a/configs/queues.conf.sample b/configs/queues.conf.sample
index f20f48c23..643cbab8c 100644
--- a/configs/queues.conf.sample
+++ b/configs/queues.conf.sample
@@ -401,9 +401,9 @@ shared_lastcall=no
; must also preload pbx_config.so (or pbx_ael.so, pbx_lua.so, or
; pbx_realtime.so, depending on how your dialplan is configured).
;
-;member => Zap/1
-;member => Zap/2,10
-;member => Zap/3,10,Bob Johnson
+;member => DAHDI/1
+;member => DAHDI/2,10
+;member => DAHDI/3,10,Bob Johnson
;member => Agent/1001
;member => Agent/1002
;member => Local/1000@default,0,John Smith,SIP/1000
diff --git a/configs/rpt.conf.sample b/configs/rpt.conf.sample
index 6aee784dc..823672438 100644
--- a/configs/rpt.conf.sample
+++ b/configs/rpt.conf.sample
@@ -4,10 +4,10 @@
;[000] ; Node ID of first repeater
-;rxchannel = Zap/1 ; Rx audio/signalling channel
+;rxchannel = DAHDI/1 ; Rx audio/signalling channel
; Note: if you use a unified interface (tx/rx on one channel), only
; specify the rxchannel and the txchannel will be assumed from the rxchannel
-;txchannel = Zap/2 ; Tx audio/signalling channel
+;txchannel = DAHDI/2 ; Tx audio/signalling channel
;duplex = 2 ; (Optional) set duplex operating mode
;; 0 = half duplex (telemetry and courtesy tones do not transmit)
;; 1 = semi-half duplex (telemetry and courtesy tones transmit, but not
@@ -51,10 +51,10 @@
;[001] ; Node ID of first repeater
-;rxchannel = Zap/3 ; Rx audio/signalling channel
+;rxchannel = DAHDI/3 ; Rx audio/signalling channel
; Note: if you use a unified interface (tx/rx on one channel), only
; specify the rxchannel and the txchannel will be assumed from the rxchannel
-;txchannel = Zap/4 ; Tx audio/signalling channel
+;txchannel = DAHDI/4 ; Tx audio/signalling channel
;functions = functions-repeater ; DTMF function list
;; specify this for a different function list then local when on link
;;link_functions = functions-different ; DTMF function list for link
@@ -81,10 +81,10 @@
;[002] ; Node ID of remote base
-;rxchannel = Zap/5 ; Rx audio/signalling channel
+;rxchannel = DAHDI/5 ; Rx audio/signalling channel
; Note: if you use a unified interface (tx/rx on one channel), only
; specify the rxchannel and the txchannel will be assumed from the rxchannel
-;txchannel = Zap/6 ; Tx audio/signalling channel
+;txchannel = DAHDI/6 ; Tx audio/signalling channel
;functions = functions-remote
;remote = ft897 ; Set remote=y for dumb remote or
; remote=ft897 for Yaesu FT-897 or
diff --git a/configs/sla.conf.sample b/configs/sla.conf.sample
index 75acc2bc4..3ae9dffac 100644
--- a/configs/sla.conf.sample
+++ b/configs/sla.conf.sample
@@ -21,15 +21,15 @@
;type=trunk ; This line is what marks this entry as a trunk.
-;device=Zap/3 ; Map this trunk declaration to a specific device.
+;device=DAHDI/3 ; Map this trunk declaration to a specific device.
; NOTE: You can not just put any type of channel here.
- ; Zap channels can be directly used. IP trunks
+ ; DAHDI channels can be directly used. IP trunks
; require some indirect configuration which is
; described in doc/asterisk.pdf.
;autocontext=line1 ; This supports automatic generation of the dialplan entries
; if the autocontext option is used. Each trunk should have
- ; a unique context name. Then, in zapata.conf, this device
+ ; a unique context name. Then, in dahdi.conf, this device
; should be configured to have incoming calls go to this context.
;ringtimeout=30 ; Set how long to allow this trunk to ring on an inbound call before hanging
@@ -49,12 +49,12 @@
;[line2]
;type=trunk
-;device=Zap/4
+;device=DAHDI/4
;autocontext=line2
;[line3]
;type=trunk
-;device=Zap/3
+;device=DAHDI/3
;autocontext=line3
;[line4]
diff --git a/configs/smdi.conf.sample b/configs/smdi.conf.sample
index 669530e81..464f92134 100644
--- a/configs/smdi.conf.sample
+++ b/configs/smdi.conf.sample
@@ -2,7 +2,7 @@
[interfaces]
; Specify serial ports to listen for SMDI messages on below. These will be
-; referenced later in zapata.conf. If you do not specify any interfaces then
+; referenced later in dahdi.conf. If you do not specify any interfaces then
; SMDI will be disabled. Interfaces can have several different attributes
; associated with them.
diff --git a/configs/users.conf.sample b/configs/users.conf.sample
index 2a816d7e4..11ec54a54 100644
--- a/configs/users.conf.sample
+++ b/configs/users.conf.sample
@@ -68,7 +68,7 @@ pickupgroup = 1
;fullname = Joe User
;email = joe@foo.bar
;secret = 1234
-;zapchan = 1
+;dahdichan = 1
;hasvoicemail = yes
;vmsecret = 1234
;hassip = yes
diff --git a/configs/vpb.conf.sample b/configs/vpb.conf.sample
index bcda655de..d1c06e1be 100644
--- a/configs/vpb.conf.sample
+++ b/configs/vpb.conf.sample
@@ -97,7 +97,7 @@ echocancel=off
;
; NOTE that other caller ID standards are supported in Asterisk, but are
; not yet active in chan_vpb. It should be reasonably trivial to add
-; support for the other standards (see the default zapata.conf for a list
+; support for the other standards (see the default dahdi.conf for a list
; of them) that Asterisk already handles.
;
callerid=bell
diff --git a/configs/zapata.conf.sample b/configs/zapata.conf.sample
index 8ddb7a517..f08bca9ab 100644
--- a/configs/zapata.conf.sample
+++ b/configs/zapata.conf.sample
@@ -1,10 +1,10 @@
;
-; Zapata telephony interface
+; DAHDI telephony
;
; Configuration file
;
-; You need to restart Asterisk to re-configure the Zap channel
-; CLI> reload chan_zap.so
+; You need to restart Asterisk to re-configure the DAHDI channel
+; CLI> reload chan_dahdi.so
; will reload the configuration file,
; but not all configuration options are
; re-configured during a reload (signalling, as well as
@@ -30,7 +30,7 @@
; trunkgroup => <trunkgroup>,<dchannel>[,<backup1>...]
;
; trunkgroup is the numerical trunk group to create
-; dchannel is the zap channel which will have the
+; dchannel is the DAHDI channel which will have the
; d-channel for the trunk.
; backup1 is an optional list of backup d-channels.
;
@@ -38,9 +38,9 @@
;trunkgroup => 1,24
;
; Spanmap: Associates a span with a trunk group
-; spanmap => <zapspan>,<trunkgroup>[,<logicalspan>]
+; spanmap => <dahdispan>,<trunkgroup>[,<logicalspan>]
;
-; zapspan is the zap span number to associate
+; dahdispan is the DAHDI span number to associate
; trunkgroup is the trunkgroup (specified above) for the mapping
; logicalspan is the logical span number within the trunk group to use.
; if unspecified, no logical span number is used.
@@ -208,7 +208,7 @@
; pritimer cannot be changed on a reload.
;
; Signalling method. The default is "auto". Valid values:
-; auto: Use the current value from Zaptel.
+; auto: Use the current value from DAHDI.
; em: E & M
; em_e1: E & M E1
; em_w: E & M Wink
@@ -286,8 +286,8 @@
;
; A variety of timing parameters can be specified as well
; The default values for those are "-1", which is to use the
-; compile-time defaults of the Zaptel kernel modules. The timing
-; parameters, (with the standard default from Zaptel):
+; compile-time defaults of the DAHDI kernel modules. The timing
+; parameters, (with the standard default from DAHDI):
;
; prewink: Pre-wink time (default 50ms)
; preflash: Pre-flash time (default 50ms)
@@ -364,7 +364,7 @@ usecallerid=yes
; first is the corresponding mailbox, and the second is 1 or 0, indicating if
; there are messages waiting or not.
;
-;mwimonitornotify=/usr/local/bin/zapnotify.sh
+;mwimonitornotify=/usr/local/bin/dahdinotify.sh
;
; Whether or not to enable call waiting on internal extensions
; With this set to 'yes', busy extensions will hear the call-waiting
@@ -450,23 +450,23 @@ callreturn=yes
; Note that when setting the number of taps, the number 256 does not translate
; to 256 ms of echo cancellation. echocancel=256 means 256 / 8 = 32 ms.
;
-; Note that if any of your Zaptel cards have hardware echo cancellers,
+; Note that if any of your DAHDI cards have hardware echo cancellers,
; then this setting only turns them on and off; numeric settings will
; be treated as "yes". There are no special settings required for
; hardware echo cancellers; when present and enabled in their kernel
; modules, they take precedence over the software echo canceller compiled
-; into Zaptel automatically.
+; into DAHDI automatically.
;
;
echocancel=yes
;
-; As of Zaptel 1.4.8, some Zaptel echo cancellers (software and hardware)
+; As of Zaptel 1.4.8, some DAHDI echo cancellers (software and hardware)
; support adjustable parameters; these parameters can be supplied as
; additional options to the 'echocancel' setting. Note that Asterisk
; does not attempt to validate the parameters or their values, so if you
; supply an invalid parameter you will not know the specific reason it
; failed without checking the kernel message log for the error(s)
-; put there by Zaptel.
+; put there by DAHDI.
;
;echocancel=128,param1=32,param2=0,param3=14
;
@@ -478,7 +478,7 @@ echocancelwhenbridged=yes
;
; In some cases, the echo canceller doesn't train quickly enough and there
; is echo at the beginning of the call. Enabling echo training will cause
-; Zaptel to briefly mute the channel, send an impulse, and use the impulse
+; DAHDI to briefly mute the channel, send an impulse, and use the impulse
; response to pre-train the echo canceller so it can start out with a much
; closer idea of the actual echo. Value may be "yes", "no", or a number of
; milliseconds to delay before training (default = 400)
@@ -566,9 +566,9 @@ pickupgroup=1
;
;callerid = asreceived
;
-; should we use the caller ID from incoming call on zap transfer?
+; should we use the caller ID from incoming call on DAHDI transfer?
;
-;useincomingcalleridonzaptransfer = yes
+;useincomingcalleridondahditransfer = yes
;
; AMA flags affects the recording of Call Detail Records. If specified
; it may be 'default', 'omit', 'billing', or 'documentation'.
@@ -665,14 +665,14 @@ pickupgroup=1
;progzone=uk
;
; Set the tonezone. Equivalent of the defaultzone settings in
-; /etc/zaptel.conf . This sets the tone zone by number.
-; Note that you'd still need to load tonezones (loadzone in zaptel.conf).
+; /etc/dahdi.conf . This sets the tone zone by number.
+; Note that you'd still need to load tonezones (loadzone in dahdi.conf).
; The default is -1: not to set anything.
;tonezone = 0 ; 0 is US
;
; FXO (FXS signalled) devices must have a timeout to determine if there was a
; hangup before the line was answered. This value can be tweaked to shorten
-; how long it takes before Zap considers a non-ringing line to have hungup.
+; how long it takes before DAHDI considers a non-ringing line to have hungup.
;
; ringtimeout will not update on a reload.
;
@@ -708,7 +708,7 @@ pickupgroup=1
;mohsuggest=default
;
; PRI channels can have an idle extension and a minunused number. So long as
-; at least "minunused" channels are idle, chan_zap will try to call "idledial"
+; at least "minunused" channels are idle, chan_dahdi will try to call "idledial"
; on them, and then dump them into the PBX in the "idleext" extension (which
; is of the form exten@context). When channels are needed the "idle" calls
; are disconnected (so long as there are at least "minidle" calls still
@@ -724,17 +724,17 @@ pickupgroup=1
;minunused=2
;minidle=1
;
-; Configure jitter buffers in Zapata (each one is 20ms, default is 4)
+; Configure jitter buffers in DAHDI (each one is 20ms, default is 4)
; This is set globally, rather than per-channel.
;
;jitterbuffers=4
;
;------------------------------ JITTER BUFFER CONFIGURATION --------------------------
; jbenable = yes ; Enables the use of a jitterbuffer on the receiving side of a
- ; ZAP channel. Defaults to "no". An enabled jitterbuffer will
+ ; DAHDI channel. Defaults to "no". An enabled jitterbuffer will
; be used only if the sending side can create and the receiving
- ; side can not accept jitter. The ZAP channel can't accept jitter,
- ; thus an enabled jitterbuffer on the receive ZAP side will always
+ ; side can not accept jitter. The DAHDI channel can't accept jitter,
+ ; thus an enabled jitterbuffer on the receive DAHDI side will always
; be used if the sending side can create jitter.
; jbmaxsize = 200 ; Max length of the jitterbuffer in milliseconds.
@@ -744,7 +744,7 @@ pickupgroup=1
; big jumps in/broken timestamps, usually sent from exotic devices
; and programs. Defaults to 1000.
-; jbimpl = fixed ; Jitterbuffer implementation, used on the receiving side of a ZAP
+; jbimpl = fixed ; Jitterbuffer implementation, used on the receiving side of a DAHDI
; channel. Two implementations are currently available - "fixed"
; (with size always equals to jbmax-size) and "adaptive" (with
; variable size, actually the new jb of IAX2). Defaults to fixed.
@@ -928,15 +928,15 @@ pickupgroup=1
; Configuration Sections
; ~~~~~~~~~~~~~~~~~~~~~~
-; You can also configure channels in a separate zapata.conf section. In
+; You can also configure channels in a separate dahdi.conf section. In
; this case the keyword 'channel' is not used. Instead the keyword
-; 'zapchan' is used (as in users.conf) - configuration is only processed
-; in a section where the keyword zapchan is used. It will only be
+; 'dahdichan' is used (as in users.conf) - configuration is only processed
+; in a section where the keyword dahdichan is used. It will only be
; processed in the end of the section. Thus the following section:
;
;[phones]
;echocancel = 64
-;zapchan = 1-8
+;dahdichan = 1-8
;group = 1
;
; Is somewhat equivalent to the following snippet in the section
@@ -948,7 +948,7 @@ pickupgroup=1
;
; When starting a new section almost all of the configuration values are
; copied from their values at the end of the section [channels] in
-; zapata.conf and [general] in users.conf - one section's configuration
+; dahdi.conf and [general] in users.conf - one section's configuration
; does not affect another one's.
;
; Instead of letting common configuration values "slide through" you can
@@ -966,16 +966,16 @@ pickupgroup=1
;faxdetect = incoming
;
;[phone-1](phones)
-;zapchan = 1
+;dahdichan = 1
;callerid = My Name <501>
;mailbox = 501@mailboxes
;
;
;[fax](phones)
-;zapchan = 2
+;dahdichan = 2
;faxdetect = no
;context = fax
;
;[phone-3](phones)
-;zapchan = 3
+;dahdichan = 3
;pickupgroup = 3,4
diff --git a/configure b/configure
index 3fe8da33e..987fe0f33 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac Revision: 119826 .
+# From configure.ac Revision: 118608 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for asterisk 1.6.
#
@@ -744,6 +744,10 @@ CRYPTO_LIB
CRYPTO_INCLUDE
CRYPTO_DIR
PBX_CRYPTO
+DAHDI_LIB
+DAHDI_INCLUDE
+DAHDI_DIR
+PBX_DAHDI
FFMPEG_LIB
FFMPEG_INCLUDE
FFMPEG_DIR
@@ -848,10 +852,6 @@ PRI_LIB
PRI_INCLUDE
PRI_DIR
PBX_PRI
-SPANDSP_LIB
-SPANDSP_INCLUDE
-SPANDSP_DIR
-PBX_SPANDSP
SS7_LIB
SS7_INCLUDE
SS7_DIR
@@ -876,14 +876,6 @@ SDL_IMAGE_LIB
SDL_IMAGE_INCLUDE
SDL_IMAGE_DIR
PBX_SDL_IMAGE
-SACLM_LIB
-SACLM_INCLUDE
-SACLM_DIR
-PBX_SACLM
-SAEVT_LIB
-SAEVT_INCLUDE
-SAEVT_DIR
-PBX_SAEVT
SPEEX_LIB
SPEEX_INCLUDE
SPEEX_DIR
@@ -944,10 +936,6 @@ ZLIB_LIB
ZLIB_INCLUDE
ZLIB_DIR
PBX_ZLIB
-ZAPTEL_LIB
-ZAPTEL_INCLUDE
-ZAPTEL_DIR
-PBX_ZAPTEL
ALLOCA
LIBOBJS
POW_LIB
@@ -977,12 +965,6 @@ OPENH323_SUFFIX
OPENH323_BUILD
PBX_SPEEX_PREPROCESS
CONFIG_GMIME
-PBX_ZAPTEL_VLDTMF
-PBX_ZAPTEL_ECHOCANPARAMS
-PBX_ZAPTEL_TRANSCODE
-PBX_ZAPTEL_HWGAIN
-PBX_ZAPTEL_NEONMWI
-PBX_ZAPTEL_SIG_MTP2
EDITLINE_LIB
PBX_H323
PBX_IXJUSER
@@ -1592,6 +1574,7 @@ Optional Packages:
--with-curl=PATH use cURL files in PATH
--with-curses=PATH use curses files in PATH
--with-crypto=PATH use OpenSSL Cryptography support files in PATH
+ --with-dahdi=PATH use DAHDI files in PATH
--with-avcodec=PATH use Ffmpeg and avcodec library files in PATH
--with-gsm=PATH use External GSM library files in PATH , use
'internal' GSM otherwise
@@ -1619,15 +1602,12 @@ Optional Packages:
--with-popt=PATH use popt files in PATH
--with-portaudio=PATH use PortAudio files in PATH
--with-pri=PATH use ISDN PRI files in PATH
- --with-spandsp=PATH use SPANDSP files in PATH
--with-ss7=PATH use ISDN SS7 files in PATH
--with-pwlib=PATH use PWlib files in PATH
--with-h323=PATH use OpenH323 files in PATH
--with-radius=PATH use Radius Client files in PATH
--with-sdl=PATH use Sdl files in PATH
--with-SDL_image=PATH use Sdl Image library files in PATH
- --with-SaClm=PATH use SAForum AIS CLM files in PATH
- --with-SaEvt=PATH use SAForum AIS EVT files in PATH
--with-speex=PATH use Speex files in PATH
--with-speexdsp=PATH use Speexdsp files in PATH
--with-sqlite=PATH use SQLite files in PATH
@@ -1644,7 +1624,6 @@ Optional Packages:
--with-vpb=PATH use Voicetronix API files in PATH
--with-x11=PATH use X11 support files in PATH
--with-z=PATH use zlib files in PATH
- --with-zaptel=PATH use Zaptel files in PATH
Some influential environment variables:
CC C compiler command
@@ -8069,6 +8048,34 @@ fi
+ DAHDI_DESCRIP="DAHDI"
+ DAHDI_OPTION="dahdi"
+
+# Check whether --with-dahdi was given.
+if test "${with_dahdi+set}" = set; then
+ withval=$with_dahdi;
+ case ${withval} in
+ n|no)
+ USE_DAHDI=no
+ ;;
+ y|ye|yes)
+ ac_mandatory_list="${ac_mandatory_list} DAHDI"
+ ;;
+ *)
+ DAHDI_DIR="${withval}"
+ ac_mandatory_list="${ac_mandatory_list} DAHDI"
+ ;;
+ esac
+
+fi
+
+ PBX_DAHDI=0
+
+
+
+
+
+
FFMPEG_DESCRIP="Ffmpeg and avcodec library"
FFMPEG_OPTION="avcodec"
@@ -8797,34 +8804,6 @@ fi
- SPANDSP_DESCRIP="SPANDSP"
- SPANDSP_OPTION="spandsp"
-
-# Check whether --with-spandsp was given.
-if test "${with_spandsp+set}" = set; then
- withval=$with_spandsp;
- case ${withval} in
- n|no)
- USE_SPANDSP=no
- ;;
- y|ye|yes)
- ac_mandatory_list="${ac_mandatory_list} SPANDSP"
- ;;
- *)
- SPANDSP_DIR="${withval}"
- ac_mandatory_list="${ac_mandatory_list} SPANDSP"
- ;;
- esac
-
-fi
-
- PBX_SPANDSP=0
-
-
-
-
-
-
SS7_DESCRIP="ISDN SS7"
SS7_OPTION="ss7"
@@ -8993,62 +8972,6 @@ fi
- SACLM_DESCRIP="SAForum AIS CLM"
- SACLM_OPTION="SaClm"
-
-# Check whether --with-SaClm was given.
-if test "${with_SaClm+set}" = set; then
- withval=$with_SaClm;
- case ${withval} in
- n|no)
- USE_SACLM=no
- ;;
- y|ye|yes)
- ac_mandatory_list="${ac_mandatory_list} SACLM"
- ;;
- *)
- SACLM_DIR="${withval}"
- ac_mandatory_list="${ac_mandatory_list} SACLM"
- ;;
- esac
-
-fi
-
- PBX_SACLM=0
-
-
-
-
-
-
- SAEVT_DESCRIP="SAForum AIS EVT"
- SAEVT_OPTION="SaEvt"
-
-# Check whether --with-SaEvt was given.
-if test "${with_SaEvt+set}" = set; then
- withval=$with_SaEvt;
- case ${withval} in
- n|no)
- USE_SAEVT=no
- ;;
- y|ye|yes)
- ac_mandatory_list="${ac_mandatory_list} SAEVT"
- ;;
- *)
- SAEVT_DIR="${withval}"
- ac_mandatory_list="${ac_mandatory_list} SAEVT"
- ;;
- esac
-
-fi
-
- PBX_SAEVT=0
-
-
-
-
-
-
SPEEX_DESCRIP="Speex"
SPEEX_OPTION="speex"
@@ -9469,34 +9392,6 @@ fi
- ZAPTEL_DESCRIP="Zaptel"
- ZAPTEL_OPTION="zaptel"
-
-# Check whether --with-zaptel was given.
-if test "${with_zaptel+set}" = set; then
- withval=$with_zaptel;
- case ${withval} in
- n|no)
- USE_ZAPTEL=no
- ;;
- y|ye|yes)
- ac_mandatory_list="${ac_mandatory_list} ZAPTEL"
- ;;
- *)
- ZAPTEL_DIR="${withval}"
- ac_mandatory_list="${ac_mandatory_list} ZAPTEL"
- ;;
- esac
-
-fi
-
- PBX_ZAPTEL=0
-
-
-
-
-
-
# check for basic system features and functionality before
# checking for package libraries
@@ -19013,6 +18908,83 @@ fi
fi
+
+ if test "x${PBX_DAHDI}" != "x1"; then
+ { echo "$as_me:$LINENO: checking for DAHDI_CODE in dahdi/user.h" >&5
+echo $ECHO_N "checking for DAHDI_CODE in dahdi/user.h... $ECHO_C" >&6; }
+ saved_cppflags="${CPPFLAGS}"
+ if test "x${DAHDI_DIR}" != "x"; then
+ DAHDI_INCLUDE="-I${DAHDI_DIR}/include"
+ fi
+ CPPFLAGS="${CPPFLAGS} ${DAHDI_INCLUDE}"
+
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <dahdi/user.h>
+int
+main ()
+{
+#if defined(DAHDI_CODE)
+ int foo = 0;
+ #else
+ int foo = bar;
+ #endif
+ 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+ PBX_DAHDI=1
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_DAHDI 1
+_ACEOF
+
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_DAHDI_VERSION
+_ACEOF
+
+
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CPPFLAGS="${saved_cppflags}"
+ fi
+
+
+
# BSD might not have exp2, and/or log2
if test "x${PBX_EXP2L}" != "x1" -a "${USE_EXP2L}" != "no"; then
@@ -38934,356 +38906,6 @@ fi
- if test "x${PBX_SPANDSP}" != "x1" -a "${USE_SPANDSP}" != "no"; then
- { echo "$as_me:$LINENO: checking if \"
- #if SPANDSP_RELEASE_DATE < 20080516
- #error \"spandsp 0.0.5 or greater is required\"
- #endif
- \" compiles using spandsp/version.h" >&5
-echo $ECHO_N "checking if \"
- #if SPANDSP_RELEASE_DATE < 20080516
- #error \"spandsp 0.0.5 or greater is required\"
- #endif
- \" compiles using spandsp/version.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${SPANDSP_DIR}" != "x"; then
- SPANDSP_INCLUDE="-I${SPANDSP_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${SPANDSP_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <spandsp/version.h>
-int
-main ()
-{
-
- #if SPANDSP_RELEASE_DATE < 20080516
- #error "spandsp 0.0.5 or greater is required"
- #endif
- ;
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_SPANDSP=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SPANDSP 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SPANDSP_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-if test "x${PBX_SPANDSP}" = "x1" ; then
- # We found the correct version in the header, now let's make sure it links
- # properly, and that libtiff is available
- PBX_SPANDSP=0
-
-if test "x${PBX_SPANDSP}" != "x1" -a "${USE_SPANDSP}" != "no"; then
- pbxlibdir=""
- # if --with-SPANDSP=DIR has been specified, use it.
- if test "x${SPANDSP_DIR}" != "x"; then
- if test -d ${SPANDSP_DIR}/lib; then
- pbxlibdir="-L${SPANDSP_DIR}/lib"
- else
- pbxlibdir="-L${SPANDSP_DIR}"
- fi
- fi
- pbxfuncname="span_set_message_handler"
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_SPANDSP_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_spandsp_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lspandsp" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lspandsp... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lspandsp ${pbxlibdir} -ltiff $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_SPANDSP_FOUND=yes
-else
- AST_SPANDSP_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_SPANDSP_FOUND}" = "yes"; then
- SPANDSP_LIB="${pbxlibdir} -lspandsp -ltiff"
- # if --with-SPANDSP=DIR has been specified, use it.
- if test "x${SPANDSP_DIR}" != "x"; then
- SPANDSP_INCLUDE="-I${SPANDSP_DIR}/include"
- fi
- SPANDSP_INCLUDE="${SPANDSP_INCLUDE} "
- if test "xspandsp.h" = "x" ; then # no header, assume found
- SPANDSP_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${SPANDSP_INCLUDE} "
- if test "${ac_cv_header_spandsp_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for spandsp.h" >&5
-echo $ECHO_N "checking for spandsp.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_spandsp_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_spandsp_h" >&5
-echo "${ECHO_T}$ac_cv_header_spandsp_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking spandsp.h usability" >&5
-echo $ECHO_N "checking spandsp.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <spandsp.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking spandsp.h presence" >&5
-echo $ECHO_N "checking spandsp.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <spandsp.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: spandsp.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: spandsp.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: spandsp.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: spandsp.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: spandsp.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: spandsp.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: spandsp.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: spandsp.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: spandsp.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: spandsp.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: spandsp.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for spandsp.h" >&5
-echo $ECHO_N "checking for spandsp.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_spandsp_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_spandsp_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_spandsp_h" >&5
-echo "${ECHO_T}$ac_cv_header_spandsp_h" >&6; }
-
-fi
-if test $ac_cv_header_spandsp_h = yes; then
- SPANDSP_HEADER_FOUND=1
-else
- SPANDSP_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${SPANDSP_HEADER_FOUND}" = "x0" ; then
- SPANDSP_LIB=""
- SPANDSP_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- SPANDSP_LIB=""
- fi
- PBX_SPANDSP=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SPANDSP 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SPANDSP_VERSION
-_ACEOF
-
- fi
- fi
-fi
-
-fi
-
-
if test "x${PBX_SS7}" != "x1" -a "${USE_SS7}" != "no"; then
pbxlibdir=""
# if --with-SS7=DIR has been specified, use it.
@@ -42119,529 +41741,6 @@ fi
-if test "x${PBX_SACLM}" != "x1" -a "${USE_SACLM}" != "no"; then
- pbxlibdir=""
- # if --with-SACLM=DIR has been specified, use it.
- if test "x${SACLM_DIR}" != "x"; then
- if test -d ${SACLM_DIR}/lib; then
- pbxlibdir="-L${SACLM_DIR}/lib"
- else
- pbxlibdir="-L${SACLM_DIR}"
- fi
- fi
- pbxfuncname="saClmInitialize"
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_SACLM_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_SaClm_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lSaClm" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lSaClm... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lSaClm ${pbxlibdir} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_SACLM_FOUND=yes
-else
- AST_SACLM_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_SACLM_FOUND}" = "yes"; then
- SACLM_LIB="${pbxlibdir} -lSaClm "
- # if --with-SACLM=DIR has been specified, use it.
- if test "x${SACLM_DIR}" != "x"; then
- SACLM_INCLUDE="-I${SACLM_DIR}/include"
- fi
- SACLM_INCLUDE="${SACLM_INCLUDE} "
- if test "xopenais/saClm.h" = "x" ; then # no header, assume found
- SACLM_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${SACLM_INCLUDE} "
- if test "${ac_cv_header_openais_saClm_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for openais/saClm.h" >&5
-echo $ECHO_N "checking for openais/saClm.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_openais_saClm_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_openais_saClm_h" >&5
-echo "${ECHO_T}$ac_cv_header_openais_saClm_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking openais/saClm.h usability" >&5
-echo $ECHO_N "checking openais/saClm.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <openais/saClm.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking openais/saClm.h presence" >&5
-echo $ECHO_N "checking openais/saClm.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <openais/saClm.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: openais/saClm.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: openais/saClm.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: openais/saClm.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: openais/saClm.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: openais/saClm.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: openais/saClm.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: openais/saClm.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saClm.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: openais/saClm.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for openais/saClm.h" >&5
-echo $ECHO_N "checking for openais/saClm.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_openais_saClm_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_openais_saClm_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_openais_saClm_h" >&5
-echo "${ECHO_T}$ac_cv_header_openais_saClm_h" >&6; }
-
-fi
-if test $ac_cv_header_openais_saClm_h = yes; then
- SACLM_HEADER_FOUND=1
-else
- SACLM_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${SACLM_HEADER_FOUND}" = "x0" ; then
- SACLM_LIB=""
- SACLM_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- SACLM_LIB=""
- fi
- PBX_SACLM=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SACLM 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SACLM_VERSION
-_ACEOF
-
- fi
- fi
-fi
-
-
-if test "x${PBX_SAEVT}" != "x1" -a "${USE_SAEVT}" != "no"; then
- pbxlibdir=""
- # if --with-SAEVT=DIR has been specified, use it.
- if test "x${SAEVT_DIR}" != "x"; then
- if test -d ${SAEVT_DIR}/lib; then
- pbxlibdir="-L${SAEVT_DIR}/lib"
- else
- pbxlibdir="-L${SAEVT_DIR}"
- fi
- fi
- pbxfuncname="saEvtInitialize"
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_SAEVT_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_SaEvt_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lSaEvt" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lSaEvt... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lSaEvt ${pbxlibdir} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_SAEVT_FOUND=yes
-else
- AST_SAEVT_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_SAEVT_FOUND}" = "yes"; then
- SAEVT_LIB="${pbxlibdir} -lSaEvt "
- # if --with-SAEVT=DIR has been specified, use it.
- if test "x${SAEVT_DIR}" != "x"; then
- SAEVT_INCLUDE="-I${SAEVT_DIR}/include"
- fi
- SAEVT_INCLUDE="${SAEVT_INCLUDE} "
- if test "xopenais/saEvt.h" = "x" ; then # no header, assume found
- SAEVT_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${SAEVT_INCLUDE} "
- if test "${ac_cv_header_openais_saEvt_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for openais/saEvt.h" >&5
-echo $ECHO_N "checking for openais/saEvt.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_openais_saEvt_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_openais_saEvt_h" >&5
-echo "${ECHO_T}$ac_cv_header_openais_saEvt_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking openais/saEvt.h usability" >&5
-echo $ECHO_N "checking openais/saEvt.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <openais/saEvt.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking openais/saEvt.h presence" >&5
-echo $ECHO_N "checking openais/saEvt.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <openais/saEvt.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: openais/saEvt.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: openais/saEvt.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: openais/saEvt.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: openais/saEvt.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: openais/saEvt.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: openais/saEvt.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: openais/saEvt.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: openais/saEvt.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: openais/saEvt.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for openais/saEvt.h" >&5
-echo $ECHO_N "checking for openais/saEvt.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_openais_saEvt_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_openais_saEvt_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_openais_saEvt_h" >&5
-echo "${ECHO_T}$ac_cv_header_openais_saEvt_h" >&6; }
-
-fi
-if test $ac_cv_header_openais_saEvt_h = yes; then
- SAEVT_HEADER_FOUND=1
-else
- SAEVT_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${SAEVT_HEADER_FOUND}" = "x0" ; then
- SAEVT_LIB=""
- SAEVT_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- SAEVT_LIB=""
- fi
- PBX_SAEVT=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SAEVT 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SAEVT_VERSION
-_ACEOF
-
- fi
- fi
-fi
-
-
-
if test "x${PBX_SPEEX}" != "x1" -a "${USE_SPEEX}" != "no"; then
pbxlibdir=""
# if --with-SPEEX=DIR has been specified, use it.
@@ -45843,23 +44942,23 @@ fi
TONEZONE_INCLUDE="-I${TONEZONE_DIR}/include"
fi
TONEZONE_INCLUDE="${TONEZONE_INCLUDE} "
- if test "xzaptel/tonezone.h" = "x" ; then # no header, assume found
+ if test "xdahdi/tonezone.h" = "x" ; then # no header, assume found
TONEZONE_HEADER_FOUND="1"
else # check for the header
saved_cppflags="${CPPFLAGS}"
CPPFLAGS="${CPPFLAGS} ${TONEZONE_INCLUDE} "
- if test "${ac_cv_header_zaptel_tonezone_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel/tonezone.h" >&5
-echo $ECHO_N "checking for zaptel/tonezone.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_tonezone_h+set}" = set; then
+ if test "${ac_cv_header_dahdi_tonezone_h+set}" = set; then
+ { echo "$as_me:$LINENO: checking for dahdi/tonezone.h" >&5
+echo $ECHO_N "checking for dahdi/tonezone.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_dahdi_tonezone_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_tonezone_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_tonezone_h" >&6; }
+{ echo "$as_me:$LINENO: result: $ac_cv_header_dahdi_tonezone_h" >&5
+echo "${ECHO_T}$ac_cv_header_dahdi_tonezone_h" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel/tonezone.h usability" >&5
-echo $ECHO_N "checking zaptel/tonezone.h usability... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking dahdi/tonezone.h usability" >&5
+echo $ECHO_N "checking dahdi/tonezone.h usability... $ECHO_C" >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -45867,7 +44966,7 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-#include <zaptel/tonezone.h>
+#include <dahdi/tonezone.h>
_ACEOF
rm -f conftest.$ac_objext
if { (ac_try="$ac_compile"
@@ -45899,15 +44998,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
echo "${ECHO_T}$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel/tonezone.h presence" >&5
-echo $ECHO_N "checking zaptel/tonezone.h presence... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking dahdi/tonezone.h presence" >&5
+echo $ECHO_N "checking dahdi/tonezone.h presence... $ECHO_C" >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <zaptel/tonezone.h>
+#include <dahdi/tonezone.h>
_ACEOF
if { (ac_try="$ac_cpp conftest.$ac_ext"
case "(($ac_try" in
@@ -45940,25 +45039,25 @@ echo "${ECHO_T}$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: proceeding with the compiler's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/tonezone.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel/tonezone.h: in the future, the compiler will take precedence" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: present but cannot be compiled" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: dahdi/tonezone.h: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: dahdi/tonezone.h: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to www.asterisk.org ##
@@ -45967,18 +45066,18 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for zaptel/tonezone.h" >&5
-echo $ECHO_N "checking for zaptel/tonezone.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_tonezone_h+set}" = set; then
+{ echo "$as_me:$LINENO: checking for dahdi/tonezone.h" >&5
+echo $ECHO_N "checking for dahdi/tonezone.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_dahdi_tonezone_h+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_cv_header_zaptel_tonezone_h=$ac_header_preproc
+ ac_cv_header_dahdi_tonezone_h=$ac_header_preproc
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_tonezone_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_tonezone_h" >&6; }
+{ echo "$as_me:$LINENO: result: $ac_cv_header_dahdi_tonezone_h" >&5
+echo "${ECHO_T}$ac_cv_header_dahdi_tonezone_h" >&6; }
fi
-if test $ac_cv_header_zaptel_tonezone_h = yes; then
+if test $ac_cv_header_dahdi_tonezone_h = yes; then
TONEZONE_HEADER_FOUND=1
else
TONEZONE_HEADER_FOUND=0
@@ -46003,269 +45102,7 @@ _ACEOF
cat >>confdefs.h <<_ACEOF
-#define HAVE_TONEZONE_VERSION 140
-_ACEOF
-
- fi
- fi
-fi
-
-# other case, old tonezone (0.80)
-
-if test "x${PBX_TONEZONE}" != "x1" -a "${USE_TONEZONE}" != "no"; then
- pbxlibdir=""
- # if --with-TONEZONE=DIR has been specified, use it.
- if test "x${TONEZONE_DIR}" != "x"; then
- if test -d ${TONEZONE_DIR}/lib; then
- pbxlibdir="-L${TONEZONE_DIR}/lib"
- else
- pbxlibdir="-L${TONEZONE_DIR}"
- fi
- fi
- pbxfuncname="tone_zone_find"
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_TONEZONE_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_tonezone_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -ltonezone" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -ltonezone... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltonezone ${pbxlibdir} ${tonezone_extra} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_TONEZONE_FOUND=yes
-else
- AST_TONEZONE_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_TONEZONE_FOUND}" = "yes"; then
- TONEZONE_LIB="${pbxlibdir} -ltonezone ${tonezone_extra}"
- # if --with-TONEZONE=DIR has been specified, use it.
- if test "x${TONEZONE_DIR}" != "x"; then
- TONEZONE_INCLUDE="-I${TONEZONE_DIR}/include"
- fi
- TONEZONE_INCLUDE="${TONEZONE_INCLUDE} "
- if test "xzaptel/zaptel.h" = "x" ; then # no header, assume found
- TONEZONE_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${TONEZONE_INCLUDE} "
- if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for zaptel/zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_zaptel_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel/zaptel.h usability" >&5
-echo $ECHO_N "checking zaptel/zaptel.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <zaptel/zaptel.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel/zaptel.h presence" >&5
-echo $ECHO_N "checking zaptel/zaptel.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for zaptel/zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_zaptel_zaptel_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_zaptel_h" >&6; }
-
-fi
-if test $ac_cv_header_zaptel_zaptel_h = yes; then
- TONEZONE_HEADER_FOUND=1
-else
- TONEZONE_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${TONEZONE_HEADER_FOUND}" = "x0" ; then
- TONEZONE_LIB=""
- TONEZONE_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- TONEZONE_LIB=""
- fi
- PBX_TONEZONE=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_TONEZONE 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_TONEZONE_VERSION 80
+#define HAVE_TONEZONE_VERSION
_ACEOF
fi
@@ -47157,1756 +45994,6 @@ _ACEOF
fi
-# Check for various zaptel features and locations.
-# The version number, which goes into HAVE_ZAPTEL_VERSION,
-# will be used in the system headers to determine the location
-# of the zaptel.h header.
-
-
- if test "x${PBX_ZAPTEL}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_TONE_DTMF_BASE in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_TONE_DTMF_BASE in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_DIR}" != "x"; then
- ZAPTEL_INCLUDE="-I${ZAPTEL_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_TONE_DTMF_BASE)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_VERSION 140
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
- if test "x${PBX_ZAPTEL}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_DIAL_OP_CANCEL in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_DIAL_OP_CANCEL in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_DIR}" != "x"; then
- ZAPTEL_INCLUDE="-I${ZAPTEL_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_DIAL_OP_CANCEL)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_VERSION 90
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for VLDTMF support
-
- if test "x${PBX_ZAPTEL_VLDTMF}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_EVENT_REMOVED in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_EVENT_REMOVED in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_VLDTMF_DIR}" != "x"; then
- ZAPTEL_VLDTMF_INCLUDE="-I${ZAPTEL_VLDTMF_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_VLDTMF_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_EVENT_REMOVED)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_VLDTMF=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_VLDTMF 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_VLDTMF_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for echo canceler parameters support
-
- if test "x${PBX_ZAPTEL_ECHOCANPARAMS}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_ECHOCANCEL_PARAMS in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_ECHOCANCEL_PARAMS in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_ECHOCANPARAMS_DIR}" != "x"; then
- ZAPTEL_ECHOCANPARAMS_INCLUDE="-I${ZAPTEL_ECHOCANPARAMS_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_ECHOCANPARAMS_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_ECHOCANCEL_PARAMS)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_ECHOCANPARAMS=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_ECHOCANPARAMS 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_ECHOCANPARAMS_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for transcoder support
-
- if test "x${PBX_ZAPTEL_TRANSCODE}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_TCOP_ALLOCATE in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_TCOP_ALLOCATE in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_TRANSCODE_DIR}" != "x"; then
- ZAPTEL_TRANSCODE_INCLUDE="-I${ZAPTEL_TRANSCODE_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_TRANSCODE_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_TCOP_ALLOCATE)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_TRANSCODE=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_TRANSCODE 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_TRANSCODE_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for hwgain support
-
- if test "x${PBX_ZAPTEL_HWGAIN}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_SET_HWGAIN in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_SET_HWGAIN in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_HWGAIN_DIR}" != "x"; then
- ZAPTEL_HWGAIN_INCLUDE="-I${ZAPTEL_HWGAIN_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_HWGAIN_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_SET_HWGAIN)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_HWGAIN=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_HWGAIN 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_HWGAIN_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for neon mwi support
-
- if test "x${PBX_ZAPTEL_NEONMWI}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_EVENT_NEONMWI_ACTIVE in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_EVENT_NEONMWI_ACTIVE in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_NEONMWI_DIR}" != "x"; then
- ZAPTEL_NEONMWI_INCLUDE="-I${ZAPTEL_NEONMWI_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_NEONMWI_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_EVENT_NEONMWI_ACTIVE)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_NEONMWI=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_NEONMWI 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_NEONMWI_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# Check for channel alarm support
-
- if test "x${PBX_ZAPTEL_CHANALARMS}" != "x1" -a "${USE_ZAPTEL_CHANALARMS}" != "no"; then
- { echo "$as_me:$LINENO: checking if \"size_t foo = sizeof(struct zt_params_v1)\" compiles using zaptel/zaptel.h" >&5
-echo $ECHO_N "checking if \"size_t foo = sizeof(struct zt_params_v1)\" compiles using zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_CHANALARMS_DIR}" != "x"; then
- ZAPTEL_CHANALARMS_INCLUDE="-I${ZAPTEL_CHANALARMS_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_CHANALARMS_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
- size_t foo = sizeof(struct zt_params_v1);
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_CHANALARMS=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_CHANALARMS 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_CHANALARMS_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-# Check for ZT_SIG_MTP2
-
- if test "x${PBX_ZAPTEL_SIG_MTP2}" != "x1"; then
- { echo "$as_me:$LINENO: checking for ZT_SIG_MTP2 in zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for ZT_SIG_MTP2 in zaptel/zaptel.h... $ECHO_C" >&6; }
- saved_cppflags="${CPPFLAGS}"
- if test "x${ZAPTEL_SIG_MTP2_DIR}" != "x"; then
- ZAPTEL_SIG_MTP2_INCLUDE="-I${ZAPTEL_SIG_MTP2_DIR}/include"
- fi
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_SIG_MTP2_INCLUDE}"
-
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-int
-main ()
-{
-#if defined(ZT_SIG_MTP2)
- int foo = 0;
- #else
- int foo = bar;
- #endif
- 0
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- PBX_ZAPTEL_SIG_MTP2=1
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_SIG_MTP2 1
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ZAPTEL_SIG_MTP2_VERSION
-_ACEOF
-
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS="${saved_cppflags}"
- fi
-
-
-
-# On FreeBSD, try old zaptel (0.80 or so) and pretend we have vldtmf
-case "${host_os}" in
- freebsd*)
-
-if test "x${PBX_ZAPTEL}" != "x1" -a "${USE_ZAPTEL}" != "no"; then
- pbxlibdir=""
- # if --with-ZAPTEL=DIR has been specified, use it.
- if test "x${ZAPTEL_DIR}" != "x"; then
- if test -d ${ZAPTEL_DIR}/lib; then
- pbxlibdir="-L${ZAPTEL_DIR}/lib"
- else
- pbxlibdir="-L${ZAPTEL_DIR}"
- fi
- fi
- pbxfuncname=""
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_ZAPTEL_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_zaptel_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lzaptel" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lzaptel... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lzaptel ${pbxlibdir} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_ZAPTEL_FOUND=yes
-else
- AST_ZAPTEL_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_ZAPTEL_FOUND}" = "yes"; then
- ZAPTEL_LIB="${pbxlibdir} -lzaptel "
- # if --with-ZAPTEL=DIR has been specified, use it.
- if test "x${ZAPTEL_DIR}" != "x"; then
- ZAPTEL_INCLUDE="-I${ZAPTEL_DIR}/include"
- fi
- ZAPTEL_INCLUDE="${ZAPTEL_INCLUDE} "
- if test "xzaptel.h" = "x" ; then # no header, assume found
- ZAPTEL_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_INCLUDE} "
- if test "${ac_cv_header_zaptel_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel.h usability" >&5
-echo $ECHO_N "checking zaptel.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <zaptel.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel.h presence" >&5
-echo $ECHO_N "checking zaptel.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_zaptel_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-
-fi
-if test $ac_cv_header_zaptel_h = yes; then
- ZAPTEL_HEADER_FOUND=1
-else
- ZAPTEL_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${ZAPTEL_HEADER_FOUND}" = "x0" ; then
- ZAPTEL_LIB=""
- ZAPTEL_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- ZAPTEL_LIB=""
- fi
- PBX_ZAPTEL=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL_VERSION 80
-_ACEOF
-
- fi
- fi
-fi
-
-
-if test "x${PBX_ZAPTEL_VLDTMF}" != "x1" -a "${USE_ZAPTEL_VLDTMF}" != "no"; then
- pbxlibdir=""
- # if --with-ZAPTEL_VLDTMF=DIR has been specified, use it.
- if test "x${ZAPTEL_VLDTMF_DIR}" != "x"; then
- if test -d ${ZAPTEL_VLDTMF_DIR}/lib; then
- pbxlibdir="-L${ZAPTEL_VLDTMF_DIR}/lib"
- else
- pbxlibdir="-L${ZAPTEL_VLDTMF_DIR}"
- fi
- fi
- pbxfuncname=""
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_ZAPTEL_VLDTMF_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_zaptel_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lzaptel" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lzaptel... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lzaptel ${pbxlibdir} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_ZAPTEL_VLDTMF_FOUND=yes
-else
- AST_ZAPTEL_VLDTMF_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_ZAPTEL_VLDTMF_FOUND}" = "yes"; then
- ZAPTEL_VLDTMF_LIB="${pbxlibdir} -lzaptel "
- # if --with-ZAPTEL_VLDTMF=DIR has been specified, use it.
- if test "x${ZAPTEL_VLDTMF_DIR}" != "x"; then
- ZAPTEL_VLDTMF_INCLUDE="-I${ZAPTEL_VLDTMF_DIR}/include"
- fi
- ZAPTEL_VLDTMF_INCLUDE="${ZAPTEL_VLDTMF_INCLUDE} "
- if test "xzaptel/zaptel.h" = "x" ; then # no header, assume found
- ZAPTEL_VLDTMF_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_VLDTMF_INCLUDE} "
- if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for zaptel/zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_zaptel_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel/zaptel.h usability" >&5
-echo $ECHO_N "checking zaptel/zaptel.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <zaptel/zaptel.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel/zaptel.h presence" >&5
-echo $ECHO_N "checking zaptel/zaptel.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel/zaptel.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel/zaptel.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel/zaptel.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for zaptel/zaptel.h" >&5
-echo $ECHO_N "checking for zaptel/zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_zaptel_zaptel_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_zaptel_h" >&6; }
-
-fi
-if test $ac_cv_header_zaptel_zaptel_h = yes; then
- ZAPTEL_VLDTMF_HEADER_FOUND=1
-else
- ZAPTEL_VLDTMF_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${ZAPTEL_VLDTMF_HEADER_FOUND}" = "x0" ; then
- ZAPTEL_VLDTMF_LIB=""
- ZAPTEL_VLDTMF_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- ZAPTEL_VLDTMF_LIB=""
- fi
- PBX_ZAPTEL_VLDTMF=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL_VLDTMF 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL_VLDTMF_VERSION 90
-_ACEOF
-
- fi
- fi
-fi
-
-
-if test "x${PBX_ZAPTEL_VLDTMF}" != "x1" -a "${USE_ZAPTEL_VLDTMF}" != "no"; then
- pbxlibdir=""
- # if --with-ZAPTEL_VLDTMF=DIR has been specified, use it.
- if test "x${ZAPTEL_VLDTMF_DIR}" != "x"; then
- if test -d ${ZAPTEL_VLDTMF_DIR}/lib; then
- pbxlibdir="-L${ZAPTEL_VLDTMF_DIR}/lib"
- else
- pbxlibdir="-L${ZAPTEL_VLDTMF_DIR}"
- fi
- fi
- pbxfuncname=""
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_ZAPTEL_VLDTMF_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_zaptel_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -lzaptel" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -lzaptel... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lzaptel ${pbxlibdir} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_ZAPTEL_VLDTMF_FOUND=yes
-else
- AST_ZAPTEL_VLDTMF_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_ZAPTEL_VLDTMF_FOUND}" = "yes"; then
- ZAPTEL_VLDTMF_LIB="${pbxlibdir} -lzaptel "
- # if --with-ZAPTEL_VLDTMF=DIR has been specified, use it.
- if test "x${ZAPTEL_VLDTMF_DIR}" != "x"; then
- ZAPTEL_VLDTMF_INCLUDE="-I${ZAPTEL_VLDTMF_DIR}/include"
- fi
- ZAPTEL_VLDTMF_INCLUDE="${ZAPTEL_VLDTMF_INCLUDE} "
- if test "xzaptel.h" = "x" ; then # no header, assume found
- ZAPTEL_VLDTMF_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${ZAPTEL_VLDTMF_INCLUDE} "
- if test "${ac_cv_header_zaptel_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel.h usability" >&5
-echo $ECHO_N "checking zaptel.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <zaptel.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel.h presence" >&5
-echo $ECHO_N "checking zaptel.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_zaptel_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-
-fi
-if test $ac_cv_header_zaptel_h = yes; then
- ZAPTEL_VLDTMF_HEADER_FOUND=1
-else
- ZAPTEL_VLDTMF_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${ZAPTEL_VLDTMF_HEADER_FOUND}" = "x0" ; then
- ZAPTEL_VLDTMF_LIB=""
- ZAPTEL_VLDTMF_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- ZAPTEL_VLDTMF_LIB=""
- fi
- PBX_ZAPTEL_VLDTMF=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL_VLDTMF 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ZAPTEL_VLDTMF_VERSION 80
-_ACEOF
-
- fi
- fi
-fi
-
-
- # other case, old tonezone (0.80)
-
-if test "x${PBX_TONEZONE}" != "x1" -a "${USE_TONEZONE}" != "no"; then
- pbxlibdir=""
- # if --with-TONEZONE=DIR has been specified, use it.
- if test "x${TONEZONE_DIR}" != "x"; then
- if test -d ${TONEZONE_DIR}/lib; then
- pbxlibdir="-L${TONEZONE_DIR}/lib"
- else
- pbxlibdir="-L${TONEZONE_DIR}"
- fi
- fi
- pbxfuncname="tone_zone_find"
- if test "x${pbxfuncname}" = "x" ; then # empty lib, assume only headers
- AST_TONEZONE_FOUND=yes
- else
- as_ac_Lib=`echo "ac_cv_lib_tonezone_${pbxfuncname}" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for ${pbxfuncname} in -ltonezone" >&5
-echo $ECHO_N "checking for ${pbxfuncname} in -ltonezone... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltonezone ${pbxlibdir} ${tonezone_extra} $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ${pbxfuncname} ();
-int
-main ()
-{
-return ${pbxfuncname} ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
- eval "$as_ac_Lib=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- AST_TONEZONE_FOUND=yes
-else
- AST_TONEZONE_FOUND=no
-fi
-
- fi
-
- # now check for the header.
- if test "${AST_TONEZONE_FOUND}" = "yes"; then
- TONEZONE_LIB="${pbxlibdir} -ltonezone ${tonezone_extra}"
- # if --with-TONEZONE=DIR has been specified, use it.
- if test "x${TONEZONE_DIR}" != "x"; then
- TONEZONE_INCLUDE="-I${TONEZONE_DIR}/include"
- fi
- TONEZONE_INCLUDE="${TONEZONE_INCLUDE} "
- if test "xzaptel.h" = "x" ; then # no header, assume found
- TONEZONE_HEADER_FOUND="1"
- else # check for the header
- saved_cppflags="${CPPFLAGS}"
- CPPFLAGS="${CPPFLAGS} ${TONEZONE_INCLUDE} "
- if test "${ac_cv_header_zaptel_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-else
- # Is the header compilable?
-{ echo "$as_me:$LINENO: checking zaptel.h usability" >&5
-echo $ECHO_N "checking zaptel.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <zaptel.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking zaptel.h presence" >&5
-echo $ECHO_N "checking zaptel.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <zaptel.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: zaptel.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: zaptel.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: zaptel.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: zaptel.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: zaptel.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: zaptel.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: zaptel.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: zaptel.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: zaptel.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ------------------------------- ##
-## Report this to www.asterisk.org ##
-## ------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ echo "$as_me:$LINENO: checking for zaptel.h" >&5
-echo $ECHO_N "checking for zaptel.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_zaptel_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_header_zaptel_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_zaptel_h" >&5
-echo "${ECHO_T}$ac_cv_header_zaptel_h" >&6; }
-
-fi
-if test $ac_cv_header_zaptel_h = yes; then
- TONEZONE_HEADER_FOUND=1
-else
- TONEZONE_HEADER_FOUND=0
-fi
-
-
- CPPFLAGS="${saved_cppflags}"
- fi
- if test "x${TONEZONE_HEADER_FOUND}" = "x0" ; then
- TONEZONE_LIB=""
- TONEZONE_INCLUDE=""
- else
- if test "x${pbxfuncname}" = "x" ; then # only checking headers -> no library
- TONEZONE_LIB=""
- fi
- PBX_TONEZONE=1
- # XXX don't know how to evaluate the description (third argument) in AC_DEFINE_UNQUOTED
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_TONEZONE 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_TONEZONE_VERSION 80
-_ACEOF
-
- fi
- fi
-fi
-
- ;;
-esac
-
EDITLINE_LIB=""
if test "x$TERMCAP_LIB" != "x" ; then
EDITLINE_LIB="$TERMCAP_LIB"
@@ -51936,6 +49023,10 @@ CRYPTO_LIB!$CRYPTO_LIB$ac_delim
CRYPTO_INCLUDE!$CRYPTO_INCLUDE$ac_delim
CRYPTO_DIR!$CRYPTO_DIR$ac_delim
PBX_CRYPTO!$PBX_CRYPTO$ac_delim
+DAHDI_LIB!$DAHDI_LIB$ac_delim
+DAHDI_INCLUDE!$DAHDI_INCLUDE$ac_delim
+DAHDI_DIR!$DAHDI_DIR$ac_delim
+PBX_DAHDI!$PBX_DAHDI$ac_delim
FFMPEG_LIB!$FFMPEG_LIB$ac_delim
FFMPEG_INCLUDE!$FFMPEG_INCLUDE$ac_delim
FFMPEG_DIR!$FFMPEG_DIR$ac_delim
@@ -52001,10 +49092,6 @@ NCURSES_INCLUDE!$NCURSES_INCLUDE$ac_delim
NCURSES_DIR!$NCURSES_DIR$ac_delim
PBX_NCURSES!$PBX_NCURSES$ac_delim
NETSNMP_LIB!$NETSNMP_LIB$ac_delim
-NETSNMP_INCLUDE!$NETSNMP_INCLUDE$ac_delim
-NETSNMP_DIR!$NETSNMP_DIR$ac_delim
-PBX_NETSNMP!$PBX_NETSNMP$ac_delim
-NEWT_LIB!$NEWT_LIB$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -52046,6 +49133,10 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
+NETSNMP_INCLUDE!$NETSNMP_INCLUDE$ac_delim
+NETSNMP_DIR!$NETSNMP_DIR$ac_delim
+PBX_NETSNMP!$PBX_NETSNMP$ac_delim
+NEWT_LIB!$NEWT_LIB$ac_delim
NEWT_INCLUDE!$NEWT_INCLUDE$ac_delim
NEWT_DIR!$NEWT_DIR$ac_delim
PBX_NEWT!$PBX_NEWT$ac_delim
@@ -52081,10 +49172,6 @@ PRI_LIB!$PRI_LIB$ac_delim
PRI_INCLUDE!$PRI_INCLUDE$ac_delim
PRI_DIR!$PRI_DIR$ac_delim
PBX_PRI!$PBX_PRI$ac_delim
-SPANDSP_LIB!$SPANDSP_LIB$ac_delim
-SPANDSP_INCLUDE!$SPANDSP_INCLUDE$ac_delim
-SPANDSP_DIR!$SPANDSP_DIR$ac_delim
-PBX_SPANDSP!$PBX_SPANDSP$ac_delim
SS7_LIB!$SS7_LIB$ac_delim
SS7_INCLUDE!$SS7_INCLUDE$ac_delim
SS7_DIR!$SS7_DIR$ac_delim
@@ -52109,14 +49196,6 @@ SDL_IMAGE_LIB!$SDL_IMAGE_LIB$ac_delim
SDL_IMAGE_INCLUDE!$SDL_IMAGE_INCLUDE$ac_delim
SDL_IMAGE_DIR!$SDL_IMAGE_DIR$ac_delim
PBX_SDL_IMAGE!$PBX_SDL_IMAGE$ac_delim
-SACLM_LIB!$SACLM_LIB$ac_delim
-SACLM_INCLUDE!$SACLM_INCLUDE$ac_delim
-SACLM_DIR!$SACLM_DIR$ac_delim
-PBX_SACLM!$PBX_SACLM$ac_delim
-SAEVT_LIB!$SAEVT_LIB$ac_delim
-SAEVT_INCLUDE!$SAEVT_INCLUDE$ac_delim
-SAEVT_DIR!$SAEVT_DIR$ac_delim
-PBX_SAEVT!$PBX_SAEVT$ac_delim
SPEEX_LIB!$SPEEX_LIB$ac_delim
SPEEX_INCLUDE!$SPEEX_INCLUDE$ac_delim
SPEEX_DIR!$SPEEX_DIR$ac_delim
@@ -52143,6 +49222,14 @@ OPENSSL_DIR!$OPENSSL_DIR$ac_delim
PBX_OPENSSL!$PBX_OPENSSL$ac_delim
FREETDS_LIB!$FREETDS_LIB$ac_delim
FREETDS_INCLUDE!$FREETDS_INCLUDE$ac_delim
+FREETDS_DIR!$FREETDS_DIR$ac_delim
+PBX_FREETDS!$PBX_FREETDS$ac_delim
+TERMCAP_LIB!$TERMCAP_LIB$ac_delim
+TERMCAP_INCLUDE!$TERMCAP_INCLUDE$ac_delim
+TERMCAP_DIR!$TERMCAP_DIR$ac_delim
+PBX_TERMCAP!$PBX_TERMCAP$ac_delim
+TINFO_LIB!$TINFO_LIB$ac_delim
+TINFO_INCLUDE!$TINFO_INCLUDE$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -52184,14 +49271,6 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
-FREETDS_DIR!$FREETDS_DIR$ac_delim
-PBX_FREETDS!$PBX_FREETDS$ac_delim
-TERMCAP_LIB!$TERMCAP_LIB$ac_delim
-TERMCAP_INCLUDE!$TERMCAP_INCLUDE$ac_delim
-TERMCAP_DIR!$TERMCAP_DIR$ac_delim
-PBX_TERMCAP!$PBX_TERMCAP$ac_delim
-TINFO_LIB!$TINFO_LIB$ac_delim
-TINFO_INCLUDE!$TINFO_INCLUDE$ac_delim
TINFO_DIR!$TINFO_DIR$ac_delim
PBX_TINFO!$PBX_TINFO$ac_delim
TONEZONE_LIB!$TONEZONE_LIB$ac_delim
@@ -52218,10 +49297,6 @@ ZLIB_LIB!$ZLIB_LIB$ac_delim
ZLIB_INCLUDE!$ZLIB_INCLUDE$ac_delim
ZLIB_DIR!$ZLIB_DIR$ac_delim
PBX_ZLIB!$PBX_ZLIB$ac_delim
-ZAPTEL_LIB!$ZAPTEL_LIB$ac_delim
-ZAPTEL_INCLUDE!$ZAPTEL_INCLUDE$ac_delim
-ZAPTEL_DIR!$ZAPTEL_DIR$ac_delim
-PBX_ZAPTEL!$PBX_ZAPTEL$ac_delim
ALLOCA!$ALLOCA$ac_delim
LIBOBJS!$LIBOBJS$ac_delim
POW_LIB!$POW_LIB$ac_delim
@@ -52251,12 +49326,6 @@ OPENH323_SUFFIX!$OPENH323_SUFFIX$ac_delim
OPENH323_BUILD!$OPENH323_BUILD$ac_delim
PBX_SPEEX_PREPROCESS!$PBX_SPEEX_PREPROCESS$ac_delim
CONFIG_GMIME!$CONFIG_GMIME$ac_delim
-PBX_ZAPTEL_VLDTMF!$PBX_ZAPTEL_VLDTMF$ac_delim
-PBX_ZAPTEL_ECHOCANPARAMS!$PBX_ZAPTEL_ECHOCANPARAMS$ac_delim
-PBX_ZAPTEL_TRANSCODE!$PBX_ZAPTEL_TRANSCODE$ac_delim
-PBX_ZAPTEL_HWGAIN!$PBX_ZAPTEL_HWGAIN$ac_delim
-PBX_ZAPTEL_NEONMWI!$PBX_ZAPTEL_NEONMWI$ac_delim
-PBX_ZAPTEL_SIG_MTP2!$PBX_ZAPTEL_SIG_MTP2$ac_delim
EDITLINE_LIB!$EDITLINE_LIB$ac_delim
PBX_H323!$PBX_H323$ac_delim
PBX_IXJUSER!$PBX_IXJUSER$ac_delim
@@ -52267,7 +49336,7 @@ CURL_CONFIG!$CURL_CONFIG$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 81; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 63; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
index 0a68c8e72..c07a03d6e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -207,6 +207,7 @@ AST_EXT_LIB_SETUP([CAP], [POSIX 1.e capabilities], [cap])
AST_EXT_LIB_SETUP([CURL], [cURL], [curl])
AST_EXT_LIB_SETUP([CURSES], [curses], [curses])
AST_EXT_LIB_SETUP([CRYPTO], [OpenSSL Cryptography support], [crypto])
+AST_EXT_LIB_SETUP([DAHDI], [DAHDI], [dahdi])
AST_EXT_LIB_SETUP([FFMPEG], [Ffmpeg and avcodec library], [avcodec])
AST_EXT_LIB_SETUP([GSM], [External GSM library], [gsm], [, use 'internal' GSM otherwise])
AST_EXT_LIB_SETUP([GTK], [gtk libraries], [gtk])
@@ -257,7 +258,6 @@ AST_EXT_LIB_SETUP([VORBIS], [Vorbis], [vorbis])
AST_EXT_LIB_SETUP([VPB], [Voicetronix API], [vpb])
AST_EXT_LIB_SETUP([X11], [X11 support], [x11])
AST_EXT_LIB_SETUP([ZLIB], [zlib], [z])
-AST_EXT_LIB_SETUP([ZAPTEL], [Zaptel], [zaptel])
# check for basic system features and functionality before
# checking for package libraries
@@ -552,6 +552,8 @@ if test "x${host_os}" = "xlinux-gnu" ; then
AST_EXT_LIB_CHECK([CAP], [cap], [cap_from_text], [sys/capability.h])
fi
+AST_C_DEFINE_CHECK([DAHDI], [DAHDI_CODE], [dahdi/user.h])
+
# BSD might not have exp2, and/or log2
AST_EXT_LIB_CHECK([EXP2L], [m], [exp2l])
AST_EXT_LIB_CHECK([LOG2L], [m], [log2l])
@@ -1424,9 +1426,7 @@ if test "${host_os}" != "linux-gnu" ; then
fi
# new tonezone, version 1.4.0
-AST_EXT_LIB_CHECK([TONEZONE], [tonezone], [tone_zone_find], [zaptel/tonezone.h], [${tonezone_extra}], [], [140])
-# other case, old tonezone (0.80)
-AST_EXT_LIB_CHECK([TONEZONE], [tonezone], [tone_zone_find], [zaptel/zaptel.h], [${tonezone_extra}], [], [80])
+AST_EXT_LIB_CHECK([TONEZONE], [tonezone], [tone_zone_find], [dahdi/tonezone.h], [${tonezone_extra}])
AST_EXT_LIB_CHECK([USB], [usb], [usb_init], [usb.h], [])
@@ -1478,47 +1478,6 @@ AC_LANG_POP
AST_EXT_LIB_CHECK([ZLIB], [z], [compress], [zlib.h])
-# Check for various zaptel features and locations.
-# The version number, which goes into HAVE_ZAPTEL_VERSION,
-# will be used in the system headers to determine the location
-# of the zaptel.h header.
-
-AST_C_DEFINE_CHECK([ZAPTEL], [ZT_TONE_DTMF_BASE], [zaptel/zaptel.h], [140])
-AST_C_DEFINE_CHECK([ZAPTEL], [ZT_DIAL_OP_CANCEL], [zaptel/zaptel.h], [90])
-
-# Check for VLDTMF support
-AST_C_DEFINE_CHECK([ZAPTEL_VLDTMF], [ZT_EVENT_REMOVED], [zaptel/zaptel.h])
-
-# Check for echo canceler parameters support
-AST_C_DEFINE_CHECK([ZAPTEL_ECHOCANPARAMS], [ZT_ECHOCANCEL_PARAMS], [zaptel/zaptel.h])
-
-# Check for transcoder support
-AST_C_DEFINE_CHECK([ZAPTEL_TRANSCODE], [ZT_TCOP_ALLOCATE], [zaptel/zaptel.h])
-
-# Check for hwgain support
-AST_C_DEFINE_CHECK([ZAPTEL_HWGAIN], [ZT_SET_HWGAIN], [zaptel/zaptel.h])
-
-# Check for neon mwi support
-AST_C_DEFINE_CHECK([ZAPTEL_NEONMWI], [ZT_EVENT_NEONMWI_ACTIVE], [zaptel/zaptel.h])
-
-# Check for channel alarm support
-AST_C_COMPILE_CHECK([ZAPTEL_CHANALARMS], [size_t foo = sizeof(struct zt_params_v1)], [zaptel/zaptel.h])
-
-# Check for ZT_SIG_MTP2
-AST_C_DEFINE_CHECK([ZAPTEL_SIG_MTP2], [ZT_SIG_MTP2], [zaptel/zaptel.h])
-
-# On FreeBSD, try old zaptel (0.80 or so) and pretend we have vldtmf
-case "${host_os}" in
- freebsd*)
- AST_EXT_LIB_CHECK([ZAPTEL], [zaptel],, [zaptel.h],,, [80])
- AST_EXT_LIB_CHECK([ZAPTEL_VLDTMF], [zaptel],, [zaptel/zaptel.h],,, [90])
- AST_EXT_LIB_CHECK([ZAPTEL_VLDTMF], [zaptel],, [zaptel.h],,, [80])
-
- # other case, old tonezone (0.80)
- AST_EXT_LIB_CHECK([TONEZONE], [tonezone], [tone_zone_find], [zaptel.h], [${tonezone_extra}],, [80])
- ;;
-esac
-
EDITLINE_LIB=""
if test "x$TERMCAP_LIB" != "x" ; then
EDITLINE_LIB="$TERMCAP_LIB"
diff --git a/contrib/init.d/rc.mandrake.asterisk b/contrib/init.d/rc.mandrake.asterisk
index e9da4a810..ea3b9684d 100755
--- a/contrib/init.d/rc.mandrake.asterisk
+++ b/contrib/init.d/rc.mandrake.asterisk
@@ -168,12 +168,12 @@ case "$1" in
;;
fullrestart)
$0 stop
- service zaptel restart
+ service dahdi restart
$0 start
;;
fullrestartnow)
$0 stopnow
- service zaptel restart
+ service dahdi restart
$0 start
;;
status)
diff --git a/contrib/init.d/rc.mandrake.zaptel b/contrib/init.d/rc.mandrake.zaptel
index 2feaef4c7..14a658b41 100755
--- a/contrib/init.d/rc.mandrake.zaptel
+++ b/contrib/init.d/rc.mandrake.zaptel
@@ -1,11 +1,11 @@
#!/bin/sh
#
-# zaptel: Loads Asterisk modules
+# DAHDI: Loads Asterisk modules
#
-# Version: @(#) /etc/rc.d/init.d/zaptel 1.0
+# Version: @(#) /etc/rc.d/init.d/dahdi 1.0
#
# chkconfig: 2345 90 10
-# description: Loads and unloads zaptel modules at boot time and shutdown.
+# description: Loads and unloads DAHDI modules at boot time and shutdown.
#
# hide: true
@@ -14,12 +14,12 @@
# Source function library.
. /etc/rc.d/init.d/functions
-# Default modules - override in /etc/sysconfig/zaptel
+# Default modules - override in /etc/sysconfig/dahdi
######################################
-MODULES="usb-uhci zaptel wcfxo wcusb"
+MODULES="usb-uhci dahdi wcfxo wcusb"
######################################
-# Resolve back to the basename (i.e. zaptel, not S90zaptel)
+# Resolve back to the basename (i.e. dahdi, not S90dahdi)
if [ 0`readlink $0` = "0" ]; then
CONFIGFILE=/etc/sysconfig/`basename $0`
else
diff --git a/contrib/init.d/rc.suse.asterisk b/contrib/init.d/rc.suse.asterisk
index d7f1b82ac..76025f341 100755
--- a/contrib/init.d/rc.suse.asterisk
+++ b/contrib/init.d/rc.suse.asterisk
@@ -22,11 +22,11 @@
### BEGIN INIT INFO
# Provides: asterisk
-# Required-Start: +zaptel $network $named
+# Required-Start: +dahdi $network $named
# Required-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 4 6
-# Description: zaptel - zaptel modules for Asterisk
+# Description: dahdi - dahdi modules for Asterisk
### END INIT INFO
# Source function library.
diff --git a/contrib/scripts/autosupport b/contrib/scripts/autosupport
index 83efef42a..300d22023 100644
--- a/contrib/scripts/autosupport
+++ b/contrib/scripts/autosupport
@@ -101,9 +101,9 @@ if [ "$ans" = "y" ]; then
echo >> $OUTPUT;
echo "------------------" >> $OUTPUT;
- echo "ZAPTEL MODULE INFO" >> $OUTPUT;
+ echo "DAHDI MODULE INFO" >> $OUTPUT;
echo "------------------" >> $OUTPUT;
- modinfo /lib/modules/$(uname -r)/misc/*.ko >> $OUTPUT;
+ modinfo /lib/modules/$(uname -r)/dahdi/*.ko >> $OUTPUT;
echo >> $OUTPUT;
echo >> $OUTPUT;
@@ -149,17 +149,18 @@ if [ "$ans" = "y" ]; then
echo >> $OUTPUT;
echo >> $OUTPUT;
+ #jpeeler: REVISIT
echo "------------------" >> $OUTPUT;
echo "ZAPTEL CONFIG" >> $OUTPUT;
echo "------------------" >> $OUTPUT;
- grep -v '^#' /etc/zaptel.conf >> $OUTPUT;
+ grep -v '^#' /etc/dahdi.conf >> $OUTPUT;
echo >> $OUTPUT;
echo >> $OUTPUT;
echo "------------------" >> $OUTPUT;
echo "ZAPATA CONFIG" >> $OUTPUT;
echo "------------------" >> $OUTPUT;
- grep -v '^;' /etc/asterisk/zapata.conf >> $OUTPUT;
+ grep -v '^;' /etc/asterisk/chan_dahdi.conf >> $OUTPUT;
echo >> $OUTPUT;
echo >> $OUTPUT;
diff --git a/contrib/scripts/loadtest.tcl b/contrib/scripts/loadtest.tcl
index 9c50be338..d216f489b 100644
--- a/contrib/scripts/loadtest.tcl
+++ b/contrib/scripts/loadtest.tcl
@@ -8,7 +8,7 @@
#
# Create a (huge) bunch of call files to dial via pbx_spool.
# Defaults are selected with 'Enter' and, if all defaults
-# are selected, you'll dial Zap/1/s into default|s|1
+# are selected, you'll dial DAHDI/1/s into default|s|1
#
@@ -98,8 +98,8 @@ Account: $::account
}
# prompt the user for some info
-get technology "Zap" "\nEnter technology type
-Zap, IAX, SIP, etc."
+get technology "DAHDI" "\nEnter technology type
+DAHDI, IAX, SIP, etc."
get chans "1" "\nEnter channel(s) or group to test in formats like
2\n1-4\n3 5 7 9\n1-23,25-47,49-71,73-95\ng4\ng2,g1"
set channels [splitchans $chans]
diff --git a/contrib/utils/zones2indications.c b/contrib/utils/zones2indications.c
index 645cd0ed5..062f63fb1 100644
--- a/contrib/utils/zones2indications.c
+++ b/contrib/utils/zones2indications.c
@@ -30,7 +30,7 @@
void print_tone_zone_sound(struct ind_tone_zone *zone_data, const char* name,
int toneid) {
int i;
- for (i=0; i<ZT_TONE_MAX; i++) {
+ for (i=0; i<DAHDI_TONE_MAX; i++) {
if (zone_data->tones[i].toneid == toneid){
printf("%s = %s\n", name, zone_data->tones[i].data);
break;
@@ -61,15 +61,15 @@ void print_indications(struct ind_tone_zone *zone_data) {
}
putchar('\n');
- print_tone_zone_sound(zone_data, "dial", ZT_TONE_DIALTONE);
- print_tone_zone_sound(zone_data, "busy", ZT_TONE_BUSY);
- print_tone_zone_sound(zone_data, "ring", ZT_TONE_RINGTONE);
- print_tone_zone_sound(zone_data, "congestion", ZT_TONE_CONGESTION);
- print_tone_zone_sound(zone_data, "callwaiting", ZT_TONE_CALLWAIT);
- print_tone_zone_sound(zone_data, "dialrecall", ZT_TONE_DIALRECALL);
- print_tone_zone_sound(zone_data, "record", ZT_TONE_RECORDTONE);
- print_tone_zone_sound(zone_data, "info", ZT_TONE_INFO);
- print_tone_zone_sound(zone_data, "stutter", ZT_TONE_STUTTER);
+ print_tone_zone_sound(zone_data, "dial", DAHDI_TONE_DIALTONE);
+ print_tone_zone_sound(zone_data, "busy", DAHDI_TONE_BUSY);
+ print_tone_zone_sound(zone_data, "ring", DAHDI_TONE_RINGTONE);
+ print_tone_zone_sound(zone_data, "congestion", DAHDI_TONE_CONGESTION);
+ print_tone_zone_sound(zone_data, "callwaiting", DAHDI_TONE_CALLWAIT);
+ print_tone_zone_sound(zone_data, "dialrecall", DAHDI_TONE_DIALRECALL);
+ print_tone_zone_sound(zone_data, "record", DAHDI_TONE_RECORDTONE);
+ print_tone_zone_sound(zone_data, "info", DAHDI_TONE_INFO);
+ print_tone_zone_sound(zone_data, "stutter", DAHDI_TONE_STUTTER);
printf("\n\n");
}
diff --git a/doc/asterisk.8 b/doc/asterisk.8
index 876721a93..76daafc67 100644
--- a/doc/asterisk.8
+++ b/doc/asterisk.8
@@ -122,10 +122,10 @@ Allows to specify the socket file to be used to connect to the
Asterisk console. Used in conjunction with \fB-r\fR or \fB-R\fR.
.TP
\fB-I\fR
-Enable internal timing if Zaptel timer is available
+Enable internal timing if DAHDI timer is available
The default behaviour is that outbound packets are phase locked
to inbound packets. Enabling this switch causes them to be
-locked to the internal Zaptel timer instead.
+locked to the internal DAHDI timer instead.
.TP
\fB-t\fR
When recording files, write them first into a temporary holding directory,
diff --git a/doc/asterisk.sgml b/doc/asterisk.sgml
index ebcecfc06..6a7823f71 100644
--- a/doc/asterisk.sgml
+++ b/doc/asterisk.sgml
@@ -157,10 +157,10 @@
<term>-I</term>
<listitem>
<para>
- Enable internal timing if Zaptel timing is available.
+ Enable internal timing if DAHDI timing is available.
The default behaviour is that outbound packets are phase locked
to inbound packets. Enabling this switch causes them to be
- locked to the internal Zaptel timer instead.
+ locked to the internal DAHDI timer instead.
</para>
</listitem>
</varlistentry>
diff --git a/doc/backtrace.txt b/doc/backtrace.txt
index ce39b0a3e..caf1579ce 100644
--- a/doc/backtrace.txt
+++ b/doc/backtrace.txt
@@ -97,7 +97,7 @@ You would see output similar to:
#10 0x000000a0 in ?? ()
#11 0x000000a0 in ?? ()
#12 0x00000000 in ?? ()
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
#15 0xbcdffbe0 in ?? ()
#16 0x40028e51 in pthread_start_thread () from /lib/libpthread.so.0
@@ -135,7 +135,7 @@ No symbol table info available.
No symbol table info available.
#12 0x00000000 in ?? ()
No symbol table info available.
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
f = (struct ast_frame *) 0x8180bf8
trans = (struct ast_trans_pvt *) 0x0
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
@@ -173,7 +173,7 @@ Thread 1 (process 26252):
#10 0x000000a0 in ?? ()
#11 0x000000a0 in ?? ()
#12 0x00000000 in ?? ()
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
#15 0xbcdffbe0 in ?? ()
#16 0x40028e51 in pthread_start_thread () from /lib/libpthread.so.0
diff --git a/doc/janitor-projects.txt b/doc/janitor-projects.txt
index 65416cc52..a43f9c957 100644
--- a/doc/janitor-projects.txt
+++ b/doc/janitor-projects.txt
@@ -17,7 +17,7 @@
-- Convert all existing uses of astobj.h to astobj2.h
-- (chan_sip already in progress in a branch)
- -- There are many places where large character buffers are allocated in structures. There is a new system for string handling that uses dynamically allocatted memory pools which is documented in include/asterisk/stringfields.h. Examples of where they are currently used are the ast_channel structure defined in include/asterisk/channel.h, some structures in chan_sip.c, and chan_zap.c.
+ -- There are many places where large character buffers are allocated in structures. There is a new system for string handling that uses dynamically allocatted memory pools which is documented in include/asterisk/stringfields.h. Examples of where they are currently used are the ast_channel structure defined in include/asterisk/channel.h, some structures in chan_sip.c, and chan_dahdi.c.
-- There is a convenient set of macros defined in include/asterisk/linkedlists.h for handling linked lists. However, there are some open-coded lists throughout the code. Converting linked lists to use these macros will make list handling more consistent and reduce the possibility of coding errors.
diff --git a/doc/manager_1_1.txt b/doc/manager_1_1.txt
index 3d0440f0a..6feede773 100644
--- a/doc/manager_1_1.txt
+++ b/doc/manager_1_1.txt
@@ -99,14 +99,14 @@ Changes to manager version 1.1:
- The MeetmeJoin now has caller ID name and Caller ID number fields (like MeetMeLeave)
-- Action ZapShowChannels
+- Action DAHDIShowChannels
Header changes
- - Channel: -> ZapChannel
+ - Channel: -> DAHDIChannel
For active channels, the Channel: and Uniqueid: headers are added
- You can now add a "ZapChannel: " argument to zapshowchannels actions
+ You can now add a "DAHDIChannel: " argument to DAHDIshowchannels actions
to only get information about one channel.
-- Event ZapShowChannelsComplete
+- Event DAHDIShowChannelsComplete
New header
- (new) -> Items: Reports number of channels reported
diff --git a/doc/osp.txt b/doc/osp.txt
index 763bb3871..6bad3a25c 100644
--- a/doc/osp.txt
+++ b/doc/osp.txt
@@ -25,7 +25,7 @@ Revision History 3
3.1.1 Build Asterisk with OSP Toolkit 8
3.1.2 osp.conf 8
3.1.3 extensions.conf 10
-3.1.4 zapata/sip/iax/h323/ooh323.conf 13
+3.1.4 dahdi/sip/iax/h323/ooh323.conf 13
3.2 OSP Dial Plan Functions 13
3.2.1 OSPAuth 13
3.2.2 OSPLookup 14
@@ -447,7 +447,7 @@ exten => s,300,GoTo(1000)
; --------------------------------------------------------------
exten => s,1000,MacroExit
-3.1.4 zapata/sip/iax/h323/ooh323.conf
+3.1.4 dahdi/sip/iax/h323/ooh323.conf
There is no configuration required for OSP.
3.2 OSP Dial Plan Functions
diff --git a/doc/sms.txt b/doc/sms.txt
index fe0ec8d85..d23f55aac 100644
--- a/doc/sms.txt
+++ b/doc/sms.txt
@@ -5,7 +5,7 @@ message centres using ETSI ES 201 912 protocol 1 FSK messaging over analog calls
Basically it allows sending and receiving of text messages over the PSTN. It is
compatible with BT Text service in the UK and works on ISDN and PSTN lines. It is
-designed to connect to an ISDN or zap interface directly and uses FSK so would
+designed to connect to an ISDN or DAHDI interface directly and uses FSK so would
probably not work over any sort of compressed link (like a VoIP call using GSM codec).
Typical applications include:-
diff --git a/doc/ss7.txt b/doc/ss7.txt
index 632035df0..1751050ac 100644
--- a/doc/ss7.txt
+++ b/doc/ss7.txt
@@ -31,6 +31,7 @@ is how to check them out from the public subversion server.
These are the commands you would type to install them:
+#jpeeler: REVISIT
`svn co http://svn.digium.com/svn/zaptel/branches/1.4 zaptel-1.4`
`cd zaptel-1.4`
`make; make install`
diff --git a/doc/tex/ael.tex b/doc/tex/ael.tex
index b76088fa0..c483947d8 100644
--- a/doc/tex/ael.tex
+++ b/doc/tex/ael.tex
@@ -44,10 +44,10 @@ as well as the Expression syntax, and the Variable syntax.
\section{Asterisk in a Nutshell}
-Asterisk acts as a server. Devices involved in telephony, like Zapata
+Asterisk acts as a server. Devices involved in telephony, like DAHDI
cards, or Voip phones, all indicate some context that should be
activated in their behalf. See the config file formats for IAX, SIP,
-zapata.conf, etc. They all help describe a device, and they all
+dahdi.conf, etc. They all help describe a device, and they all
specify a context to activate when somebody picks up a phone, or a
call comes in from the phone company, or a voip phone, etc.
@@ -707,7 +707,7 @@ Global variables are set in their own block.
\begin{verbatim}
globals {
CONSOLE=Console/dsp;
- TRUNK=Zap/g2;
+ TRUNK=DAHDI/g2;
}
\end{verbatim}
\end{astlisting}
diff --git a/doc/tex/app-sms.tex b/doc/tex/app-sms.tex
index aa515f61a..ec65a66f9 100644
--- a/doc/tex/app-sms.tex
+++ b/doc/tex/app-sms.tex
@@ -151,7 +151,7 @@ exten = _X./_80058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERID(num):8:1},1)
\end{astlisting}
Alternatively, if you have the correct national prefix on incoming
- CLI, e.g. using zaphfc, you might use:
+ CLI, e.g. using dahdi_hfc, you might use:
\begin{astlisting}
\begin{verbatim}
exten = _X./08005875290,1,Goto(smsmtrx,${EXTEN},1)
diff --git a/doc/tex/backtrace.tex b/doc/tex/backtrace.tex
index f43f42327..fd1c39d00 100644
--- a/doc/tex/backtrace.tex
+++ b/doc/tex/backtrace.tex
@@ -111,7 +111,7 @@ You would see output similar to:
#10 0x000000a0 in ?? ()
#11 0x000000a0 in ?? ()
#12 0x00000000 in ?? ()
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
#15 0xbcdffbe0 in ?? ()
#16 0x40028e51 in pthread_start_thread () from /lib/libpthread.so.0
@@ -152,7 +152,7 @@ No symbol table info available.
No symbol table info available.
#12 0x00000000 in ?? ()
No symbol table info available.
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
f = (struct ast_frame *) 0x8180bf8
trans = (struct ast_trans_pvt *) 0x0
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
@@ -194,7 +194,7 @@ Thread 1 (process 26252):
#10 0x000000a0 in ?? ()
#11 0x000000a0 in ?? ()
#12 0x00000000 in ?? ()
-#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "Zap/pseudo-1324221520") at app_meetme.c:262
+#13 0x407513c3 in confcall_careful_stream (conf=0x8180bf8, filename=0x8181de8 "DAHDI/pseudo-1324221520") at app_meetme.c:262
#14 0x40751332 in streamconfthread (args=0x8180bf8) at app_meetme.c:1965
#15 0xbcdffbe0 in ?? ()
#16 0x40028e51 in pthread_start_thread () from /lib/libpthread.so.0
diff --git a/doc/tex/channelvariables.tex b/doc/tex/channelvariables.tex
index ae5b1974b..ae28818d3 100644
--- a/doc/tex/channelvariables.tex
+++ b/doc/tex/channelvariables.tex
@@ -871,7 +871,7 @@ ${MEETME_RECORDINGFILE} Name of file for recording a conference with
the "r" option
${MEETME_RECORDINGFORMAT} Format of file to be recorded
${MEETME_EXIT_CONTEXT} Context for exit out of meetme meeting
-${MEETME_AGI_BACKGROUND} AGI script for Meetme (zap only)
+${MEETME_AGI_BACKGROUND} AGI script for Meetme (DAHDI only)
${MEETMESECS} * Number of seconds a user participated in a MeetMe conference
${CONF_LIMIT_TIMEOUT_FILE} File to play when time is up. Used with the L() option.
${CONF_LIMIT_WARNING_FILE} File to play as warning if 'y' is defined.
@@ -903,7 +903,7 @@ ${DUNDTECH} * The Technology of the result from a call to DUNDiLookup()
${DUNDDEST} * The Destination of the result from a call to DUNDiLookup()
\end{verbatim}
-\subsection{chan\_zap}
+\subsection{chan\_dahdi}
\begin{verbatim}
${ANI2} * The ANI2 Code provided by the network on the incoming call.
(ie, Code 29 identifies call as a Prison/Inmate Call)
diff --git a/doc/tex/configuration.tex b/doc/tex/configuration.tex
index 9257a86ba..712b6b308 100644
--- a/doc/tex/configuration.tex
+++ b/doc/tex/configuration.tex
@@ -20,7 +20,7 @@ Asterisk configuration files are defined as follows:
\end{verbatim}
\end{astlisting}
-In some files, (e.g. mgcp.conf, zapata.conf and agents.conf), the syntax
+In some files, (e.g. mgcp.conf, dahdi.conf and agents.conf), the syntax
is a bit different. In these files the syntax is as follows:
\begin{astlisting}
diff --git a/doc/tex/enum.tex b/doc/tex/enum.tex
index 9a3384d46..9341a6ea1 100644
--- a/doc/tex/enum.tex
+++ b/doc/tex/enum.tex
@@ -286,7 +286,7 @@ ENUMLOOKUP function calls.
;
exten => _011.,1,Set(enumresult=${ENUMLOOKUP(+${EXTEN:3})})
exten => _011.,n,Dial(SIP/${enumresult})
-exten => _011.,n,Dial(Zap/g1/${EXTEN})
+exten => _011.,n,Dial(DAHDI/g1/${EXTEN})
;
; end example 1
@@ -302,7 +302,7 @@ exten => _011.,n,While($["${counter}"<"${sipcount}"])
exten => _011.,n,Set(counter=$[${counter}+1])
exten => _011.,n,Dial(SIP/${ENUMLOOKUP(+${EXTEN:3},sip,,${counter})})
exten => _011.,n,EndWhile
-exten => _011.,n,Dial(Zap/g1/${EXTEN})
+exten => _011.,n,Dial(DAHDI/g1/${EXTEN})
;
; end example 2
@@ -312,7 +312,7 @@ exten => _011.,n,Dial(Zap/g1/${EXTEN})
; 14102241145 or 437203001721)
; Search through e164.arpa and then also search through e164.org
; to see if there are any valid SIP or IAX termination capabilities.
-; If none, send call out via Zap channel 1.
+; If none, send call out via DAHDI channel 1.
;
; Start first with e164.arpa zone...
;
@@ -346,8 +346,8 @@ exten => _X.,21,GotoIf($["${counter}"<"${iaxcount}"]?19:22)
;
; ...then send out PRI.
;
-exten => _X.,22,NoOp("No valid entries in e164.org for ${EXTEN} - sending out via Zap")
-exten => _X.,23,Dial(Zap/g1/${EXTEN})
+exten => _X.,22,NoOp("No valid entries in e164.org for ${EXTEN} - sending out via DAHDI")
+exten => _X.,23,Dial(DAHDI/g1/${EXTEN})
;
; end example 3
diff --git a/doc/tex/hardware.tex b/doc/tex/hardware.tex
index 30fa587aa..a678167de 100644
--- a/doc/tex/hardware.tex
+++ b/doc/tex/hardware.tex
@@ -4,12 +4,12 @@ A PBX is only really useful if you can get calls into it. Of course, you
can use Asterisk with VoIP calls (SIP, H.323, IAX, etc.), but you can also
talk to the real PSTN through various cards.
-Supported Hardware is divided into two general groups: Zaptel devices and
-non-zaptel devices. The Zaptel compatible hardware supports pseudo-TDM
-conferencing and all call features through chan\_zap, whereas non-zaptel
+Supported Hardware is divided into two general groups: DAHDI devices and
+non-DAHDI devices. The DAHDI compatible hardware supports pseudo-TDM
+conferencing and all call features through chan\_dahdi, whereas non-DAHDI
compatible hardware may have different features.
-\subsection{Zaptel compatible hardware}
+\subsection{DAHDI compatible hardware}
\begin{itemize}
\item Digium, Inc. (Primary Developer of Asterisk)
@@ -37,7 +37,7 @@ compatible hardware may have different features.
\end{itemize}
\end{itemize}
-\subsection{Non-zaptel compatible hardware}
+\subsection{Non-DAHDI compatible hardware}
\begin{itemize}
\item QuickNet, Inc.
diff --git a/doc/tex/localchannel.tex b/doc/tex/localchannel.tex
index ab42606f7..528421e0b 100644
--- a/doc/tex/localchannel.tex
+++ b/doc/tex/localchannel.tex
@@ -61,10 +61,10 @@ exten => s,4,Hangup
exten => 200,1,Dial(sip/blah)
exten => 200,102,VoiceMail(${EXTEN}@default)
-exten => 201,1,Dial(zap/1)
+exten => 201,1,Dial(DAHDI/1)
exten => 201,102,VoiceMail(${EXTEN}@default)
-exten => _0.,1,Dial(Zap/g1/${EXTEN:1}) ; outgoing calls with 0+number
+exten => _0.,1,Dial(DAHDI/g1/${EXTEN:1}) ; outgoing calls with 0+number
\end{verbatim}
\end{astlisting}
diff --git a/doc/tex/manager.tex b/doc/tex/manager.tex
index c3b567bd4..1f9fa1495 100644
--- a/doc/tex/manager.tex
+++ b/doc/tex/manager.tex
@@ -99,7 +99,7 @@ Redirect with ExtraChannel:
\begin{verbatim}
Action: Redirect
- Channel: Zap/1-1
+ Channel: DAHDI/1-1
ExtraChannel: SIP/3064-7e00 (varies)
Exten: 680
Priority: 1
@@ -147,7 +147,7 @@ the mailing list archives and the documentation page on the
Channel: <dialstring> -- Dialstring in Originate
Channel: <tech/[peer/username]> -- Channel in Registry events (SIP, IAX2)
Channel: <tech> -- Technology (SIP/IAX2 etc) in Registry events
- ChannelType: -- Tech: SIP, IAX2, ZAP, MGCP etc
+ ChannelType: -- Tech: SIP, IAX2, DAHDI, MGCP etc
Channel1: -- Link channel 1
Channel2: -- Link channel 2
ChanObjectType: -- "peer", "user"
diff --git a/doc/tex/privacy.tex b/doc/tex/privacy.tex
index f8bf698f6..17cf6a12b 100644
--- a/doc/tex/privacy.tex
+++ b/doc/tex/privacy.tex
@@ -169,11 +169,11 @@ There are some variations, and these will be explained in due course.
To use these options, set your Dial to something like:
\begin{astlisting}
\begin{verbatim}
-exten => 3,3,Dial(Zap/5r3&Zap/6r3,35,tmPA(beep))
+exten => 3,3,Dial(DAHDI/5r3&DAHDI/6r3,35,tmPA(beep))
or
-exten => 3,3,Dial(Zap/5r3&Zap/6r3,35,tmP(something)A(beep))
+exten => 3,3,Dial(DAHDI/5r3&DAHDI/6r3,35,tmP(something)A(beep))
or
-exten => 3,3,Dial(Zap/5r3&Zap/6r3,35,tmpA(beep))
+exten => 3,3,Dial(DAHDI/5r3&DAHDI/6r3,35,tmpA(beep))
\end{verbatim}
\end{astlisting}
diff --git a/doc/tex/queues-with-callback-members.tex b/doc/tex/queues-with-callback-members.tex
index 36e642845..30051eecf 100644
--- a/doc/tex/queues-with-callback-members.tex
+++ b/doc/tex/queues-with-callback-members.tex
@@ -466,7 +466,7 @@ context agents
In the above, the variables \$\{RAQUEL\}, etc stand for
actual devices to ring that person's
-phone (like Zap/37).
+phone (like DAHDI/37).
The 8010, 8011, and 8013 extensions are purely for transferring
incoming callers to queues. For instance, a customer service
diff --git a/doc/tex/security.tex b/doc/tex/security.tex
index 4eb4e1095..975f4bdde 100644
--- a/doc/tex/security.tex
+++ b/doc/tex/security.tex
@@ -57,15 +57,15 @@ in the appropriate section. A well designed PBX might look like this:
\begin{astlisting}
\begin{verbatim}
[longdistance]
-exten => _91NXXNXXXXXX,1,Dial(Zap/g2/${EXTEN:1})
+exten => _91NXXNXXXXXX,1,Dial(DAHDI/g2/${EXTEN:1})
include => local
[local]
-exten => _9NXXNXXX,1,Dial(Zap/g2/${EXTEN:1})
+exten => _9NXXNXXX,1,Dial(DAHDI/g2/${EXTEN:1})
include => default
[default]
-exten => 6123,Dial(Zap/1)
+exten => 6123,Dial(DAHDI/1)
\end{verbatim}
\end{astlisting}
diff --git a/doc/tex/sla.tex b/doc/tex/sla.tex
index afafd2ae4..844a4f2a7 100644
--- a/doc/tex/sla.tex
+++ b/doc/tex/sla.tex
@@ -23,7 +23,7 @@ IP channels.
An SLA system is built up of virtual trunks and stations mapped to real
Asterisk devices. The configuration for all of this is done in three
different files: extensions.conf, sla.conf, and the channel specific
-configuration file such as sip.conf or zapata.conf.
+configuration file such as sip.conf or dahdi.conf.
\subsection{Dialplan}
@@ -55,21 +55,21 @@ Please refer to the examples section for full dialplan samples for SLA.
An SLA trunk is a mapping between a virtual trunk and a real Asterisk device.
This device may be an analog FXO line, or something like a SIP trunk. A trunk
must be configured in two places. First, configure the device itself in the
-channel specific configuration file such as zapata.conf or sip.conf. Once the
+channel specific configuration file such as dahdi.conf or sip.conf. Once the
trunk is configured, then map it to an SLA trunk in sla.conf.
\begin{astlisting}
\begin{verbatim}
[line1]
type=trunk
-device=Zap/1
+device=DAHDI/1
\end{verbatim}
\end{astlisting}
Be sure to configure the trunk's context to be the same one that is set for the
"autocontext" option in sla.conf if automatic dialplan configuration is used.
-This would be done in the regular device entry in zapata.conf, sip.conf, etc.
+This would be done in the regular device entry in dahdi.conf, sip.conf, etc.
Note that the automatic dialplan generation creates the SLATrunk() extension
-at extension 's'. This is perfect for Zap channels that are FXO trunks, for
+at extension 's'. This is perfect for DAHDI channels that are FXO trunks, for
example. However, it may not be good enough for an IP trunk, since the call
coming in over the trunk may specify an actual number.
@@ -173,12 +173,12 @@ sla.conf:
\begin{verbatim}
[line1]
type=trunk
-device=Zap/1
+device=DAHDI/1
autocontext=line1
[line2]
type=trunk
-device=Zap/2
+device=DAHDI/2
autocontext=line2
[station](!)
@@ -199,8 +199,8 @@ device=SIP/station3
\end{astlisting}
With this configuration, the dialplan is generated automatically. The first
-zap channel should have its context set to "line1" and the second should be
-set to "line2" in zapata.conf. In sip.conf, station1, station2, and station3
+DAHDI channel should have its context set to "line1" and the second should be
+set to "line2" in dahdi.conf. In sip.conf, station1, station2, and station3
should all have their context set to "sla\_stations".
For reference, here is the automatically generated dialplan for this situation:
@@ -241,10 +241,10 @@ phone system. The voicemail box number used in this example is 1234, which
would be configured in voicemail.conf.
For this example, assume that there are 2 trunks and 3 stations. The trunks
-are Zap/1 and Zap/2. The stations are SIP/station1, SIP/station2, and
+are DAHDI/1 and DAHDI/2. The stations are SIP/station1, SIP/station2, and
SIP/station3.
-In zapata.conf, channel 1 has context=line1 and channel 2 has context=line2.
+In dahdi.conf, channel 1 has context=line1 and channel 2 has context=line2.
In sip.conf, all three stations are configured with context=sla\_stations.
@@ -297,12 +297,12 @@ exten => s,2,Macro(slaline,line2)
[line1_outbound]
exten => disa,1,Disa(no-password,line1_outbound)
-exten => _1NXXNXXXXXX,1,Dial(Zap/1/${EXTEN})
+exten => _1NXXNXXXXXX,1,Dial(DAHDI/1/${EXTEN})
exten => 8500,1,VoicemailMain(1234)
[line2_outbound]
exten => disa,1,Disa(no-password|line2_outbound)
-exten => _1NXXNXXXXXX,1,Dial(Zap/2/${EXTEN})
+exten => _1NXXNXXXXXX,1,Dial(DAHDI/2/${EXTEN})
exten => 8500,1,VoicemailMain(1234)
[sla_stations]
diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in
index d219a1eb7..99aa3ca2a 100644
--- a/include/asterisk/autoconfig.h.in
+++ b/include/asterisk/autoconfig.h.in
@@ -173,6 +173,12 @@
/* Define to indicate the ${CURSES_DESCRIP} library version */
#undef HAVE_CURSES_VERSION
+/* Define if your system has the DAHDI headers. */
+#undef HAVE_DAHDI
+
+/* Define DAHDI headers version */
+#undef HAVE_DAHDI_VERSION
+
/* Define to 1 if your system has /dev/urandom. */
#undef HAVE_DEV_URANDOM
@@ -1053,54 +1059,6 @@
/* Define to indicate the ${X11_DESCRIP} library version */
#undef HAVE_X11_VERSION
-/* Define this to indicate the ${ZAPTEL_DESCRIP} library */
-#undef HAVE_ZAPTEL
-
-/* Define if your system has the ZAPTEL_CHANALARMS headers. */
-#undef HAVE_ZAPTEL_CHANALARMS
-
-/* Define ZAPTEL_CHANALARMS headers version */
-#undef HAVE_ZAPTEL_CHANALARMS_VERSION
-
-/* Define if your system has the ZAPTEL_ECHOCANPARAMS headers. */
-#undef HAVE_ZAPTEL_ECHOCANPARAMS
-
-/* Define ZAPTEL_ECHOCANPARAMS headers version */
-#undef HAVE_ZAPTEL_ECHOCANPARAMS_VERSION
-
-/* Define if your system has the ZAPTEL_HWGAIN headers. */
-#undef HAVE_ZAPTEL_HWGAIN
-
-/* Define ZAPTEL_HWGAIN headers version */
-#undef HAVE_ZAPTEL_HWGAIN_VERSION
-
-/* Define if your system has the ZAPTEL_NEONMWI headers. */
-#undef HAVE_ZAPTEL_NEONMWI
-
-/* Define ZAPTEL_NEONMWI headers version */
-#undef HAVE_ZAPTEL_NEONMWI_VERSION
-
-/* Define if your system has the ZAPTEL_SIG_MTP2 headers. */
-#undef HAVE_ZAPTEL_SIG_MTP2
-
-/* Define ZAPTEL_SIG_MTP2 headers version */
-#undef HAVE_ZAPTEL_SIG_MTP2_VERSION
-
-/* Define if your system has the ZAPTEL_TRANSCODE headers. */
-#undef HAVE_ZAPTEL_TRANSCODE
-
-/* Define ZAPTEL_TRANSCODE headers version */
-#undef HAVE_ZAPTEL_TRANSCODE_VERSION
-
-/* Define to indicate the ${ZAPTEL_DESCRIP} library version */
-#undef HAVE_ZAPTEL_VERSION
-
-/* Define this to indicate the ${ZAPTEL_VLDTMF_DESCRIP} library */
-#undef HAVE_ZAPTEL_VLDTMF
-
-/* Define to indicate the ${ZAPTEL_VLDTMF_DESCRIP} library version */
-#undef HAVE_ZAPTEL_VLDTMF_VERSION
-
/* Define this to indicate the ${ZLIB_DESCRIP} library */
#undef HAVE_ZLIB
diff --git a/include/asterisk/channel.h b/include/asterisk/channel.h
index 96dc52c0f..1aa4a083e 100644
--- a/include/asterisk/channel.h
+++ b/include/asterisk/channel.h
@@ -28,7 +28,7 @@
A phone call through Asterisk consists of an incoming
connection and an outbound connection. Each call comes
in through a channel driver that supports one technology,
- like SIP, ZAP, IAX2 etc.
+ like SIP, DAHDI, IAX2 etc.
\par
Each channel driver, technology, has it's own private
channel or dialog structure, that is technology-dependent.
@@ -92,7 +92,7 @@
them together.
The conference bridge (meetme) handles several channels simultaneously
- with the support of an external timer (zaptel timer). This is used
+ with the support of an external timer (DAHDI timer). This is used
not only by the Conference application (meetme) but also by the
page application and the SLA system introduced in 1.4.
The conference bridge does not handle video.
@@ -224,10 +224,10 @@ struct ast_datastore {
*
* SIP and IAX2 has utf8 encoded Unicode caller ID names.
* In some cases, we also have an alternative (RPID) E.164 number that can be used
- * as caller ID on numeric E.164 phone networks (zaptel or SIP/IAX2 to pstn gateway).
+ * as caller ID on numeric E.164 phone networks (DAHDI or SIP/IAX2 to pstn gateway).
*
* \todo Implement settings for transliteration between UTF8 caller ID names in
- * to Ascii Caller ID's (Zaptel). Östen Åsklund might be transliterated into
+ * to Ascii Caller ID's (DAHDI). Östen Åsklund might be transliterated into
* Osten Asklund or Oesten Aasklund depending upon language and person...
* We need automatic routines for incoming calls and static settings for
* our own accounts.
@@ -249,7 +249,7 @@ struct ast_callerid {
See for examples:
\arg chan_iax2.c - The Inter-Asterisk exchange protocol
\arg chan_sip.c - The SIP channel driver
- \arg chan_zap.c - PSTN connectivity (TDM, PRI, T1/E1, FXO, FXS)
+ \arg chan_dahdi.c - PSTN connectivity (TDM, PRI, T1/E1, FXO, FXS)
If you develop your own channel driver, this is where you
tell the PBX at registration of your driver what properties
@@ -1423,7 +1423,7 @@ int ast_autoservice_start(struct ast_channel *chan);
*/
int ast_autoservice_stop(struct ast_channel *chan);
-/* If built with zaptel optimizations, force a scheduled expiration on the
+/* If built with dahdi optimizations, force a scheduled expiration on the
timer fd, at which point we call the callback function / data */
int ast_settimeout(struct ast_channel *c, int samples, int (*func)(const void *data), void *data);
diff --git a/include/asterisk/zapata.h b/include/asterisk/dahdi.h
index 50df73a58..0a37b891d 100644
--- a/include/asterisk/zapata.h
+++ b/include/asterisk/dahdi.h
@@ -18,31 +18,25 @@
*/
/*! \file
- * \brief Stub to find zaptel headers
+ * \brief Stub to find DAHDI headers
*
- * Stub to find the zaptel headers. The configure script will
- * define HAVE_ZAPTEL_VERSION according to what it has found.
- * Applications should include "zapata.h" and not (directly)
- * <foo/zaptel.h> or <foo/tonezone.h>.
+ * Stub to find the DAHDI headers. The configure script will
+ * define HAVE_DAHDI_VERSION according to what it has found.
+ * Applications should include "user.h" and not (directly)
+ * <foo/user.h>
* For the mapping of version numbers to location see below.
*
*/
-#ifndef _AST_ZAPATA_H
-#define _AST_ZAPATA_H
+#ifndef _AST_DAHDI_H
+#define _AST_DAHDI_H
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
#include <sys/ioctl.h>
-#if defined(HAVE_ZAPTEL_VERSION) && HAVE_ZAPTEL_VERSION < 100
-/* Very old versions of zaptel drivers on FreeBSD install in ${PREFIX} */
-#include <zaptel.h>
-#include <tonezone.h>
-#else
-/* newer versions install in ${PREFIX}/zaptel */
-#include <zaptel/zaptel.h>
-#include <zaptel/tonezone.h>
-#endif /* HAVE_ZAPTEL_VERSION < 100 */
+/* newer versions install in ${PREFIX}/dahdi */
+#include <dahdi/user.h>
+#include <dahdi/tonezone.h>
-#endif /* HAVE_ZAPTEL */
+#endif /* HAVE_DAHDI */
-#endif /* _AST_ZAPATA_H */
+#endif /* _AST_DAHDI_H */
diff --git a/include/asterisk/doxyref.h b/include/asterisk/doxyref.h
index 6fbe462ec..710da354c 100644
--- a/include/asterisk/doxyref.h
+++ b/include/asterisk/doxyref.h
@@ -225,7 +225,7 @@ DUNDi is not itself a Voice-over IP signaling or media protocol. Instead, it pub
* \arg \link Config_sip SIP configuration \endlink
* \arg \link Config_mgcp MGCP configuration \endlink
* \arg \link Config_rtp RTP configuration \endlink
- * \arg \link Config_zap Zaptel configuration \endlink
+ * \arg \link Config_dahdi DAHDI configuration \endlink
* \arg \link Config_oss OSS (sound card) configuration \endlink
* \arg \link Config_alsa ALSA (sound card) configuration \endlink
* \arg \link Config_agent Agent (proxy channel) configuration \endlink
@@ -339,10 +339,10 @@ DUNDi is not itself a Voice-over IP signaling or media protocol. Instead, it pub
* \verbinclude voicemail.conf.sample
*/
-/*! \page Config_zap Zaptel configuration
- * \section zapconf zapata.conf
- * \arg Implemented in \ref chan_zap.c
- * \verbinclude zapata.conf.sample
+/*! \page Config_dahdi DAHDI configuration
+ * \section dahdiconf dahdi.conf
+ * \arg Implemented in \ref chan_dahdi.c
+ * \verbinclude dahdi.conf.sample
*/
/*! \page Config_h323 H.323 channel driver information
diff --git a/include/asterisk/dsp.h b/include/asterisk/dsp.h
index 871a51ac9..5193ff4dd 100644
--- a/include/asterisk/dsp.h
+++ b/include/asterisk/dsp.h
@@ -143,7 +143,7 @@ int ast_dsp_init(void);
*
* This is called from ast_frame_free if AST_FRFLAG_FROM_DSP is set. This occurs
* because it is possible for the dsp to be freed while someone still holds a reference
- * to the frame that is in that dsp. This has been known to happen when the dsp on a Zap
+ * to the frame that is in that dsp. This has been known to happen when the dsp on a DAHDI
* channel detects a busy signal. The channel is hung up, and the application that read the
* frame to begin with still has a reference to the frame.
*
diff --git a/include/asterisk/options.h b/include/asterisk/options.h
index 3b639e6b9..c961d9175 100644
--- a/include/asterisk/options.h
+++ b/include/asterisk/options.h
@@ -29,6 +29,8 @@ extern "C" {
#define AST_CACHE_DIR_LEN 512
#define AST_FILENAME_MAX 80
+#define AST_CHANNEL_NAME 80 /*!< Max length of an ast_channel name */
+
/*! \ingroup main_options */
enum ast_option_flags {
@@ -70,7 +72,7 @@ enum ast_option_flags {
AST_OPT_FLAG_DONT_WARN = (1 << 18),
/*! End CDRs before the 'h' extension */
AST_OPT_FLAG_END_CDR_BEFORE_H_EXTEN = (1 << 19),
- /*! Use Zaptel Timing for generators if available */
+ /*! Use DAHDI Timing for generators if available */
AST_OPT_FLAG_INTERNAL_TIMING = (1 << 20),
/*! Always fork, even if verbose or debug settings are non-zero */
AST_OPT_FLAG_ALWAYS_FORK = (1 << 21),
@@ -139,6 +141,7 @@ extern struct timeval ast_lastreloadtime;
extern pid_t ast_mainpid;
extern char record_cache_dir[AST_CACHE_DIR_LEN];
+extern char dahdi_chan_name[AST_CHANNEL_NAME];
extern int ast_language_is_prefix;
diff --git a/main/asterisk.c b/main/asterisk.c
index 14fbbf98e..5651bbd68 100644
--- a/main/asterisk.c
+++ b/main/asterisk.c
@@ -86,7 +86,7 @@ int daemon(int, int); /* defined in libresolv of all places */
#include <sys/loadavg.h>
#endif
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#ifdef linux
#include <sys/prctl.h>
@@ -166,6 +166,7 @@ int option_maxfiles; /*!< Max number of open file handles (files, sockets) */
#if defined(HAVE_SYSINFO)
long option_minmemfree; /*!< Minimum amount of free system memory - stop accepting calls if free memory falls below this watermark */
#endif
+char dahdi_chan_name[AST_CHANNEL_NAME] = "ZAP";
/*! @} */
@@ -2560,7 +2561,7 @@ static int show_cli_help(void) {
printf(" -g Dump core in case of a crash\n");
printf(" -h This help screen\n");
printf(" -i Initialize crypto keys at startup\n");
- printf(" -I Enable internal timing if Zaptel timer is available\n");
+ printf(" -I Enable internal timing if DAHDI timer is available\n");
printf(" -L <load> Limit the maximum load average before rejecting new calls\n");
printf(" -M <value> Limit the maximum number of calls to the specified value\n");
printf(" -m Mute debugging and console output on the console\n");
@@ -2781,6 +2782,10 @@ static void ast_readconfig(void)
option_minmemfree = 0;
}
#endif
+ } else if (!strcasecmp(v->name, "dahdichanname")) {
+ if (!strcasecmp(v->value, "yes")) {
+ ast_copy_string(dahdi_chan_name, "DAHDI", sizeof(dahdi_chan_name));
+ }
} else if (!strcasecmp(v->name, "entityid")) {
struct ast_eid tmp_eid;
if (!ast_str_to_eid(&tmp_eid, v->value)) {
@@ -3294,28 +3299,28 @@ int main(int argc, char *argv[])
printf("%s", term_quit());
exit(1);
}
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
{
int fd;
int x = 160;
- fd = open("/dev/zap/timer", O_RDWR);
+ fd = open("/dev/dahdi/timer", O_RDWR);
if (fd >= 0) {
- if (ioctl(fd, ZT_TIMERCONFIG, &x)) {
- ast_log(LOG_ERROR, "You have Zaptel built and drivers loaded, but the Zaptel timer test failed to set ZT_TIMERCONFIG to %d.\n", x);
+ if (ioctl(fd, DAHDI_TIMERCONFIG, &x)) {
+ ast_log(LOG_ERROR, "You have DAHDI built and drivers loaded, but the DAHDI timer test failed to set DAHDI_TIMERCONFIG to %d.\n", x);
exit(1);
}
if ((x = ast_wait_for_input(fd, 300)) < 0) {
- ast_log(LOG_ERROR, "You have Zaptel built and drivers loaded, but the Zaptel timer could not be polled during the Zaptel timer test.\n");
+ ast_log(LOG_ERROR, "You have DAHDI built and drivers loaded, but the DAHDI timer could not be polled during the DAHDI timer test.\n");
exit(1);
}
if (!x) {
- const char zaptel_timer_error[] = {
- "Asterisk has detected a problem with your Zaptel configuration and will shutdown for your protection. You have options:"
- "\n\t1. You only have to compile Zaptel support into Asterisk if you need it. One option is to recompile without Zaptel support."
- "\n\t2. You only have to load Zaptel drivers if you want to take advantage of Zaptel services. One option is to unload zaptel modules if you don't need them."
- "\n\t3. If you need Zaptel services, you must correctly configure Zaptel."
+ const char dahdi_timer_error[] = {
+ "Asterisk has detected a problem with your DAHDI configuration and will shutdown for your protection. You have options:"
+ "\n\t1. You only have to compile DAHDI support into Asterisk if you need it. One option is to recompile without DAHDI support."
+ "\n\t2. You only have to load DAHDI drivers if you want to take advantage of DAHDI services. One option is to unload DAHDI modules if you don't need them."
+ "\n\t3. If you need DAHDI services, you must correctly configure DAHDI."
};
- ast_log(LOG_ERROR, "%s\n", zaptel_timer_error);
+ ast_log(LOG_ERROR, "%s\n", dahdi_timer_error);
usleep(100);
exit(1);
}
diff --git a/main/channel.c b/main/channel.c
index 287fcdda8..4f97c1008 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -34,7 +34,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <math.h>
#include "asterisk/paths.h" /* use ast_config_AST_SYSTEM_NAME */
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/pbx.h"
#include "asterisk/frame.h"
@@ -808,13 +808,13 @@ struct ast_channel *ast_channel_alloc(int needqueue, int state, const char *cid_
#endif
}
-#ifdef HAVE_ZAPTEL
- tmp->timingfd = open("/dev/zap/timer", O_RDWR);
+#ifdef HAVE_DAHDI
+ tmp->timingfd = open("/dev/dahdi/timer", O_RDWR);
if (tmp->timingfd > -1) {
/* Check if timing interface supports new
ping/pong scheme */
flags = 1;
- if (!ioctl(tmp->timingfd, ZT_TIMERPONG, &flags))
+ if (!ioctl(tmp->timingfd, DAHDI_TIMERPONG, &flags))
needqueue = 0;
}
#else
@@ -825,7 +825,7 @@ struct ast_channel *ast_channel_alloc(int needqueue, int state, const char *cid_
if (pipe(tmp->alertpipe)) {
ast_log(LOG_WARNING, "Channel allocation failed: Can't create alert pipe!\n");
alertpipe_failed:
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
if (tmp->timingfd > -1)
close(tmp->timingfd);
#endif
@@ -1007,9 +1007,9 @@ int ast_queue_frame(struct ast_channel *chan, struct ast_frame *fin)
if (write(chan->alertpipe[1], &blah, sizeof(blah)) != sizeof(blah))
ast_log(LOG_WARNING, "Unable to write to alert pipe on %s, frametype/subclass %d/%d (qlen = %d): %s!\n",
chan->name, f->frametype, f->subclass, qlen, strerror(errno));
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
} else if (chan->timingfd > -1) {
- ioctl(chan->timingfd, ZT_TIMERPING, &blah);
+ ioctl(chan->timingfd, DAHDI_TIMERPING, &blah);
#endif
} else if (ast_test_flag(chan, AST_FLAG_BLOCKING)) {
pthread_kill(chan->blocker, SIGURG);
@@ -2184,14 +2184,14 @@ int ast_waitfordigit(struct ast_channel *c, int ms)
int ast_settimeout(struct ast_channel *c, int samples, int (*func)(const void *data), void *data)
{
int res = -1;
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
if (c->timingfd > -1) {
if (!func) {
samples = 0;
data = 0;
}
ast_debug(1, "Scheduling timer at %d sample intervals\n", samples);
- res = ioctl(c->timingfd, ZT_TIMERCONFIG, &samples);
+ res = ioctl(c->timingfd, DAHDI_TIMERCONFIG, &samples);
c->timingfunc = func;
c->timingdata = data;
}
@@ -2411,26 +2411,26 @@ static struct ast_frame *__ast_read(struct ast_channel *chan, int dropaudio)
read(chan->alertpipe[0], &blah, sizeof(blah));
}
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
if (chan->timingfd > -1 && chan->fdno == AST_TIMING_FD && ast_test_flag(chan, AST_FLAG_EXCEPTION)) {
int res;
ast_clear_flag(chan, AST_FLAG_EXCEPTION);
blah = -1;
/* IF we can't get event, assume it's an expired as-per the old interface */
- res = ioctl(chan->timingfd, ZT_GETEVENT, &blah);
+ res = ioctl(chan->timingfd, DAHDI_GETEVENT, &blah);
if (res)
- blah = ZT_EVENT_TIMER_EXPIRED;
+ blah = DAHDI_EVENT_TIMER_EXPIRED;
- if (blah == ZT_EVENT_TIMER_PING) {
+ if (blah == DAHDI_EVENT_TIMER_PING) {
if (AST_LIST_EMPTY(&chan->readq) || !AST_LIST_NEXT(AST_LIST_FIRST(&chan->readq), frame_list)) {
/* Acknowledge PONG unless we need it again */
- if (ioctl(chan->timingfd, ZT_TIMERPONG, &blah)) {
+ if (ioctl(chan->timingfd, DAHDI_TIMERPONG, &blah)) {
ast_log(LOG_WARNING, "Failed to pong timer on '%s': %s\n", chan->name, strerror(errno));
}
}
- } else if (blah == ZT_EVENT_TIMER_EXPIRED) {
- ioctl(chan->timingfd, ZT_TIMERACK, &blah);
+ } else if (blah == DAHDI_EVENT_TIMER_EXPIRED) {
+ ioctl(chan->timingfd, DAHDI_TIMERACK, &blah);
if (chan->timingfunc) {
/* save a copy of func/data before unlocking the channel */
int (*func)(const void *) = chan->timingfunc;
@@ -2439,7 +2439,7 @@ static struct ast_frame *__ast_read(struct ast_channel *chan, int dropaudio)
func(data);
} else {
blah = 0;
- ioctl(chan->timingfd, ZT_TIMERCONFIG, &blah);
+ ioctl(chan->timingfd, DAHDI_TIMERCONFIG, &blah);
chan->timingdata = NULL;
ast_channel_unlock(chan);
}
@@ -3433,6 +3433,11 @@ struct ast_channel *ast_request(const char *type, int format, void *data, int *c
return NULL;
}
+ if (!strcasecmp(type, "Zap")) {
+ type = "DAHDI";
+ ast_log(LOG_NOTICE, "Zap interface translated to DAHDI.\n");
+ }
+
AST_LIST_TRAVERSE(&backends, chan, list) {
if (strcasecmp(type, chan->tech->type))
continue;
diff --git a/main/features.c b/main/features.c
index 3c66769e6..1855ca47b 100644
--- a/main/features.c
+++ b/main/features.c
@@ -2390,7 +2390,7 @@ int manage_parkinglot(struct ast_parkinglot *curlot, fd_set *rfds, fd_set *efds,
if (pu->peername[0]) {
char *peername = ast_strdupa(pu->peername);
char *cp = strrchr(peername, '-');
- char peername_flat[AST_MAX_EXTENSION]; /* using something like Zap/52 for an extension name is NOT a good idea */
+ char peername_flat[AST_MAX_EXTENSION]; /* using something like DAHDI/52 for an extension name is NOT a good idea */
int i;
if (cp)
diff --git a/main/file.c b/main/file.c
index 86efb6000..15b6a5d88 100644
--- a/main/file.c
+++ b/main/file.c
@@ -659,11 +659,11 @@ static enum fsread_res ast_readaudio_callback(struct ast_filestream *s)
}
}
if (whennext != s->lasttimeout) {
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
if (s->owner->timingfd > -1) {
int zap_timer_samples = whennext;
int rate;
- /* whennext is in samples, but zaptel timers operate in 8 kHz samples. */
+ /* whennext is in samples, but DAHDI timers operate in 8 kHz samples. */
if ((rate = ast_format_rate(s->fmt->format)) != 8000) {
float factor;
factor = ((float) rate) / ((float) 8000.0);
@@ -681,7 +681,7 @@ static enum fsread_res ast_readaudio_callback(struct ast_filestream *s)
return_failure:
s->owner->streamid = -1;
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
ast_settimeout(s->owner, 0, NULL, NULL);
#endif
return FSREAD_FAILURE;
@@ -792,7 +792,7 @@ int ast_closestream(struct ast_filestream *f)
if (f->fmt->format & AST_FORMAT_AUDIO_MASK) {
f->owner->stream = NULL;
AST_SCHED_DEL(f->owner->sched, f->owner->streamid);
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
ast_settimeout(f->owner, 0, NULL, NULL);
#endif
} else {
diff --git a/main/loader.c b/main/loader.c
index b5a451617..990d2fb85 100644
--- a/main/loader.c
+++ b/main/loader.c
@@ -758,6 +758,23 @@ static struct load_order_entry *add_to_load_order(const char *resource, struct l
return order;
}
+
+static int translate_module_name(const char *oldname, char *newname)
+{
+ if (!strcasecmp(oldname, "app_zapbarge.so"))
+ ast_copy_string(newname, "app_dahdibarge.so", 18);
+ else if(!strcasecmp(oldname, "app_zapras.so"))
+ ast_copy_string(newname, "app_dahdiras.so", 16);
+ else if(!strcasecmp(oldname, "app_zapscan.so"))
+ ast_copy_string(newname, "app_dahdiscan.so", 17);
+ else if(!strcasecmp(oldname, "codec_zap.so"))
+ ast_copy_string(newname, "codec_dahdi.so", 16);
+ else
+ return -1; /* no use for newname, oldname is fine */
+
+ return 0;
+}
+
int load_modules(unsigned int preload_only)
{
struct ast_config *cfg;
@@ -769,6 +786,9 @@ int load_modules(unsigned int preload_only)
int res = 0;
struct ast_flags config_flags = { 0 };
int modulecount = 0;
+
+ int translate_status;
+ char newname[18]; /* although this would normally be 80, max length in translate_module_name is 18 */
#ifdef LOADABLE_MODULES
struct dirent *dirent;
DIR *dir;
@@ -796,8 +816,12 @@ int load_modules(unsigned int preload_only)
/* first, find all the modules we have been explicitly requested to load */
for (v = ast_variable_browse(cfg, "modules"); v; v = v->next) {
- if (!strcasecmp(v->name, preload_only ? "preload" : "load"))
- add_to_load_order(v->value, &load_order);
+ if (!strcasecmp(v->name, preload_only ? "preload" : "load")) {
+ translate_status = translate_module_name(v->value, newname);
+ if (!translate_status)
+ ast_log(LOG_WARNING, "Use of old module name %s is deprecated, please use %s instead.\n", v->value, newname);
+ add_to_load_order(translate_status ? v->value : newname, &load_order);
+ }
}
/* check if 'autoload' is on */
@@ -853,7 +877,10 @@ int load_modules(unsigned int preload_only)
continue;
AST_LIST_TRAVERSE_SAFE_BEGIN(&load_order, order, entry) {
- if (!resource_name_match(order->resource, v->value)) {
+ translate_status = translate_module_name(v->value, newname);
+ if (!resource_name_match(order->resource, translate_status ? v->value : newname)) {
+ if (!translate_status)
+ ast_log(LOG_WARNING, "Use of old module name %s is deprecated, please use %s instead.\n", v->value, newname);
AST_LIST_REMOVE_CURRENT(entry);
ast_free(order->resource);
ast_free(order);
diff --git a/makeopts.in b/makeopts.in
index 9fd9cc5e2..b1ac9d4e4 100644
--- a/makeopts.in
+++ b/makeopts.in
@@ -211,7 +211,7 @@ VORBIS_LIB=@VORBIS_LIB@
VPBAPI_INCLUDE=@VPB_INCLUDE@
VPBAPI_LIB=@VPB_LIB@
-ZAPTEL_INCLUDE=@ZAPTEL_INCLUDE@
+DAHDI_INCLUDE=@DAHDI_INCLUDE@
ZLIB_INCLUDE=@ZLIB_INCLUDE@
ZLIB_LIB=@ZLIB_LIB@
diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
index a10978b36..dddd8ef5c 100644
--- a/pbx/pbx_config.c
+++ b/pbx/pbx_config.c
@@ -1548,11 +1548,11 @@ static void pbx_load_users(void)
{
struct ast_config *cfg;
char *cat, *chan;
- const char *zapchan;
+ const char *dahdichan;
const char *hasexten;
char tmp[256];
char iface[256];
- char zapcopy[256];
+ char dahdicopy[256];
char *c;
int len;
int hasvoicemail;
@@ -1585,12 +1585,22 @@ static void pbx_load_users(void)
if (hasexten && !ast_true(hasexten))
continue;
hasvoicemail = ast_true(ast_config_option(cfg, cat, "hasvoicemail"));
- zapchan = ast_variable_retrieve(cfg, cat, "zapchan");
- if (!zapchan)
- zapchan = ast_variable_retrieve(cfg, "general", "zapchan");
- if (!ast_strlen_zero(zapchan)) {
- ast_copy_string(zapcopy, zapchan, sizeof(zapcopy));
- c = zapcopy;
+ dahdichan = ast_variable_retrieve(cfg, cat, "dahdichan");
+ if (!dahdichan)
+ dahdichan = ast_variable_retrieve(cfg, "general", "dahdichan");
+ if (!dahdichan) {
+ /* no dahdichan, but look for zapchan too */
+ dahdichan = ast_variable_retrieve(cfg, cat, "zapchan");
+ if (!dahdichan) {
+ dahdichan = ast_variable_retrieve(cfg, "general", "zapchan");
+ }
+ if (!ast_strlen_zero(dahdichan)) {
+ ast_log(LOG_WARNING, "Use of zapchan in users.conf is deprecated. Please update configuration to use dahdichan instead.\n");
+ }
+ }
+ if (!ast_strlen_zero(dahdichan)) {
+ ast_copy_string(dahdicopy, dahdichan, sizeof(dahdicopy));
+ c = dahdicopy;
chan = strsep(&c, ",");
while (chan) {
if (sscanf(chan, "%d-%d", &start, &finish) == 2) {
@@ -1607,7 +1617,7 @@ static void pbx_load_users(void)
start = x;
}
for (x = start; x <= finish; x++) {
- snprintf(tmp, sizeof(tmp), "Zap/%d", x);
+ snprintf(tmp, sizeof(tmp), "DAHDI/%d", x);
append_interface(iface, sizeof(iface), tmp);
}
chan = strsep(&c, ",");
diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c
index dffe71986..a523a0395 100644
--- a/res/res_musiconhold.c
+++ b/res/res_musiconhold.c
@@ -27,7 +27,7 @@
/*** MODULEINFO
<conflict>win32</conflict>
- <use>zaptel</use>
+ <use>dahdi</use>
***/
#include "asterisk.h"
@@ -46,7 +46,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <thread.h>
#endif
-#include "asterisk/zapata.h"
+#include "asterisk/dahdi.h"
#include "asterisk/lock.h"
#include "asterisk/file.h"
@@ -984,7 +984,7 @@ static int moh_diff(struct mohclass *old, struct mohclass *new)
static int moh_register(struct mohclass *moh, int reload)
{
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
int x;
#endif
struct mohclass *mohclass = NULL;
@@ -1028,15 +1028,15 @@ static int moh_register(struct mohclass *moh, int reload)
ast_set_flag(moh, MOH_QUIET);
moh->srcfd = -1;
-#ifdef HAVE_ZAPTEL
- /* Open /dev/zap/pseudo for timing... Is
+#ifdef HAVE_DAHDI
+ /* Open /dev/dahdi/pseudo for timing... Is
there a better, yet reliable way to do this? */
- moh->pseudofd = open("/dev/zap/pseudo", O_RDONLY);
+ moh->pseudofd = open("/dev/dahdi/pseudo", O_RDONLY);
if (moh->pseudofd < 0) {
ast_log(LOG_WARNING, "Unable to open pseudo channel for timing... Sound may be choppy.\n");
} else {
x = 320;
- ioctl(moh->pseudofd, ZT_SET_BLOCKSIZE, &x);
+ ioctl(moh->pseudofd, DAHDI_SET_BLOCKSIZE, &x);
}
#else
moh->pseudofd = -1;
@@ -1105,7 +1105,7 @@ static int local_ast_moh_start(struct ast_channel *chan, const char *mclass, con
struct ast_variable *var = NULL;
struct ast_variable *tmp = NULL;
struct moh_files_state *state = chan->music_state;
-#ifdef HAVE_ZAPTEL
+#ifdef HAVE_DAHDI
int x;
#endif
@@ -1228,15 +1228,15 @@ static int local_ast_moh_start(struct ast_channel *chan, const char *mclass, con
ast_set_flag(mohclass, MOH_QUIET);
mohclass->srcfd = -1;
-#ifdef HAVE_ZAPTEL
- /* Open /dev/zap/pseudo for timing... Is
+#ifdef HAVE_DAHDI
+ /* Open /dev/dahdi/pseudo for timing... Is
there a better, yet reliable way to do this? */
- mohclass->pseudofd = open("/dev/zap/pseudo", O_RDONLY);
+ mohclass->pseudofd = open("/dev/dahdi/pseudo", O_RDONLY);
if (mohclass->pseudofd < 0) {
ast_log(LOG_WARNING, "Unable to open pseudo channel for timing... Sound may be choppy.\n");
} else {
x = 320;
- ioctl(mohclass->pseudofd, ZT_SET_BLOCKSIZE, &x);
+ ioctl(mohclass->pseudofd, DAHDI_SET_BLOCKSIZE, &x);
}
#else
mohclass->pseudofd = -1;
diff --git a/utils/extconf.c b/utils/extconf.c
index 5934b5c8c..4295abec5 100644
--- a/utils/extconf.c
+++ b/utils/extconf.c
@@ -1809,7 +1809,7 @@ enum ast_option_flags {
AST_OPT_FLAG_DONT_WARN = (1 << 18),
/*! End CDRs before the 'h' extension */
AST_OPT_FLAG_END_CDR_BEFORE_H_EXTEN = (1 << 19),
- /*! Use Zaptel Timing for generators if available */
+ /*! Use DAHDI Timing for generators if available */
AST_OPT_FLAG_INTERNAL_TIMING = (1 << 20),
/*! Always fork, even if verbose or debug settings are non-zero */
AST_OPT_FLAG_ALWAYS_FORK = (1 << 21),