summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--UPDATING3
-rw-r--r--sys/kern/uipc_usrreq.c2
-rw-r--r--sys/netinet/tcp_subr.c2
3 files changed, 6 insertions, 1 deletions
diff --git a/UPDATING b/UPDATING
index f08b800b8eba..5f45df0afe32 100644
--- a/UPDATING
+++ b/UPDATING
@@ -11,6 +11,9 @@ portupgrade. Important recent entries: 20040724 (default X changes).
20050509:
FreeBSD 5.4-RELEASE.
+20050507: FreeBSD-SA-05:08.kmem
+ Correct two issues which missed from the earlier commit.
+
20050506: FreeBSD-SA-05:08.kmem
Correct several local kernel memory disclosure bugs.
diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c
index decfbe270c34..de8d96922f55 100644
--- a/sys/kern/uipc_usrreq.c
+++ b/sys/kern/uipc_usrreq.c
@@ -1105,7 +1105,7 @@ unp_pcblist(SYSCTL_HANDLER_ARGS)
n = i; /* in case we lost some during malloc */
error = 0;
- xu = malloc(sizeof(*xu), M_TEMP, M_WAITOK);
+ xu = malloc(sizeof(*xu), M_TEMP, M_WAITOK | M_ZERO);
for (i = 0; i < n; i++) {
unp = unp_list[i];
if (unp->unp_gencnt <= gencnt) {
diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c
index 2b759b277866..14166ad19715 100644
--- a/sys/netinet/tcp_subr.c
+++ b/sys/netinet/tcp_subr.c
@@ -947,6 +947,8 @@ tcp_pcblist(SYSCTL_HANDLER_ARGS)
if (inp->inp_gencnt <= gencnt) {
struct xtcpcb xt;
caddr_t inp_ppcb;
+
+ bzero(&xt, sizeof(xt));
xt.xt_len = sizeof xt;
/* XXX should avoid extra copy */
bcopy(inp, &xt.xt_inp, sizeof *inp);