some security-related fixes

This commit is contained in:
form 1998-07-17 12:23:17 +00:00
parent 4ae05daff4
commit d5185c6ad6
2 changed files with 30 additions and 10 deletions

View File

@ -1,5 +1,15 @@
*** server/database.c.orig Tue Aug 19 14:00:36 1997
--- server/database.c Wed Apr 29 15:32:21 1998
--- server/database.c Fri Jul 17 18:34:25 1998
***************
*** 124,129 ****
--- 124,130 ----
{
struct hash_member *resptr = NULL;
+ unlink(ADDRPOOL_DUMP);
if ((dump_fp = freopen(ADDRPOOL_DUMP, "w+", dump_fp)) == NULL) {
syslog(LOG_WARNING,
"Cannot reopen the address pool dump file \"%s\"", ADDRPOOL_DUMP);
***************
*** 250,256 ****
if (isset(rp->valid, S_SUBNET_MASK)) print_ip("snmk", rp->subnet_mask);
@ -9,7 +19,7 @@
if (isset(rp->active, S_ROUTER)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_ROUTER)) print_ips("rout", rp->router);
if (isset(rp->active, S_TIME_SERVER)) fprintf(dump_fp, "!");
--- 250,256 ----
--- 251,257 ----
if (isset(rp->valid, S_SUBNET_MASK)) print_ip("snmk", rp->subnet_mask);
if (isset(rp->active, S_TIME_OFFSET)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_TIME_OFFSET))
@ -26,7 +36,7 @@
if (isset(rp->active, S_MTU_PLATEAU_TABLE)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_MTU_PLATEAU_TABLE)) {
fprintf(dump_fp, "mtpt=");
--- 299,305 ----
--- 300,306 ----
fprintf(dump_fp, "ditl=%u:", rp->default_ip_ttl);
if (isset(rp->active, S_MTU_AGING_TIMEOUT)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_MTU_AGING_TIMEOUT))
@ -43,7 +53,7 @@
if (isset(rp->active, S_ETHER_ENCAP)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_ETHER_ENCAP)) print_bool("encp", rp->ether_encap);
if (isset(rp->active, S_DEFAULT_TCP_TTL)) fprintf(dump_fp, "!");
--- 329,335 ----
--- 330,336 ----
if (isset(rp->valid, S_TRAILER)) print_bool("tril", rp->trailer);
if (isset(rp->active, S_ARP_CACHE_TIMEOUT)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_ARP_CACHE_TIMEOUT))
@ -60,7 +70,7 @@
if (isset(rp->active, S_KEEPALIVE_GARBA)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_KEEPALIVE_GARBA)) print_bool("kagb", rp->keepalive_garba);
if (isset(rp->active, S_NIS_DOMAIN)) fprintf(dump_fp, "!");
--- 337,343 ----
--- 338,344 ----
fprintf(dump_fp, "dttl=%u:", rp->default_tcp_ttl);
if (isset(rp->active, S_KEEPALIVE_INTER)) fprintf(dump_fp, "!");
if (isset(rp->valid, S_KEEPALIVE_INTER))

View File

@ -1,5 +1,5 @@
*** server/dhcps.c.orig Tue Aug 19 14:14:39 1997
--- server/dhcps.c Fri Jun 5 09:27:41 1998
--- server/dhcps.c Fri Jul 17 18:33:37 1998
***************
*** 126,132 ****
@ -39,6 +39,16 @@
init_db(); /* initialize databases */
***************
*** 526,531 ****
--- 526,532 ----
syslog(LOG_ERR, "Cannot open the binding database \"%s\"", binding_db);
exit(1);
}
+ unlink(ADDRPOOL_DUMP);
if ((dump_fp = fopen(ADDRPOOL_DUMP, "w+")) == NULL) {
syslog(LOG_ERR, "Cannot open the resource dump file \"%s\"",ADDRPOOL_DUMP);
exit(1);
***************
*** 1832,1838 ****
snd.dhcp->options[off_options] = END;
} else if (off_extopt > 0 && off_extopt < maxoptlen - DFLTOPTLEN &&
@ -47,7 +57,7 @@
}
if (off_extopt < sbufvec[1].iov_len) {
--- 1832,1838 ----
--- 1833,1839 ----
snd.dhcp->options[off_options] = END;
} else if (off_extopt > 0 && off_extopt < maxoptlen - DFLTOPTLEN &&
sbufvec[1].iov_base != NULL) {
@ -57,7 +67,7 @@
if (off_extopt < sbufvec[1].iov_len) {
***************
*** 2290,2296 ****
--- 2290,2300 ----
--- 2291,2301 ----
char *inserted;
char flag;
{
@ -78,7 +88,7 @@
off_extopt += len;
return(0);
}
--- 2855,2861 ----
--- 2856,2862 ----
len -= done;
off_options += done; /* invalid offset, So, to access
here will cause fatal error */
@ -95,7 +105,7 @@
delarp(ip);
#else
delarp(ip, sockfd);
--- 2931,2937 ----
--- 2932,2938 ----
return(GOOD);
}