struct isdn_cause isdn_cause[128];
struct isdn_location isdn_location[16];
-void _printdebug(const char *function, int line, unsigned long mask, const char *fmt, ...)
+void _printdebug(const char *file, const char *function, int line, unsigned int mask, const char *fmt, ...)
{
}
-void _printerror(const char *function, int line, const char *fmt, ...)
+void _printerror(const char *file, const char *function, int line, const char *fmt, ...)
{
char buffer[4096];
va_list args;
struct extension ext;
char pathname[256];
FILE *fp;
+ char options_error[256];
- if (!read_options())
- {
- PERROR("Failed to read options.conf\n");
+ if (!read_options(options_error)) {
+ PERROR("%s", options_error);
return(-1);
}
- if (argc != 4)
- {
+ if (argc != 4) {
printf("Usage: %s <extension> <interfaces> <callerid>\n\n", argv[0]);
printf("extension: any number for the extension (e.g 200)\n");
- printf("interfaces: internal interface(es) to reach extension (seperated by commas. e.g Int1,Int2)\n");
+ printf("interfaces: internal interface(s) to reach extension, NOT port numbers\n");
+ printf(" -> seperate multiple interfaces with commas. e.g Int1,Int2\n");
printf("callerid: normal undefined called is (use what your telco assigned you)\n");
return(0);
}
- SPRINT(pathname, "%s/%s/%s", INSTALL_DATA, options.extensions_dir, argv[1]);
- if (mkdir(pathname, 0755) < 0)
- {
+ SPRINT(pathname, "%s/%s", EXTENSION_DATA, argv[1]);
+ if (mkdir(pathname, 0755) < 0) {
if (errno == EEXIST)
PERROR("Extension's directory already exists. Nothing done!\n");
else PERROR("Cannot open extension's directory '%s'.\n", pathname);
memset(&ext, 0, sizeof(ext));
ext.rights = 4;
- ext.tout_setup = 120;
- ext.tout_dialing = 120;
- ext.tout_proceeding = 120;
- ext.tout_alerting = 120;
- ext.tout_disconnect = 120;
-// ext.tout_hold = 900;
-// ext.tout_park = 900;
ext.cfnr_delay = 20;
ext.vbox_codec = CODEC_MONO;
UCPY(ext.interfaces, argv[2]);
ext.facility = 1;
write_extension(&ext, argv[1]);
- SPRINT(pathname, "%s/%s/%s/phonebook", INSTALL_DATA, options.extensions_dir, argv[1]);
- if (!(fp = fopen(pathname, "w")))
- {
+ SPRINT(pathname, "%s/%s/phonebook", EXTENSION_DATA, argv[1]);
+ if (!(fp = fopen(pathname, "w"))) {
PERROR("Failed to write phonebook example '%s'.\n", pathname);
return(-1);
- } else
- {
+ } else {
fprintf(fp, "# fromat: <shortcut> <phone number> [<Name>]\n");
fprintf(fp, "# The shotcut may have any number of digits. \n");
fprintf(fp, "# The phone number must include the dialing code for external, internal or\n");
fclose(fp);
}
- SPRINT(pathname, "%s/%s/%s/secrets", INSTALL_DATA, options.extensions_dir, argv[1]);
- if (!(fp = fopen(pathname, "w")))
- {
+ SPRINT(pathname, "%s/%s/secrets", EXTENSION_DATA, argv[1]);
+ if (!(fp = fopen(pathname, "w"))) {
PERROR("Failed to write secrets example '%s'.\n", pathname);
return(-1);
- } else
- {
+ } else {
fprintf(fp, "# Format: <remote number> <key exchange> <cypher> [<key>]\n");
fprintf(fp, "# The remote number must match the dialed number for outgoing calls.\n");
fprintf(fp, "# The remote number must match the caller id for incoming calls.\n");
fprintf(fp, "021250993 manual blowfish 0x012345678\n");
fclose(fp);
}
- printf("Extension %s created at %s/%s/%s/.\n", argv[1], INSTALL_DATA, options.extensions_dir, argv[1]);
+ printf("Extension %s created at %s/%s/.\n", argv[1], EXTENSION_DATA, argv[1]);
return(0);
}