version 1.5, 2000/04/20 06:19:33 |
version 1.6, 2001/08/11 00:05:53 |
|
|
return ("unknown ACU type"); |
return ("unknown ACU type"); |
if (*cp != '@') { |
if (*cp != '@') { |
while (*cp) { |
while (*cp) { |
for (phnum = cp; *cp && *cp != ','; cp++) |
phnum = cp; |
; |
cp = strpbrk(cp, ","); |
if (*cp) |
if (*cp != '\0') |
*cp++ = '\0'; |
*cp++ = '\0'; |
|
|
if ((conflag = (*acu->acu_dialer)(phnum, CU))) { |
if (strlen(phnum) == 0) |
if (CM != NOSTR) |
continue; |
parwrite(FD, CM, size(CM)); |
|
logent(value(HOST), phnum, acu->acu_name, |
conflag = (*acu->acu_dialer)(phnum, CU); |
"call completed"); |
if (conflag) |
return (NOSTR); |
break; |
} else |
|
logent(value(HOST), phnum, acu->acu_name, |
logent(value(HOST), phnum, acu->acu_name, "call failed"); |
"call failed"); |
|
tried++; |
tried++; |
} |
} |
} else { |
} else { |
|
|
return ("can't open phone number file"); |
return ("can't open phone number file"); |
} |
} |
while (fgets(string, sizeof(string), fd) != NOSTR) { |
while (fgets(string, sizeof(string), fd) != NOSTR) { |
for (cp = string; !any(*cp, " \t\n"); cp++) |
cp = &string[strcspn(string, " \t\n")]; |
; |
if (*cp != '\0') |
if (*cp == '\n') { |
|
fclose(fd); |
|
return ("unrecognizable host name"); |
|
} |
|
*cp++ = '\0'; |
|
if (strcmp(string, value(HOST))) |
|
continue; |
|
while (any(*cp, " \t")) |
|
cp++; |
|
if (*cp == '\n') { |
|
fclose(fd); |
|
return ("missing phone number"); |
|
} |
|
for (phnum = cp; *cp && *cp != ',' && *cp != '\n'; cp++) |
|
; |
|
if (*cp) |
|
*cp++ = '\0'; |
*cp++ = '\0'; |
|
|
|
if (strcmp(string, value(HOST)) != 0) |
|
continue; |
|
|
|
cp += strspn(cp, " \t\n"); |
|
phnum = cp; |
|
*(cp + strcspn(cp, ",\n")) = '\0'; |
|
|
|
if (strlen(phnum) == 0) |
|
continue; |
|
|
|
conflag = (*acu->acu_dialer)(phnum, CU); |
|
if (conflag) |
|
break; |
|
|
if ((conflag = (*acu->acu_dialer)(phnum, CU))) { |
logent(value(HOST), phnum, acu->acu_name, "call failed"); |
fclose(fd); |
|
if (CM != NOSTR) |
|
parwrite(FD, CM, size(CM)); |
|
logent(value(HOST), phnum, acu->acu_name, |
|
"call completed"); |
|
return (NOSTR); |
|
} else |
|
logent(value(HOST), phnum, acu->acu_name, |
|
"call failed"); |
|
tried++; |
tried++; |
} |
} |
fclose(fd); |
fclose(fd); |
} |
} |
if (!tried) |
if (conflag) { |
|
if (CM != NOSTR) |
|
parwrite(FD, CM, size(CM)); |
|
logent(value(HOST), phnum, acu->acu_name, "call completed"); |
|
return (NOSTR); |
|
} else if (!tried) { |
logent(value(HOST), "", acu->acu_name, "missing phone number"); |
logent(value(HOST), "", acu->acu_name, "missing phone number"); |
else |
return ("missing phone number"); |
|
} else { |
(*acu->acu_abort)(); |
(*acu->acu_abort)(); |
return (tried ? "call failed" : "missing phone number"); |
return ("call failed"); |
|
} |
} |
} |
|
|
void |
void |