Module Name: src Committed By: christos Date: Tue Feb 26 16:33:57 UTC 2013
Modified Files: src/lib/libc/rpc: clnt_vc.c Log Message: PR/13082: Thorsten Brehm: Fix wrong memcpy that caused possible memory corruption. XXX: pullup to 6. To generate a diff of this commit: cvs rdiff -u -r1.18 -r1.19 src/lib/libc/rpc/clnt_vc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libc/rpc/clnt_vc.c diff -u src/lib/libc/rpc/clnt_vc.c:1.18 src/lib/libc/rpc/clnt_vc.c:1.19 --- src/lib/libc/rpc/clnt_vc.c:1.18 Tue Mar 13 17:13:44 2012 +++ src/lib/libc/rpc/clnt_vc.c Tue Feb 26 11:33:57 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: clnt_vc.c,v 1.18 2012/03/13 21:13:44 christos Exp $ */ +/* $NetBSD: clnt_vc.c,v 1.19 2013/02/26 16:33:57 christos Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -36,7 +36,7 @@ static char *sccsid = "@(#)clnt_tcp.c 1. static char *sccsid = "@(#)clnt_tcp.c 2.2 88/08/01 4.0 RPCSRC"; static char sccsid[] = "@(#)clnt_vc.c 1.19 89/03/16 Copyr 1988 Sun Micro"; #else -__RCSID("$NetBSD: clnt_vc.c,v 1.18 2012/03/13 21:13:44 christos Exp $"); +__RCSID("$NetBSD: clnt_vc.c,v 1.19 2013/02/26 16:33:57 christos Exp $"); #endif #endif @@ -263,8 +263,8 @@ clnt_vc_create( ct->ct_addr.buf = malloc((size_t)raddr->maxlen); if (ct->ct_addr.buf == NULL) goto fooy; - memcpy(ct->ct_addr.buf, &raddr->buf, (size_t)raddr->len); - ct->ct_addr.len = raddr->maxlen; + memcpy(ct->ct_addr.buf, raddr->buf, (size_t)raddr->len); + ct->ct_addr.len = raddr->len; ct->ct_addr.maxlen = raddr->maxlen; /*