Files
gentoo/app-crypt/mcrypt/files/mcrypt-2.6.8-segv.patch
Robin H. Johnson 56bd759df1 proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.

This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.

Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
2015-08-08 17:38:18 -07:00

41 lines
1.3 KiB
Diff

From 5bee29fae8f0e936ad4c957aef6035d09532a57a Mon Sep 17 00:00:00 2001
From: Alon Bar-Lev <alon.barlev@gmail.com>
Date: Sat, 22 Dec 2012 22:04:27 +0200
Subject: [PATCH] cleanup: fixup segv on buffer access
use exact buffer size instead of guess.
do not copy out of source buffer.
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
---
src/rfc2440.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/rfc2440.c b/src/rfc2440.c
index 5a1f296..929b9ab 100644
--- a/src/rfc2440.c
+++ b/src/rfc2440.c
@@ -497,7 +497,7 @@ plaintext_encode(const USTRING dat)
time_t t;
assert(dat->len > 0);
- result = make_ustring( NULL, 2 * dat->len); /* xxx */
+ result = make_ustring( NULL, dat->len + 12); /* xxx */
newdat = (USTRING)dat;
result->d[pos++] = (0x80 | 0x40 | PKT_PLAINTEXT);
@@ -810,7 +810,8 @@ encrypted_encode(const USTRING pt, const DEK *dek)
_mcrypt_encrypt(dek->hd, rndpref, dek->blocklen + 2, NULL, 0);
_mcrypt_sync(dek->hd, rndpref, dek->blocklen);
- ct = make_ustring( rndpref, 2 * pt->len); /* xxx */
+ ct = make_ustring( NULL, dek->blocklen + 2 + pt->len + 12); /* xxx */
+ memcpy(ct->d, rndpref, dek->blocklen + 2);
pos = dek->blocklen + 2;
_mcrypt_encrypt(dek->hd, ct->d + pos, pt->len, pt->d, pt->len);
--
1.7.8.6