int get_hosts(char *mxbuf, char *rectype) {
int config_lines;
int i;
- char buf[SIZ];
- char host[SIZ], type[SIZ];
+ char buf[256];
+ char host[256], type[256];
int total_smarthosts = 0;
if (inetcfg == NULL) return(0);
config_lines = num_tokens(inetcfg, '\n');
for (i=0; i<config_lines; ++i) {
- extract_token(buf, inetcfg, i, '\n');
- extract_token(host, buf, 0, '|');
- extract_token(type, buf, 1, '|');
+ extract_token(buf, inetcfg, i, '\n', sizeof buf);
+ extract_token(host, buf, 0, '|', sizeof host);
+ extract_token(type, buf, 1, '|', sizeof type);
if (!strcasecmp(type, rectype)) {
strcat(mxbuf, host);
C_IN, T_MX, (unsigned char *)answer.bytes, sizeof(answer) );
if (ret < 0) {
- mxrecs = mallok(sizeof(struct mx));
+ mxrecs = malloc(sizeof(struct mx));
mxrecs[0].pref = 0;
strcpy(mxrecs[0].host, dest);
num_mxrecs = 1;
for (qdcount = ntohs(answer.header.qdcount); qdcount--; ptr += ret + QFIXEDSZ) {
if ((ret = dn_skipname(ptr, endptr)) < 0) {
- lprintf(9, "dn_skipname error\n");
+ lprintf(CTDL_DEBUG, "dn_skipname error\n");
return(0);
}
}
++num_mxrecs;
if (mxrecs == NULL) {
- mxrecs = mallok(sizeof(struct mx));
+ mxrecs = malloc(sizeof(struct mx));
}
else {
- mxrecs = reallok(mxrecs,
+ mxrecs = realloc(mxrecs,
(sizeof(struct mx) * num_mxrecs) );
}
strcat(mxbuf, mxrecs[n].host);
strcat(mxbuf, "|");
}
- phree(mxrecs);
+ free(mxrecs);
return(num_mxrecs);
}