diff options
author | Casey West <casey@geeknest.com> | 2003-11-03 05:11:43 -0500 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2003-11-03 20:43:47 +0000 |
commit | e4bd4d4a5d5786facf088988b9be40364df64042 (patch) | |
tree | d82215509ee7a8f82698fb7d211727ddbc033e66 | |
parent | c18f11439360b00e9db48ba02fd9ae967ac10632 (diff) | |
download | perl-e4bd4d4a5d5786facf088988b9be40364df64042.tar.gz |
Integrate:
[ 21646]
Subject: Cwd.xs: off-by-one buffer overflow in realpath()
Message-ID: <20031103151143.GB430@geeknest.com>
p4raw-link: @21646 on //depot/perl: 7f6e23a86c35581b9f224abd034c75f59268efcf
p4raw-id: //depot/maint-5.8/perl@21649
p4raw-integrated: from //depot/perl@21648 'copy in' ext/Cwd/Cwd.xs
(@16635..)
-rw-r--r-- | ext/Cwd/Cwd.xs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/Cwd/Cwd.xs b/ext/Cwd/Cwd.xs index 3f7b93b231..4600fefb11 100644 --- a/ext/Cwd/Cwd.xs +++ b/ext/Cwd/Cwd.xs @@ -166,7 +166,7 @@ loop: rootd = 0; if (*wbuf) { - if (strlen(resolved) + strlen(wbuf) + rootd + 1 > MAXPATHLEN) { + if (strlen(resolved) + strlen(wbuf) + (1 - rootd) + 1 > MAXPATHLEN) { errno = ENAMETOOLONG; goto err1; } |