editeng/source/outliner/paralist.cxx | 12 -- editeng/source/outliner/paralist.hxx | 2 sc/qa/unit/data/qpro/fail/CVE-2007-5747-1.wb2 |binary sc/qa/unit/data/qpro/pass/CVE-2007-5745-1.wb2 |binary sc/qa/unit/data/qpro/pass/CVE-2007-5745-2.wb2 |binary svtools/qa/cppunit/data/emf/fail/CVE-2004-0209-1.emf |binary svtools/qa/cppunit/data/emf/fail/CVE-2008-1083-1.emf |binary svtools/qa/cppunit/data/emf/fail/CVE-2009-1217-1.emf |binary svtools/qa/cppunit/data/emf/pass/CVE-2008-1087-1.emf |binary svtools/qa/cppunit/data/wmf/fail/CVE-2005-2123-1.wmf-0.009-676 |binary svtools/qa/cppunit/data/wmf/fail/CVE-2005-2124-1.wmf |binary svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-1.wmf |binary svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-2.wmf |binary svtools/qa/cppunit/data/wmf/pass/CVE-2005-2123-1.wmf |binary svtools/qa/cppunit/data/wmf/pass/CVE-2006-4071-1.wmf |binary svtools/qa/cppunit/data/wmf/pass/CVE-2007-1090-1.wmf |binary svtools/qa/cppunit/data/wmf/pass/CVE-2007-1238-1.wmf |binary svtools/qa/cppunit/data/wmf/pass/CVE-2007-1245-1.wmf |binary sw/qa/core/data/ww8/fail/CVE-2005-0941-1.doc |binary sw/qa/core/data/ww8/fail/CVE-2006-2389-1.doc |binary sw/qa/core/data/ww8/fail/CVE-2008-0320-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2006-3493-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2006-6561-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2006-6628-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2007-1347-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2008-2752-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2008-2752-2.doc |binary sw/qa/core/data/ww8/pass/CVE-2008-2752-3.doc |binary sw/qa/core/data/ww8/pass/CVE-2008-2752-4.doc |binary sw/qa/core/data/ww8/pass/CVE-2008-4841-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-0200-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-0201-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-0259-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-3301-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-3302-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2009-3302-2.doc |binary sw/qa/core/data/ww8/pass/CVE-2010-3200-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2010-3453-1.doc |binary sw/qa/core/data/ww8/pass/CVE-2010-3454-1.doc |binary sw/qa/core/data/xml/fail/CVE-2006-3117-1.sxw |binary test/inc/test/filters-test.hxx | 8 + test/source/filters-test.cxx | 53 +++++++++- writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2005-2971-1.rtf |binary writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2010-3451-1.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2964.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-1.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-2.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2007-0245-1.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3333-1.rtf |binary writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3452-1.rtf | 2 50 files changed, 58 insertions(+), 19 deletions(-)
New commits: commit dd71d3848361beadb6c0baf2010a46144f927153 Author: Caolán McNamara <caol...@redhat.com> Date: Fri Sep 30 16:59:20 2011 +0100 rtl_cipher_decode doesn't like 0 len data diff --git a/test/source/filters-test.cxx b/test/source/filters-test.cxx index aa6fe31..f80fd43 100644 --- a/test/source/filters-test.cxx +++ b/test/source/filters-test.cxx @@ -54,19 +54,18 @@ void decode(const rtl::OUString& rIn, const rtl::OUString &rOut) osl::File aOut(rOut); CPPUNIT_ASSERT(osl::FileBase::E_None == aOut.open(osl_File_OpenFlag_Write)); - fprintf(stderr, "rOut is %s\n", rtl::OUStringToOString(rOut, RTL_TEXTENCODING_UTF8).getStr()); - sal_uInt8 in[8192]; sal_uInt8 out[8192]; sal_uInt64 nBytesRead, nBytesWritten; - do + while(1) { CPPUNIT_ASSERT(osl::FileBase::E_None == aIn.read(in, sizeof(in), nBytesRead)); + if (!nBytesRead) + break; CPPUNIT_ASSERT(rtl_Cipher_E_None == rtl_cipher_decode(cipher, in, nBytesRead, out, sizeof(out))); CPPUNIT_ASSERT(osl::FileBase::E_None == aOut.write(out, nBytesRead, nBytesWritten)); CPPUNIT_ASSERT(nBytesRead == nBytesWritten); } - while (nBytesRead == sizeof(in)); rtl_cipher_destroy(cipher); } @@ -96,11 +95,9 @@ void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUStrin { //ignore .files if (sURL.getStr()[nLastSlash+1] == '.') - { continue; - } - if (sURL.matchAsciiL(RTL_CONSTASCII_STRINGPARAM("CVE")), nLastSlash+1) + if (sURL.matchAsciiL(RTL_CONSTASCII_STRINGPARAM("CVE"), nLastSlash+1)) bCVE = true; } @@ -109,9 +106,7 @@ void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUStrin if (bCVE) { - osl::FileBase::RC err = osl::FileBase::createTempFile(NULL, NULL, &sTmpFile); - CPPUNIT_ASSERT_MESSAGE("temp File creation failed", - err == osl::FileBase::E_None); + CPPUNIT_ASSERT(osl::FileBase::E_None == osl::FileBase::createTempFile(NULL, NULL, &sTmpFile)); decode(sURL, sTmpFile); sURL = sTmpFile; } @@ -124,6 +119,9 @@ void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUStrin bool bRes = load(rFilter, sURL, rUserData); sal_uInt32 nEndTime = osl_getGlobalTimer(); + if (bCVE) + CPPUNIT_ASSERT(osl::FileBase::E_None == osl::File::remove(sTmpFile)); + if (nExpected == test::indeterminate) { fprintf(stderr, "%s,%"SAL_PRIuUINT32"\n", commit e898bcc1c2f2d227d8b638dfbee01e393562e142 Author: Caolán McNamara <caol...@redhat.com> Date: Fri Sep 30 16:12:52 2011 +0100 silence tedious malware checkers, arcfour, key 0x435645 diff --git a/sc/qa/unit/data/qpro/fail/CVE-2007-5747-1.wb2 b/sc/qa/unit/data/qpro/fail/CVE-2007-5747-1.wb2 index ca91826..c7ce93a 100644 Binary files a/sc/qa/unit/data/qpro/fail/CVE-2007-5747-1.wb2 and b/sc/qa/unit/data/qpro/fail/CVE-2007-5747-1.wb2 differ diff --git a/sc/qa/unit/data/qpro/pass/CVE-2007-5745-1.wb2 b/sc/qa/unit/data/qpro/pass/CVE-2007-5745-1.wb2 index 0ba60b2..6e525c3 100644 Binary files a/sc/qa/unit/data/qpro/pass/CVE-2007-5745-1.wb2 and b/sc/qa/unit/data/qpro/pass/CVE-2007-5745-1.wb2 differ diff --git a/sc/qa/unit/data/qpro/pass/CVE-2007-5745-2.wb2 b/sc/qa/unit/data/qpro/pass/CVE-2007-5745-2.wb2 index 8a9eca9..b034a8c 100644 Binary files a/sc/qa/unit/data/qpro/pass/CVE-2007-5745-2.wb2 and b/sc/qa/unit/data/qpro/pass/CVE-2007-5745-2.wb2 differ diff --git a/svtools/qa/cppunit/data/emf/fail/CVE-2004-0209-1.emf b/svtools/qa/cppunit/data/emf/fail/CVE-2004-0209-1.emf index 2f77fcd..a511da4 100644 Binary files a/svtools/qa/cppunit/data/emf/fail/CVE-2004-0209-1.emf and b/svtools/qa/cppunit/data/emf/fail/CVE-2004-0209-1.emf differ diff --git a/svtools/qa/cppunit/data/emf/fail/CVE-2008-1083-1.emf b/svtools/qa/cppunit/data/emf/fail/CVE-2008-1083-1.emf index 0cbd952..dd57d91 100644 Binary files a/svtools/qa/cppunit/data/emf/fail/CVE-2008-1083-1.emf and b/svtools/qa/cppunit/data/emf/fail/CVE-2008-1083-1.emf differ diff --git a/svtools/qa/cppunit/data/emf/fail/CVE-2009-1217-1.emf b/svtools/qa/cppunit/data/emf/fail/CVE-2009-1217-1.emf index ee7db91..8fa6e93 100644 Binary files a/svtools/qa/cppunit/data/emf/fail/CVE-2009-1217-1.emf and b/svtools/qa/cppunit/data/emf/fail/CVE-2009-1217-1.emf differ diff --git a/svtools/qa/cppunit/data/emf/pass/CVE-2008-1087-1.emf b/svtools/qa/cppunit/data/emf/pass/CVE-2008-1087-1.emf index 9bc2a3f..c71739a 100644 Binary files a/svtools/qa/cppunit/data/emf/pass/CVE-2008-1087-1.emf and b/svtools/qa/cppunit/data/emf/pass/CVE-2008-1087-1.emf differ diff --git a/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2123-1.wmf-0.009-676 b/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2123-1.wmf-0.009-676 index dccd640..49d3ddf 100644 Binary files a/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2123-1.wmf-0.009-676 and b/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2123-1.wmf-0.009-676 differ diff --git a/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2124-1.wmf b/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2124-1.wmf index 5826a98..ac546ce 100644 Binary files a/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2124-1.wmf and b/svtools/qa/cppunit/data/wmf/fail/CVE-2005-2124-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-1.wmf b/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-1.wmf index 07db62c..b68b740 100644 Binary files a/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-1.wmf and b/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-2.wmf b/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-2.wmf index 5b99a48..370abe0 100644 Binary files a/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-2.wmf and b/svtools/qa/cppunit/data/wmf/fail/CVE-2006-0143-2.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/pass/CVE-2005-2123-1.wmf b/svtools/qa/cppunit/data/wmf/pass/CVE-2005-2123-1.wmf index 6af243b..e70664e 100644 Binary files a/svtools/qa/cppunit/data/wmf/pass/CVE-2005-2123-1.wmf and b/svtools/qa/cppunit/data/wmf/pass/CVE-2005-2123-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/pass/CVE-2006-4071-1.wmf b/svtools/qa/cppunit/data/wmf/pass/CVE-2006-4071-1.wmf index 794a7ef..cdb09c6 100644 Binary files a/svtools/qa/cppunit/data/wmf/pass/CVE-2006-4071-1.wmf and b/svtools/qa/cppunit/data/wmf/pass/CVE-2006-4071-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1090-1.wmf b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1090-1.wmf index c050fa6..7864da5 100644 Binary files a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1090-1.wmf and b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1090-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1238-1.wmf b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1238-1.wmf index a01e310..10da327 100644 Binary files a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1238-1.wmf and b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1238-1.wmf differ diff --git a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1245-1.wmf b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1245-1.wmf index a01e310..10da327 100644 Binary files a/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1245-1.wmf and b/svtools/qa/cppunit/data/wmf/pass/CVE-2007-1245-1.wmf differ diff --git a/sw/qa/core/data/ww8/fail/CVE-2005-0941-1.doc b/sw/qa/core/data/ww8/fail/CVE-2005-0941-1.doc index 18b300c..a1f5b76 100644 Binary files a/sw/qa/core/data/ww8/fail/CVE-2005-0941-1.doc and b/sw/qa/core/data/ww8/fail/CVE-2005-0941-1.doc differ diff --git a/sw/qa/core/data/ww8/fail/CVE-2006-2389-1.doc b/sw/qa/core/data/ww8/fail/CVE-2006-2389-1.doc index a1bf07a..a99da57 100644 Binary files a/sw/qa/core/data/ww8/fail/CVE-2006-2389-1.doc and b/sw/qa/core/data/ww8/fail/CVE-2006-2389-1.doc differ diff --git a/sw/qa/core/data/ww8/fail/CVE-2008-0320-1.doc b/sw/qa/core/data/ww8/fail/CVE-2008-0320-1.doc index b5a0832..5c6d351 100644 Binary files a/sw/qa/core/data/ww8/fail/CVE-2008-0320-1.doc and b/sw/qa/core/data/ww8/fail/CVE-2008-0320-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2006-3493-1.doc b/sw/qa/core/data/ww8/pass/CVE-2006-3493-1.doc index af452dd..4623e3c 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2006-3493-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2006-3493-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2006-6561-1.doc b/sw/qa/core/data/ww8/pass/CVE-2006-6561-1.doc index 240ea77..390a663 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2006-6561-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2006-6561-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2006-6628-1.doc b/sw/qa/core/data/ww8/pass/CVE-2006-6628-1.doc index 240ea77..390a663 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2006-6628-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2006-6628-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2007-1347-1.doc b/sw/qa/core/data/ww8/pass/CVE-2007-1347-1.doc index d25e62a..dabcf3f 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2007-1347-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2007-1347-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2008-2752-1.doc b/sw/qa/core/data/ww8/pass/CVE-2008-2752-1.doc index f51fa8f..20c40a8 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2008-2752-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2008-2752-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2008-2752-2.doc b/sw/qa/core/data/ww8/pass/CVE-2008-2752-2.doc index 7ce7a07..569967e 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2008-2752-2.doc and b/sw/qa/core/data/ww8/pass/CVE-2008-2752-2.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2008-2752-3.doc b/sw/qa/core/data/ww8/pass/CVE-2008-2752-3.doc index 8b04872..3fe55f6 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2008-2752-3.doc and b/sw/qa/core/data/ww8/pass/CVE-2008-2752-3.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2008-2752-4.doc b/sw/qa/core/data/ww8/pass/CVE-2008-2752-4.doc index 148a30d..1bd5499 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2008-2752-4.doc and b/sw/qa/core/data/ww8/pass/CVE-2008-2752-4.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2008-4841-1.doc b/sw/qa/core/data/ww8/pass/CVE-2008-4841-1.doc index 0942b6d..37b9945 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2008-4841-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2008-4841-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-0200-1.doc b/sw/qa/core/data/ww8/pass/CVE-2009-0200-1.doc index a142fec..6b9fb25 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-0200-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-0200-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-0201-1.doc b/sw/qa/core/data/ww8/pass/CVE-2009-0201-1.doc index bc6182d..462b17b 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-0201-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-0201-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-0259-1.doc b/sw/qa/core/data/ww8/pass/CVE-2009-0259-1.doc index 0942b6d..37b9945 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-0259-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-0259-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-3301-1.doc b/sw/qa/core/data/ww8/pass/CVE-2009-3301-1.doc index 8f1c2de..8351c83 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-3301-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-3301-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-3302-1.doc b/sw/qa/core/data/ww8/pass/CVE-2009-3302-1.doc index 8f1c2de..8351c83 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-3302-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-3302-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2009-3302-2.doc b/sw/qa/core/data/ww8/pass/CVE-2009-3302-2.doc index 0cd7a7d..f8181f3 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2009-3302-2.doc and b/sw/qa/core/data/ww8/pass/CVE-2009-3302-2.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2010-3200-1.doc b/sw/qa/core/data/ww8/pass/CVE-2010-3200-1.doc index 596aec9..4bdb053 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2010-3200-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2010-3200-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2010-3453-1.doc b/sw/qa/core/data/ww8/pass/CVE-2010-3453-1.doc index 22cd8ee..62dacdc 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2010-3453-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2010-3453-1.doc differ diff --git a/sw/qa/core/data/ww8/pass/CVE-2010-3454-1.doc b/sw/qa/core/data/ww8/pass/CVE-2010-3454-1.doc index 33706c2..9bbadc0 100644 Binary files a/sw/qa/core/data/ww8/pass/CVE-2010-3454-1.doc and b/sw/qa/core/data/ww8/pass/CVE-2010-3454-1.doc differ diff --git a/sw/qa/core/data/xml/fail/CVE-2006-3117-1.sxw b/sw/qa/core/data/xml/fail/CVE-2006-3117-1.sxw index 49acb42..1f4d4d3 100644 Binary files a/sw/qa/core/data/xml/fail/CVE-2006-3117-1.sxw and b/sw/qa/core/data/xml/fail/CVE-2006-3117-1.sxw differ diff --git a/test/inc/test/filters-test.hxx b/test/inc/test/filters-test.hxx index 721f442..6c82944 100644 --- a/test/inc/test/filters-test.hxx +++ b/test/inc/test/filters-test.hxx @@ -40,8 +40,14 @@ enum filterStatus indeterminate = 2 }; +/* + * NOTE, any files beginning with CVE- will be assumed to be encrypted using + * arcfour with key 0x435645, this is just to silence panicky + * virus/malware-checkers + * + * e.g. m[de]crypt --bare -a arcfour -o hex -k 435645 -s 3 + */ /* Implementation of Filters test */ - class OOO_DLLPUBLIC_TEST FiltersTest : public test::BootstrapFixture { public: diff --git a/test/source/filters-test.cxx b/test/source/filters-test.cxx index aeb92d9..aa6fe31 100644 --- a/test/source/filters-test.cxx +++ b/test/source/filters-test.cxx @@ -30,11 +30,47 @@ #include <test/filters-test.hxx> #include <osl/file.hxx> #include <osl/thread.h> +#include <rtl/cipher.h> using namespace ::com::sun::star; namespace test { +void decode(const rtl::OUString& rIn, const rtl::OUString &rOut) +{ + rtlCipher cipher = rtl_cipher_create(rtl_Cipher_AlgorithmARCFOUR, rtl_Cipher_ModeStream); + CPPUNIT_ASSERT_MESSAGE("cipher creation failed", cipher != 0); + + //mcrypt --bare -a arcfour -o hex -k 435645 -s 3 + const sal_uInt8 aKey[3] = {'C', 'V', 'E'}; + + rtlCipherError result = rtl_cipher_init(cipher, rtl_Cipher_DirectionDecode, aKey, SAL_N_ELEMENTS(aKey), 0, 0); + + CPPUNIT_ASSERT_MESSAGE("cipher init failed", result == rtl_Cipher_E_None); + + osl::File aIn(rIn); + CPPUNIT_ASSERT(osl::FileBase::E_None == aIn.open(osl_File_OpenFlag_Read)); + + osl::File aOut(rOut); + CPPUNIT_ASSERT(osl::FileBase::E_None == aOut.open(osl_File_OpenFlag_Write)); + + fprintf(stderr, "rOut is %s\n", rtl::OUStringToOString(rOut, RTL_TEXTENCODING_UTF8).getStr()); + + sal_uInt8 in[8192]; + sal_uInt8 out[8192]; + sal_uInt64 nBytesRead, nBytesWritten; + do + { + CPPUNIT_ASSERT(osl::FileBase::E_None == aIn.read(in, sizeof(in), nBytesRead)); + CPPUNIT_ASSERT(rtl_Cipher_E_None == rtl_cipher_decode(cipher, in, nBytesRead, out, sizeof(out))); + CPPUNIT_ASSERT(osl::FileBase::E_None == aOut.write(out, nBytesRead, nBytesWritten)); + CPPUNIT_ASSERT(nBytesRead == nBytesWritten); + } + while (nBytesRead == sizeof(in)); + + rtl_cipher_destroy(cipher); +} + void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUString &rURL, const rtl::OUString &rUserData, filterStatus nExpected) { @@ -51,7 +87,8 @@ void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUStrin recursiveScan(rFilter, sURL, rUserData, nExpected); else { - rtl::OUString aTmpFile; + rtl::OUString sTmpFile; + bool bCVE = false; sal_Int32 nLastSlash = sURL.lastIndexOf('/'); @@ -62,11 +99,23 @@ void FiltersTest::recursiveScan(const rtl::OUString &rFilter, const rtl::OUStrin { continue; } + + if (sURL.matchAsciiL(RTL_CONSTASCII_STRINGPARAM("CVE")), nLastSlash+1) + bCVE = true; } rtl::OString aRes(rtl::OUStringToOString(sURL, osl_getThreadTextEncoding())); + if (bCVE) + { + osl::FileBase::RC err = osl::FileBase::createTempFile(NULL, NULL, &sTmpFile); + CPPUNIT_ASSERT_MESSAGE("temp File creation failed", + err == osl::FileBase::E_None); + decode(sURL, sTmpFile); + sURL = sTmpFile; + } + //output name early, so in the case of a hang, the name of //the hanging input file is visible if (nExpected == test::indeterminate) diff --git a/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2005-2971-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2005-2971-1.rtf index 7ed841f..5cd4205 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2005-2971-1.rtf and b/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2005-2971-1.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2010-3451-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2010-3451-1.rtf index 5cc06e8..0c63981 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2010-3451-1.rtf and b/writerfilter/qa/cppunittests/rtftok/data/fail/CVE-2010-3451-1.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2964.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2964.rtf index bf61eea..da97fba 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2964.rtf and b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2964.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-1.rtf index c38d6fc..7032170 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-1.rtf and b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-1.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-2.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-2.rtf index 2a3f782..c5ea695 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-2.rtf and b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2005-2972-2.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2007-0245-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2007-0245-1.rtf index a166c56..757cfe6 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2007-0245-1.rtf and b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2007-0245-1.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3333-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3333-1.rtf index aaf9acd..4dac58c 100644 Binary files a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3333-1.rtf and b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3333-1.rtf differ diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3452-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3452-1.rtf index b2800b5..da5d0f3 100644 --- a/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3452-1.rtf +++ b/writerfilter/qa/cppunittests/rtftok/data/pass/CVE-2010-3452-1.rtf @@ -1 +1 @@ -{\rtf1\ansi{\*\pnseclvlÿ}} +2 ØHv$Èsù£Á A«óu4j \ No newline at end of file commit 8c0a791b74005765b99a8d7bd6e2b5d2f998b7f3 Author: Caolán McNamara <caol...@redhat.com> Date: Fri Sep 30 16:05:49 2011 +0100 callcatcher: newly unused code diff --git a/editeng/source/outliner/paralist.cxx b/editeng/source/outliner/paralist.cxx index 37effdf..53e31fe 100644 --- a/editeng/source/outliner/paralist.cxx +++ b/editeng/source/outliner/paralist.cxx @@ -180,18 +180,6 @@ void ParagraphList::MoveParagraphs( sal_uLong nStart, sal_uLong nDest, sal_uLong } } -Paragraph* ParagraphList::LastVisible() const -{ - std::vector<Paragraph*>::const_reverse_iterator iter; - for (iter = maEntries.rbegin(); iter != maEntries.rend(); ++iter) - { - if ((*iter)->IsVisible()) - break; - } - - return iter != maEntries.rend() ? *iter : NULL; -} - sal_Bool ParagraphList::HasChilds( Paragraph* pParagraph ) const { sal_uLong n = GetAbsPos( pParagraph ); diff --git a/editeng/source/outliner/paralist.hxx b/editeng/source/outliner/paralist.hxx index d574551..f4b0ae4 100644 --- a/editeng/source/outliner/paralist.hxx +++ b/editeng/source/outliner/paralist.hxx @@ -57,8 +57,6 @@ public: void Remove( sal_uLong nPara ); void MoveParagraphs( sal_uLong nStart, sal_uLong nDest, sal_uLong nCount ); - Paragraph* LastVisible() const; - Paragraph* GetParent( Paragraph* pParagraph /*, sal_uInt16& rRelPos */ ) const; sal_Bool HasChilds( Paragraph* pParagraph ) const; sal_Bool HasHiddenChilds( Paragraph* pParagraph ) const;
_______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits