Comments (7)
Link to archive is http://springrts.com/dl/buildbot/default/develop/102.0.1-19-gfbc1b5b/win32/spring_%7bdevelop%7d102.0.1-19-gfbc1b5b_win32-minimal-portable.7z
from managed-lzma.
In a first look the metadata section of the 7z file (compressed via lzma) decodes properly (decoded checksum matches the header value) but then parsing the metadata section yields strange file attributes which make no sense; from there on it is probably broken. Right now I'm suspecting a bug in the metadata parsing code.
from managed-lzma.
Update: the archive has been created on linux, using linux file attributes. I don't parse these properly since they use different constants.
If I ignore the linux file attributes the decoder still throws an exception, so something else is going wrong.
from managed-lzma.
For the second part its the same issue as #16 just for the lzma decoder instead of lzma2 ... oops
I'm fixing that over at the other issue, leaving this issue to deal with the linux file attributes.
from managed-lzma.
Further research shows that linux file attributes are not officially supported by 7z archives, but some 3rd party implementations abused the fact that the official codebase is lazy in its error checking and started hiding linux file attributes in unused metadata bits.
Newer versions of the 7z GUI client acknowledge this and try to parse this unofficial extension, but the main 7z codebase still does not support it, it is only handled in the UI layer.
However since it seems to have become a de-facto standard I'll update my implementation to be able to deal with it.
from managed-lzma.
This should make it possible to read archives using this extension. I'll create a separate issue to track the possible feature request of being able to extract those posix file attributes.
from managed-lzma.
The fix for this is included in alpha-6
from managed-lzma.
Related Issues (20)
- ArchiveFileModel does not expose file metadata HOT 3
- Implement DELTA and BZIP2 decoders
- Could not install package 'ManagedLzma 0.2.0-alpha-4' HOT 3
- No able unzip when the source file over 20mb folder when Zip file with LZMA2 and AesEncoder HOT 2
- Extract posix file attributes from 7z archives
- readme.md documentation
- Get feedback on amount of unflushed data in buffers HOT 1
- Implement PPMD decoder without using 'unsafe' code
- Consider using `ref return` feature
- Create .NET Standard 2.0 package HOT 1
- Decoding Exception HOT 4
- Decoder performance
- How to compress a Byte Array Or MemoryStream? The library needs documentation. HOT 1
- OverflowException in ctor of master/7zip/Decoder/BufferedStream.cs HOT 1
- How to add a folder and add files under the folder? HOT 3
- Multithreaded operation possilble? HOT 6
- Unable to decompress zero lenght file
- Data decompresses with C++ but exceptions when decompressed with managed lzma HOT 6
- sandbox-7z example code fails when archive contains empty file HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from managed-lzma.