diff options
| author | Colin Percival <cperciva@FreeBSD.org> | 2005-05-07 03:58:25 +0000 |
|---|---|---|
| committer | Colin Percival <cperciva@FreeBSD.org> | 2005-05-07 03:58:25 +0000 |
| commit | 5ba518022ab3bbe683ab48dfa526ebd2b643fe29 (patch) | |
| tree | 998a649730c2598106c569a9f77f9834a6dbaec0 | |
| parent | ba70bc6e158ffaee7b79ee97de555c62c2f55255 (diff) | |
Notes
| -rw-r--r-- | UPDATING | 3 | ||||
| -rw-r--r-- | sys/kern/uipc_usrreq.c | 2 | ||||
| -rw-r--r-- | sys/netinet/tcp_subr.c | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/UPDATING b/UPDATING index f08b800b8ebac..5f45df0afe32e 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 decfbe270c34f..de8d96922f550 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 2b759b277866b..14166ad19715b 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); |
