Added the feature, that environment variables are allowed in the config files.

master
luethje 26 years ago
parent 0a1cb4392b
commit d1997beda6
  1. 27
      HOWTO
  2. 11
      isdnlog/Makefile.in
  3. 43
      isdnlog/README
  4. 1
      isdnlog/configure
  5. 20
      isdnlog/isdnconf/isdnconf.c
  6. 31
      isdnlog/isdnlog/start_prog.c
  7. 5
      isdnlog/tools/isdnconf.c
  8. 34
      lib/README.isdntools
  9. 39
      lib/conffile.c
  10. 6
      lib/conffile.h
  11. 113
      lib/libtools.c
  12. 8
      lib/libtools.h
  13. 2
      scripts/defconfig

27
HOWTO

@ -67,6 +67,8 @@ Mit folgenden Schritten kommt man in den Genuss von isdnlog-2.99.2:
eine SQL-Relation eintragen. Dies darf nur eingeschaltet werden,
wenn postgres95 einsatzbereit installiert ist!
Zur Zeit sind die naechsten beiden Schalter ueberfluessig, da der
xisdn voruebergehend aus der Distribution genommen wurde!!!!
# export NEED_GDBM=1
Falls man _nicht_ LIBAREA=1 eingeschaltet hat, und zudem
keine Datei "/usr/lib/libdbm.a", dafuer aber "/usr/lib/libgdbm.a"
@ -122,14 +124,14 @@ Mit folgenden Schritten kommt man in den Genuss von isdnlog-2.99.2:
Der neue isdnlog arbeitet mit einer vollstaendig anderen
Konfigurationsdatei.
Diese wird automatisch aus der bestehenden generiert.
Es wird das alte Verzeichnis "etc/isdnlog" nach "etc/isdn" umkopiert.
isdnlog-2.99.2 versucht daher beim ersten Start, die alte
Konfigurationsdatei "isdnlog.conf" in die neue Syntax umzuwandeln.
Damit isdnlog-2.99.2 die alte Konfigurationsdatei finden kann, muss diese
evtl. in das in "policy.h" unter "I4LCONFDIR" angegebene Verzeichnis
kopiert werden:
$ cp /etc/isdnlog/isdnlog.conf /etc/isdn
Dieses passiert automatisch mit make install
Es werden in dieser Version alle Telefonnummern in der Datei callerid.conf
ausgelagert, so dass die isdn.conf sehr klien wird.
6. Erster Start des neuen isdnlog:
@ -196,11 +198,10 @@ Mit folgenden Schritten kommt man in den Genuss von isdnlog-2.99.2:
Daher muessen diese von Hand uebernommen werden.
In der Section [GLOBAL]
muessen die beiden Eintraege
werden automatisch mit make install die beiden Eintraege
COUNTRYCODE = +49
AREACODE = xxxx
eingefuegt werden - bei AREACODE ist die eigene Vorwahl _ohne_
vorlaufende "0" einzutragen.
eingefuegt, wenn vorher diese Daten im Menue eingegeben wurden.
Nachdem die neue Konfigurationsdatei fuer gut befunden wurde, sollte
die alte Konfigurationsdatei "isdnlog.conf" geloescht werden, da
@ -212,12 +213,13 @@ Mit folgenden Schritten kommt man in den Genuss von isdnlog-2.99.2:
ausstossen! Nun ist es endlich an der Zeit,
7.1 Es gibt nun zwei neue Konfigurationsdateien:
7.1 Es gibt nun zwei (oder sogar drei!?!) neue Konfigurationsdateien:
/etc/isdn/isdn.conf
/etc/isdn/callerid.conf
~/.isdn
Wobei sich in der "isdn.conf" nur noch die rein auf isdnlog beziehenden
Eintraege befinden, und in der "callerid.conf" die von isdnlog und
vbox gemeinsam verwendeten Eintraege!
(bald!?!) vbox gemeinsam verwendeten Eintraege!
8. Die neuen Features von isdnlog erkunden
@ -255,6 +257,9 @@ Mit folgenden Schritten kommt man in den Genuss von isdnlog-2.99.2:
- ESTIC
diese Library, weitere Applikationen werden sicherlich folgen!
Wer unbedingt auf seine AVON besteht, kann diese natuerlich
weiterverwenden. Dieses muss dann allerdings im Menu angegeben werden.
- chargeint (auflegen kurz vor dem naechsten Gebuehrenimpuls) ist
mittlerweile offizieller Bestandteil von isdn4linux, und damit
aus dem "Patch" Stadium heraus. Die Steuerung durch isdnlog

@ -1,4 +1,4 @@
## $Id: Makefile.in,v 1.10 1997/04/08 21:56:42 luethje Exp $
## $Id: Makefile.in,v 1.11 1997/04/10 23:32:04 luethje Exp $
##
## ISDN accounting for isdn4linux.
##
@ -19,6 +19,9 @@
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
##
## $Log: Makefile.in,v $
## Revision 1.11 1997/04/10 23:32:04 luethje
## Added the feature, that environment variables are allowed in the config files.
##
## Revision 1.10 1997/04/08 21:56:42 luethje
## Create the file isdn.conf
## some bug fixes for pid and lock file
@ -106,6 +109,7 @@ LIBISDNDIR := @LIBISDNDIR@
I4LCONFDIR := @I4LCONFDIR@
CONFFILE := @CONFFILE@
OLDCONFDIR := @OLDCONFDIR@
OLDCONFFILE := @OLDCONFFILE@
LIBAREA := @LIBAREA@
RUNDIR := @RUNDIR@
DBMLIB := @DBMLIB@
@ -162,7 +166,7 @@ SERVICEFILE = /etc/services
# DON'T EDIT BELOW THIS LINE
######################################################################
VERSION = 2.99.6
VERSION = 2.99.7
ifeq ($(POSTGRES),1)
DEFS += -DPOSTGRES
@ -253,7 +257,8 @@ installdirs: rootperm
install: depend all rootperm installdirs
if ps -x | fgrep $(ISDNLOG) >/dev/null; then kill `cat $(RUNDIR)/isdnlog.pid`; fi
-test ! -d $(OLDCONFDIR) || (cp -auv $(OLDCONFDIR)/* $(I4LCONFDIR) \
&& $(ISDNREP) 1>/dev/null 2>&1)
&& $(ISDNREP) 1>/dev/null 2>&1) \
&& mv $(I4LCONFDIR)/$(OLDCONFFILE) $(I4LCONFDIR)/$(OLDCONFFILE).old
$(GENCONF) $(I4LCONFDIR)/$(CONFFILE)
$(INSTALL_BIN) $(ISDNLOG) $(SBINDIR)
$(INSTALL_BIN) $(ISDNREP) $(BINDIR)

@ -1,3 +1,6 @@
# Lock und PID-Files
# Beschreibung, was bei der Installation genau gemacht werden muss
# (isdn.conf vorhanden oder neu)
ISDNLOG - Version 3.0 - 31-Mar-97 22:09
@ -754,6 +757,35 @@ anlegen kann, wo auch die Nummer nur beim isdnrep angezeigt werden.
Es koennen hier aber die [MSN]-Eintraege ueberschrieben werden fuer die
beiden Programme isdnconf und isdnrep.
Es koennen hier Variablen verwendet werden, die entweder in der isdn.conf
gesetzt wurden oder vorher (z.b. auf Shellebene).
In den Dateien "callerid.conf" und "~/.isdn" koennen keine Variablen mehr
gesetzt werden. Das bedeutet also, dass es dort keine Sektion [VARIABLES]
gibt.
Eine Variable wird allerdings nur ab dem Gleichheitszeichen ersetzt.
Wenn man an die Variable noch etwas anhaengen will, dann muss man den
Variablenname in geschweifte Klammern setzen.
Im Gegensatz zur frueheren Version koennen die Variablen an beliebiger Stelle
kommen.
Beispiele:
[$num] # wobei num=NUMBER ist geht nicht!!!!
$alias=fred # wobei alias=ALIAS ist geht nicht!!!!
[NUMBER]
NUMBER=$MSN1 # MSN1=1234 -> "1234"
ALIAS=${PHONE}1 # PHONE=Telefon -> "Telefon1"
...
PROGRAM= auplay ${MY_PATH}ring.au # MY_PATH=/home/fred/ -> "/home/fred/ring.au"
PROGRAM= auplay $MY_PATHring.au # geht nicht!!
PROGRAM= auplay ${MY_PATH}ring.au ${SOUND_PATH}/$RING_FILE
# SOUND_PATH=/home/sound RING_FILE=ring.au -> "/home/sound/ring.au"
...
Es gibt bestimmte Regeln, nachdem Eintraege aus der Datei "~/.isdn" die
Eintraege der "callerid.conf" ueberschreiben:
@ -1278,9 +1310,6 @@ Info-Arg
Hier wird das Info-Argument angegeben. Es steht dort der gesamte zu
startende Befehl
Es koennen hier Variablen verwendet werden, die entweder in der isdn.conf
gesetzt wurden oder vorher (z.b. auf Shellebene).
Es gibt aber drei zusaetzliche Variablen, die verwendet werden duerfen:
$1 : Sind die Flags, die den Programmstart ausgeloest haben.
@ -1336,14 +1365,6 @@ Ausgehendes Gspraech (O), Ereignis CONNECT (C)
Nummer des Anrufenden (also Meine)
Nummer des Angerufenden
Eine Variable muss immer am Anfang eines Argumentes stehen. Also
"/bin$PROG" und "/bin${MYPATH}prog" gehen nicht.
Wenn ich an die Variable noch etwas anhaengen will, dann muss ich den
Variablenname in geschweifte Klammern setzen:
"${MY_PATH}/ring.au"
"$MY_PATH/ring.au" geht nicht.
Die Variablen von isdnlog ($1, $2, ..) kann man nicht in geschweiften Klammern
setzen. Also auch nicht anhaengen.

1
isdnlog/configure vendored

@ -1950,6 +1950,7 @@ s%@RUNDIR@%$RUNDIR%g
s%@SERV_PORT@%$SERV_PORT%g
s%@USERFILE@%$USERFILE%g
s%@OLDCONFDIR@%$OLDCONFDIR%g
s%@OLDCONFFILE@%$OLDCONFFILE%g
s%@CONFFILE@%$CONFIG_CONFFILE%g
s%@LOGFILE@%$LOGFILE%g
s%@COUNTRYCODE@%$COUNTRYCODE%g

@ -1,4 +1,4 @@
/* $Id: isdnconf.c,v 1.4 1997/04/06 21:06:08 luethje Exp $
/* $Id: isdnconf.c,v 1.5 1997/04/10 23:32:15 luethje Exp $
*
* ISDN accounting for isdn4linux. (Report-module)
*
@ -19,6 +19,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: isdnconf.c,v $
* Revision 1.5 1997/04/10 23:32:15 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.4 1997/04/06 21:06:08 luethje
* problem with empty/not existing file resolved.
*
@ -284,7 +287,7 @@ int look_data(section **conf_dat)
{
int Cnt = 0;
auto entry *CEPtr;
char *_number = NULL, *_alias;
char *_number = NULL, *_alias = NULL;
char _si[SHORT_STRING_SIZE];
section *old_conf_dat = NULL;
@ -297,18 +300,20 @@ int look_data(section **conf_dat)
{
int Ret = 0;
free(_number);
free(_alias);
_number = _alias = NULL;
_si[0] = '\0';
if ((CEPtr = Get_Entry((*conf_dat)->entries,CONF_ENT_NUM)) != NULL)
_number = CEPtr->value;
_number = strdup(Replace_Variable(CEPtr->value));
if ((CEPtr = Get_Entry((*conf_dat)->entries,CONF_ENT_ALIAS)) != NULL)
_alias = CEPtr->value;
_alias = strdup(Replace_Variable(CEPtr->value));
if ((CEPtr = Get_Entry((*conf_dat)->entries,CONF_ENT_SI)) != NULL &&
CEPtr->value != NULL)
sprintf(_si,"%ld",strtol(CEPtr->value, NIL, 0));
sprintf(_si,"%ld",strtol(Replace_Variable(CEPtr->value), NIL, 0));
if (and)
Ret = 1;
@ -371,6 +376,8 @@ int look_data(section **conf_dat)
if (Cnt == 0 && quiet && !del)
find_data(NULL,_number,*conf_dat);
free(_number);
free(_alias);
return Cnt;
}
@ -629,6 +636,9 @@ int main(int argc, char *argv[], char *envp[])
exit(1);
}
if (!add && !del && Replace_Variables(conf_dat))
exit(8);
if (add)
Cnt = add_data(&conf_dat);
else

@ -1,4 +1,4 @@
/* $Id: start_prog.c,v 1.2 1997/04/03 22:58:34 luethje Exp $
/* $Id: start_prog.c,v 1.3 1997/04/10 23:32:19 luethje Exp $
*
* ISDN accounting for isdn4linux.
*
@ -20,6 +20,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: start_prog.c,v $
* Revision 1.3 1997/04/10 23:32:19 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.2 1997/04/03 22:58:34 luethje
* some primitve changes.
*
@ -217,7 +220,6 @@ static int GetArgs(char *Line, char *Args[], char *Opts[], int MaxArgs)
char *Arg = NULL;
char *Use = Line;
char *Ptr = NULL;
char *Ptr2 = NULL;
char *Org_Arg;
int MaxOpts= 0;
int i = 0;
@ -265,31 +267,8 @@ static int GetArgs(char *Line, char *Args[], char *Opts[], int MaxArgs)
Arg = NULL;
}
else
if (*Arg == '$')
{
if (Opts != NULL && (Num = atoi(Arg+1)) > 0 && Num <= MaxOpts)
if (*Arg == '$' && Opts != NULL && (Num = atoi(Arg+1)) > 0 && Num <= MaxOpts)
Arg = Opts[Num-1];
else
if (strlen(Arg) > 3 && Arg[1] == '{' && (Ptr = strrchr(Arg,'}')) != NULL)
{
*Ptr = '\0';
if ((Ptr2 = getenv(To_Upper(Arg+2))) != NULL)
{
strcpy(HelpString,Ptr2);
strcat(HelpString,Ptr+1);
Arg = strdup(HelpString);
MemPtr = (char**) realloc(MemPtr,sizeof(char*)*(j+2));
MemPtr[j++] = Arg;
MemPtr[j] = NULL;
}
else
Arg = NULL;
}
else
Arg = getenv(To_Upper(Arg+1));
}
if (Arg == NULL || *Arg == '\0')
{

@ -1,4 +1,4 @@
/* $Id: isdnconf.c,v 1.3 1997/04/03 22:58:39 luethje Exp $
/* $Id: isdnconf.c,v 1.4 1997/04/10 23:32:24 luethje Exp $
*
* ISDN accounting for isdn4linux. (Utilities)
*
@ -913,6 +913,9 @@ static int _readconfig(char *_myname)
if ((SPtr = read_isdnconf(&conf_dat)) == NULL)
return -1;
if (Replace_Variables(conf_dat))
return -1;
Set_Globals(conf_dat);
while (SPtr != NULL)

@ -96,15 +96,22 @@ zurueckgeliefert.
Funktion:
int create_runfile(const char *progname)
int handle_runfile(const char *progname, char **devices, int flag)
Legt eine PID-Datei im Verzeichnis RUNDIR (/var/run) an. In der Datei
steht im ASCII-Format die Prozess-ID des aktuellen Prozesses.
Legt eine PID-Datei im Verzeichnis RUNDIR (/var/run) und die
entsprechenden LOCK-Dateien im Verszeichnis LOCKDIR (/var/lock) an. In den
Dateien steht im ASCII-Format die Prozess-ID des aktuellen Prozesses.
Oder Loescht alle angelegt Dateien.
progname: Ist der Name, der als PID-Datei angelegt wird.
"fred" -> "/var/run/fred.pid"
"isdnlog.tty2" -> "/var/run/isdnlog.tty2.pid"
progname: Ist der Name, der als PID-Datei angelegt wird. Es wird dort noch
der erste Name des Devices angehaengt.
progname = "fred", devices[0] = "null" -> "/var/run/fred.null.pid"
devices: Ist eine List mit den verwendeten Devices. Das letzte Element der
Liste muss NULL enthalten.
flag: Kann zwei Werte beinhalten: START_PROG (legt die o.g. Dateien an) oder
STOP_PROG (loescht die angelegten Dateien wieder).
Rueckgabewert:
Wenn schon ein gueltiger/laufender Prozess mit der ID besteht liefert
@ -116,21 +123,6 @@ andernfalls -1.
Funktion:
int delete_runfile(const char *progname)
Loescht eine PID-Datei im Verzeichnis RUNDIR (/var/run).
progname: Ist der Name, der als PID-Datei geloescht werden soll.
"fred" -> "/var/run/fred.pid"
"isdnlog.tty2" -> "/var/run/isdnlog.tty2.pid"
Rueckgabewert:
Im Erfolgsfall 0, sonst -1.
-----------------------------------------------------------------------------
Funktion:
int Set_Codes(section* Section)
Setzt die Eintraege der Section [GLOBAL] in die entsprechenden

@ -1,4 +1,4 @@
/* $Id: conffile.c,v 1.11 1997/04/03 22:39:11 luethje Exp $
/* $Id: conffile.c,v 1.12 1997/04/10 23:32:33 luethje Exp $
*
* ISDN accounting for isdn4linux.
*
@ -19,6 +19,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: conffile.c,v $
* Revision 1.12 1997/04/10 23:32:33 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.11 1997/04/03 22:39:11 luethje
* bug fixes: environ variables are working again, no seg. 11 :-)
* improved performance for reading the config files.
@ -1529,3 +1532,37 @@ static char* Delete_Chars(char *String, char *Quote)
/****************************************************************************/
int Replace_Variables(section *Section)
{
entry *Entry;
char *Ptr = NULL;
while(Section != NULL)
{
Entry = Section->entries;
while(Entry != NULL)
{
if (Entry->value != NULL && (Ptr = Replace_Variable(Entry->value)) != NULL)
{
free(Entry->value);
if ((Entry->value = strdup(Ptr)) == NULL)
{
print_msg("%s","Can not allocate memory!\n");
return -1;
}
}
Entry = Entry->next;
}
Section = Section->next;
}
return 0;
}
/****************************************************************************/

@ -1,5 +1,5 @@
/* $Id: conffile.h,v 1.5 1997/04/03 22:39:12 luethje Exp $
/* $Id: conffile.h,v 1.6 1997/04/10 23:32:34 luethje Exp $
*
* ISDN accounting for isdn4linux.
*
@ -20,6 +20,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: conffile.h,v $
* Revision 1.6 1997/04/10 23:32:34 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.5 1997/04/03 22:39:12 luethje
* bug fixes: environ variables are working again, no seg. 11 :-)
* improved performance for reading the config files.
@ -138,6 +141,7 @@ _EXTERN section* Get_Section_Match(section* Section, char *Path, char* Value, in
_EXTERN char *Get_Value(section *Section, char *Path);
_EXTERN int _Get_Type_Match(section *Section, char *Path, char* Pattern, int (*_match)(char*, char*), int Type, void **Pointer);
_EXTERN int _Get_Type_Value(section *Section, char *Path, int Type, void **Pointer);
_EXTERN int Replace_Variables(section *Section);
#undef _EXTERN

@ -1,4 +1,4 @@
/* $Id: libtools.c,v 1.3 1997/03/20 00:28:02 luethje Exp $
/* $Id: libtools.c,v 1.4 1997/04/10 23:32:35 luethje Exp $
* ISDN accounting for isdn4linux.
*
* Copyright 1996 by Stefan Luethje (luethje@sl-gw.lake.de)
@ -18,6 +18,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: libtools.c,v $
* Revision 1.4 1997/04/10 23:32:35 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.3 1997/03/20 00:28:02 luethje
* Inserted lines into the files for the revision tool.
*
@ -28,6 +31,7 @@
/****************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <fnmatch.h>
@ -120,7 +124,7 @@ char *FGets(char *String, int StringLen, FILE *fp, int *Line)
strcat(String,Help);
if ((Len = strlen(String)) > 0 && String[Len-1] == '\\' )
if ((Len = strlen(String)) > 0 && String[Len-1] == C_QUOTE_CHAR )
String[Len-1] = '\0';
else
break;
@ -152,7 +156,7 @@ char *Check_Quote(char *String, char *Quote, int Flag)
while ((Ptr = Strpbrk(Ptr,Quote)) != NULL)
{
if (Ptr != String && *(Ptr - 1) == '\\')
if (Ptr != String && *(Ptr - 1) == C_QUOTE_CHAR)
{
if (Flag == QUOTE_IGNORE)
{
@ -210,7 +214,7 @@ const char* Quote_Chars(char *string)
for (i = strlen(Ptr); i >= Index; i--)
Ptr[i+1] = Ptr[i];
Ptr[Index] = '\\';
Ptr[Index] = C_QUOTE_CHAR;
Index += 2;
}
@ -501,3 +505,104 @@ int is_integer (char *string, long int *value)
/****************************************************************************/
char *Replace_Variable(char *String)
{
static char *RetCode = NULL;
char *Begin = NULL;
char *Var = NULL;
char *End = NULL;
char *Value = NULL;
int num;
if (RetCode != NULL)
free(RetCode);
if ((RetCode = strdup(String)) == NULL ||
(Var = strdup(RetCode)) == NULL ||
(End = strdup(RetCode)) == NULL ||
(Begin = strdup(RetCode)) == NULL )
{
print_msg("%s!\n","Can not alllocate memory!\n");
return NULL;
}
Begin[0] ='\0';
while ((num = sscanf(RetCode,"%[^$]$%[0-9a-zA-Z]%[^\n]",Begin,Var,End)+1) > 2 ||
(num = sscanf(RetCode,"%[^$]${%[0-9a-zA-Z]}%[^\n]",Begin,Var,End)+1) > 2 ||
(num = sscanf(RetCode,"$%[0-9a-zA-Z]%[^\n]",Var,End)) > 0 ||
(num = sscanf(RetCode,"${%[0-9a-zA-Z]}%[^\n]",Var,End)) > 0 )
{
if ((num > 2 && Begin[strlen(Begin)-1] == C_QUOTE_CHAR) || (Value = getenv(Var)) == NULL)
{
RetCode[strlen(Begin)] = 1;
if (strlen(Begin) > 0)
memmove(RetCode+strlen(Begin)-1,RetCode+strlen(Begin),strlen(RetCode)-strlen(Begin)+1);
}
else
if (Value != NULL)
{
if ((RetCode = (char*) realloc(RetCode,sizeof(char)*(strlen(RetCode)+strlen(Value)-strlen(Var)))) == NULL)
{
print_msg("%s!\n","Can not alllocate memory!\n");
return NULL;
}
switch(num)
{
case 1: sprintf(RetCode,"%s",Value);
break;
case 2: sprintf(RetCode,"%s%s",Value,End);
break;
case 3: sprintf(RetCode,"%s%s",Begin,Value);
break;
case 4: sprintf(RetCode,"%s%s%s",Begin,Value,End);
break;
default: break;
}
free(Begin);
free(Var);
free(End);
if ((Var = strdup(RetCode)) == NULL ||
(End = strdup(RetCode)) == NULL ||
(Begin = strdup(RetCode)) == NULL )
{
print_msg("%s!\n","Can not alllocate memory!\n");
return NULL;
}
Begin[0] ='\0';
}
else
{
print_msg("Invalid variable `%s'!\n",Var);
free(RetCode);
RetCode = NULL;
break;
}
}
free(Begin);
free(Var);
free(End);
if ((Begin = RetCode) != NULL)
{
while (*Begin != '\0')
{
if (*Begin == 1)
*Begin = '$';
Begin++;
}
}
return RetCode;
}
/****************************************************************************/

@ -1,4 +1,4 @@
/* $Id: libtools.h,v 1.3 1997/03/20 00:28:03 luethje Exp $
/* $Id: libtools.h,v 1.4 1997/04/10 23:32:35 luethje Exp $
*
* ISDN accounting for isdn4linux.
*
@ -19,6 +19,9 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Log: libtools.h,v $
* Revision 1.4 1997/04/10 23:32:35 luethje
* Added the feature, that environment variables are allowed in the config files.
*
* Revision 1.3 1997/03/20 00:28:03 luethje
* Inserted lines into the files for the revision tool.
*
@ -56,6 +59,8 @@ extern char *basename __P((__const char *__name));
#define QUOTE_IGNORE 0
#define QUOTE_DELETE 1
#define C_QUOTE_CHAR '\\'
/****************************************************************************/
#define F_IGNORE_CASE 1024
@ -89,6 +94,7 @@ _EXTERN int _delete_element(void ***elem, int deep);
_EXTERN int match(register char *p, register char *s, int flags);
_EXTERN int is_double (char *string, double *value);
_EXTERN int is_integer (char *string, long int *value);
_EXTERN char *Replace_Variable(char *String);
#undef _EXTERN

@ -25,7 +25,7 @@ CONFIG_USERCONFFILE='~/.isdn'
CONFIG_COUNTRY_PREFIX='+'
CONFIG_AREA_PREFIX='0'
CONFIG_COUNTRYCODE='49'
CONFIG_AREACODE='040'
CONFIG_AREACODE=''
CONFIG_LIB_AREACODE=y
CONFIG_AREACODE_DATA='/usr/lib/isdn'

Loading…
Cancel
Save