struct AclEntry *tp;
if (acl->dfs)
- sprintf(dfsstring, " dfs:%d %s", acl->dfs, acl->cell);
+ snprintf(dfsstring, sizeof(dfsstring), " dfs:%d %s", acl->dfs, acl->cell);
else
dfsstring[0] = '\0';
- sprintf(mydata, "%d%s\n%d\n", acl->nplus, dfsstring, acl->nminus);
+ snprintf(mydata, sizeof(mydata), "%d%s\n%d\n", acl->nplus, dfsstring, acl->nminus);
for (tp = acl->pluslist; tp; tp = tp->next) {
- sprintf(tstring, "%s %d\n", tp->name, tp->rights);
- strcat(mydata, tstring);
+ snprintf(tstring, sizeof(tstring), "%s %d\n", tp->name, tp->rights);
+ strlcat(mydata, tstring, sizeof(mydata));
}
for (tp = acl->minuslist; tp; tp = tp->next) {
- sprintf(tstring, "%s %d\n", tp->name, tp->rights);
- strcat(mydata, tstring);
+ snprintf(tstring, sizeof(tstring), "%s %d\n", tp->name, tp->rights);
+ strlcat(mydata, tstring, sizeof(mydata));
}
return mydata;
}
name = hostutil_GetNameByINet(addr);
} else {
addr = ntohl(addr);
- sprintf(tbuffer, "%d.%d.%d.%d", (addr >> 24) & 0xff,
+ snprintf(tbuffer, sizeof(tbuffer), "%d.%d.%d.%d", (addr >> 24) & 0xff,
(addr >> 16) & 0xff, (addr >> 8) & 0xff, addr & 0xff);
name = tbuffer;
}
if (code) {
if ((errno != E2BIG) || (2 * blob.out_size > 0x7FFF)) {
perror("getserverprefs pioctl");
+ if (blob.out != space) {
+ free(blob.out);
+ }
return 1;
}
blob.out_size *= 2;
name = hostutil_GetNameByINet(out->servers[i].server.s_addr);
} else {
addr = ntohl(out->servers[i].server.s_addr);
- sprintf(tbuffer, "%d.%d.%d.%d", (addr >> 24) & 0xff,
+ snprintf(tbuffer, sizeof(tbuffer), "%d.%d.%d.%d", (addr >> 24) & 0xff,
(addr >> 16) & 0xff, (addr >> 8) & 0xff, addr & 0xff);
name = tbuffer;
}
out = (struct sprefinfo *)blob.out;
for (i = 0; i < out->num_servers; i++) {
afs_int32 addr;
- char tbuffer[32];
+ char tbuffer[20];
addr = ntohl(out->servers[i].server.s_addr);
- sprintf(tbuffer, "%d.%d.%d.%d", (addr >> 24) & 0xff,
+ snprintf(tbuffer, sizeof(tbuffer), "%d.%d.%d.%d", (addr >> 24) & 0xff,
(addr >> 16) & 0xff, (addr >> 8) & 0xff, addr & 0xff);
printf("%-50s\n", tbuffer);
}