Hello community, here is the log from the commit of package p7zip for openSUSE:Factory checked in at 2015-10-28 17:18:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/p7zip (Old) and /work/SRC/openSUSE:Factory/.p7zip.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "p7zip" Changes: -------- --- /work/SRC/openSUSE:Factory/p7zip/p7zip.changes 2015-07-02 22:45:20.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.p7zip.new/p7zip.changes 2015-10-28 17:18:30.000000000 +0100 @@ -1,0 +2,16 @@ +Thu Oct 22 09:43:39 UTC 2015 - idonmez@suse.com + +- Update to version 15.09 + * Based on 7-zip 15.09 release + * 7-Zip now can extract ext2 and multivolume VMDK images. + * 7-Zip now can extract ext3 and ext4 (Linux file system) images. + * 7-Zip now can extract GPT images and single file QCOW2, VMDK, VDI images. + * 7-Zip now can extract solid WIM archives with LZMS compression. + * 7-Zip now can extract RAR5 archives. + * 7-Zip now doesn't sort files by type while adding to solid 7z archive. + new -mqs switch to sort files by type while adding to solid 7z archive. + * 7-Zip now can create 7z, xz and zip archives with 1536 MB dictionary for LZMA/LZMA2. + * 7-Zip now can extract .zipx (WinZip) archives that use xz compression. +- Refresh p7zip-CVE-2015-1038.patch + +------------------------------------------------------------------- Old: ---- p7zip_9.38.1_src_all.tar.bz2 New: ---- p7zip_15.09_src_all.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ p7zip.spec ++++++ --- /var/tmp/diff_new_pack.2nhMnr/_old 2015-10-28 17:18:31.000000000 +0100 +++ /var/tmp/diff_new_pack.2nhMnr/_new 2015-10-28 17:18:31.000000000 +0100 @@ -17,13 +17,13 @@ Name: p7zip -Version: 9.38.1 +Version: 15.09 Release: 0 Summary: 7-zip file compression program License: LGPL-2.1+ Group: Productivity/Archiving/Compression Url: http://p7zip.sourceforge.net/ -Source: http://switch.dl.sourceforge.net/sourceforge/%{name}/%{name}_%{version}_src_all.tar.bz2 +Source: http://downloads.sourceforge.net/project/p7zip/p7zip/15.09/p7zip_%{version}_src_all.tar.bz2 Patch0: p7zip-CVE-2015-1038.patch BuildRequires: gcc-c++ BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ p7zip-CVE-2015-1038.patch ++++++ --- /var/tmp/diff_new_pack.2nhMnr/_old 2015-10-28 17:18:31.000000000 +0100 +++ /var/tmp/diff_new_pack.2nhMnr/_new 2015-10-28 17:18:31.000000000 +0100 @@ -21,9 +21,11 @@ this isn't portable. We can probably get away with comparing ctime since we don't support hard links. ---- a/CPP/7zip/UI/Agent/Agent.cpp -+++ b/CPP/7zip/UI/Agent/Agent.cpp -@@ -1215,7 +1215,7 @@ STDMETHODIMP CAgentFolder::Extract(const +Index: p7zip_15.09/CPP/7zip/UI/Agent/Agent.cpp +=================================================================== +--- p7zip_15.09.orig/CPP/7zip/UI/Agent/Agent.cpp ++++ p7zip_15.09/CPP/7zip/UI/Agent/Agent.cpp +@@ -1515,7 +1515,7 @@ STDMETHODIMP CAgentFolder::Extract(const HRESULT result = _agentSpec->GetArchive()->Extract(&realIndices.Front(), realIndices.Size(), testMode, extractCallback); if (result == S_OK) @@ -32,9 +34,11 @@ return result; COM_TRY_END } ---- a/CPP/7zip/UI/Client7z/Client7z.cpp -+++ b/CPP/7zip/UI/Client7z/Client7z.cpp -@@ -222,8 +222,11 @@ private: +Index: p7zip_15.09/CPP/7zip/UI/Client7z/Client7z.cpp +=================================================================== +--- p7zip_15.09.orig/CPP/7zip/UI/Client7z/Client7z.cpp ++++ p7zip_15.09/CPP/7zip/UI/Client7z/Client7z.cpp +@@ -230,8 +230,11 @@ private: COutFileStream *_outFileStreamSpec; CMyComPtr<ISequentialOutStream> _outFileStream; @@ -46,7 +50,7 @@ UInt64 NumErrors; bool PasswordIsDefined; -@@ -441,11 +444,23 @@ STDMETHODIMP CArchiveExtractCallback::Se +@@ -449,11 +452,23 @@ STDMETHODIMP CArchiveExtractCallback::Se } _outFileStream.Release(); if (_extractMode && _processedFileInfo.AttribDefined) @@ -71,7 +75,7 @@ STDMETHODIMP CArchiveExtractCallback::CryptoGetTextPassword(BSTR *password) { -@@ -912,6 +927,8 @@ int MY_CDECL main(int numArgs, const cha +@@ -914,6 +929,8 @@ int MY_CDECL main(int numArgs, const cha // extractCallbackSpec->PasswordIsDefined = true; // extractCallbackSpec->Password = L"1"; HRESULT result = archive->Extract(NULL, (UInt32)(Int32)(-1), false, extractCallback); @@ -80,18 +84,20 @@ if (result != S_OK) { PrintError("Extract Error"); ---- a/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp -+++ b/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp -@@ -1083,7 +1083,7 @@ STDMETHODIMP CArchiveExtractCallback::Se +Index: p7zip_15.09/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +=================================================================== +--- p7zip_15.09.orig/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp ++++ p7zip_15.09/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp +@@ -1502,7 +1502,7 @@ STDMETHODIMP CArchiveExtractCallback::Se NumFiles++; - if (_extractMode && _fi.AttribDefined) + if (!_stdOutMode && _extractMode && _fi.AttribDefined) - SetFileAttrib(_diskFilePath, _fi.Attrib); + SetFileAttrib(_diskFilePath, _fi.Attrib, &_delayedSymLinks); - RINOK(_extractCallback2->SetOperationResult(operationResult, _encrypted)); - return S_OK; - COM_TRY_END -@@ -1149,8 +1149,9 @@ static int GetNumSlashes(const FChar *s) + + RINOK(_extractCallback2->SetOperationResult(opRes, BoolToInt(_encrypted))); + +@@ -1584,8 +1584,9 @@ static unsigned GetNumSlashes(const FCha } } @@ -102,7 +108,7 @@ CRecordVector<CExtrRefSortPair> pairs; pairs.ClearAndSetSize(_extractedFolderPaths.Size()); unsigned i; -@@ -1187,5 +1188,12 @@ HRESULT CArchiveExtractCallback::SetDirs +@@ -1622,5 +1623,12 @@ HRESULT CArchiveExtractCallback::SetDirs (WriteATime && ATimeDefined) ? &ATime : NULL, (WriteMTime && MTimeDefined) ? &MTime : (_arc->MTimeDefined ? &_arc->MTime : NULL)); } @@ -116,8 +122,10 @@ + + return result; } ---- a/CPP/7zip/UI/Common/ArchiveExtractCallback.h -+++ b/CPP/7zip/UI/Common/ArchiveExtractCallback.h +Index: p7zip_15.09/CPP/7zip/UI/Common/ArchiveExtractCallback.h +=================================================================== +--- p7zip_15.09.orig/CPP/7zip/UI/Common/ArchiveExtractCallback.h ++++ p7zip_15.09/CPP/7zip/UI/Common/ArchiveExtractCallback.h @@ -6,6 +6,8 @@ #include "../../../Common/MyCom.h" #include "../../../Common/Wildcard.h" @@ -127,7 +135,7 @@ #include "../../IPassword.h" #include "../../Common/FileStreams.h" -@@ -213,6 +215,8 @@ class CArchiveExtractCallback: +@@ -237,6 +239,8 @@ class CArchiveExtractCallback: bool _saclEnabled; #endif @@ -136,18 +144,20 @@ void CreateComplexDirectory(const UStringVector &dirPathParts, FString &fullPath); HRESULT GetTime(int index, PROPID propID, FILETIME &filetime, bool &filetimeIsDefined); HRESULT GetUnpackSize(); -@@ -293,7 +297,7 @@ public: - _baseParentFolder = indexInArc; +@@ -330,7 +334,7 @@ public: } + #endif - HRESULT SetDirsTimes(); + HRESULT SetFinalAttribs(); }; - #endif ---- a/CPP/7zip/UI/Common/Extract.cpp -+++ b/CPP/7zip/UI/Common/Extract.cpp -@@ -170,7 +170,7 @@ static HRESULT DecompressArchive( + bool CensorNode_CheckPath(const NWildcard::CCensorNode &node, const CReadArcItem &item); +Index: p7zip_15.09/CPP/7zip/UI/Common/Extract.cpp +=================================================================== +--- p7zip_15.09.orig/CPP/7zip/UI/Common/Extract.cpp ++++ p7zip_15.09/CPP/7zip/UI/Common/Extract.cpp +@@ -207,7 +207,7 @@ static HRESULT DecompressArchive( else result = archive->Extract(&realIndices.Front(), realIndices.Size(), testMode, ecs); if (result == S_OK && !options.StdInMode) @@ -156,9 +166,11 @@ return callback->ExtractResult(result); } ---- a/CPP/Windows/FileDir.cpp -+++ b/CPP/Windows/FileDir.cpp -@@ -343,7 +343,8 @@ static int convert_to_symlink(const char +Index: p7zip_15.09/CPP/Windows/FileDir.cpp +=================================================================== +--- p7zip_15.09.orig/CPP/Windows/FileDir.cpp ++++ p7zip_15.09/CPP/Windows/FileDir.cpp +@@ -347,7 +347,8 @@ static int convert_to_symlink(const char return -1; } @@ -168,7 +180,7 @@ { if (!fileName) { SetLastError(ERROR_PATH_NOT_FOUND); -@@ -375,7 +376,9 @@ bool SetFileAttrib(CFSTR fileName, DWORD +@@ -379,7 +380,9 @@ bool SetFileAttrib(CFSTR fileName, DWORD stat_info.st_mode = fileAttributes >> 16; #ifdef ENV_HAVE_LSTAT if (S_ISLNK(stat_info.st_mode)) { @@ -179,7 +191,7 @@ TRACEN((printf("SetFileAttrib(%s,%d) : false-3\n",(const char *)name,fileAttributes))) return false; } -@@ -885,6 +888,43 @@ bool CTempDir::Remove() +@@ -814,6 +817,43 @@ bool CTempDir::Remove() return !_mustBeDeleted; } @@ -222,9 +234,11 @@ + }}} - ---- a/CPP/Windows/FileDir.h -+++ b/CPP/Windows/FileDir.h + #ifndef _SFX +Index: p7zip_15.09/CPP/Windows/FileDir.h +=================================================================== +--- p7zip_15.09.orig/CPP/Windows/FileDir.h ++++ p7zip_15.09/CPP/Windows/FileDir.h @@ -4,6 +4,7 @@ #define __WINDOWS_FILE_DIR_H @@ -249,7 +263,7 @@ bool MyMoveFile(CFSTR existFileName, CFSTR newFileName); #ifndef UNDER_CE -@@ -69,6 +73,31 @@ public: +@@ -76,6 +80,31 @@ public: bool Remove(); }; @@ -281,4 +295,3 @@ #if !defined(UNDER_CE) class CCurrentDirRestorer { - ++++++ p7zip_9.38.1_src_all.tar.bz2 -> p7zip_15.09_src_all.tar.bz2 ++++++ ++++ 165165 lines of diff (skipped)