Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to validate delta application against uncompressed data md5 #11

Open
sydneykwok opened this issue Nov 4, 2021 · 3 comments
Open

Comments

@sydneykwok
Copy link

sydneykwok commented Nov 4, 2021

Hi,

We build rpms using the Nebula rpm plugin for Gradle, which is based on Redline. What we have found is that we are able to create delta rpms with our rpms, but face “md5 mismatch of result” errors upon trying to apply them.

After some investigation, it seems as though this is probably due to the fact that there are differences between how the cpio data is compressed in our original newrpm (built with the nebula plugin/redline) and the newrpm that deltarpm reconstructs from the delta rpm. So although deltarpm does create the delta rpm correctly, these differences in compression between the original and recreated newrpm result in md5 mismatches.

We have resolved this issue by computing copies of targetmd5 (in makedeltarpm) and wrmd5 (in applydeltarpm) that are based on uncompressed, rather than compressed, cpio data. We refer to this as uncompmd5. We are wondering if there would be any interest in adding a command-line option to makedeltarpm and applydeltarpm that would allow for our uncompmd5 value to replace targetmd5 and wrmd5, respectively. In this way, if the traditional validation fails, users have the option to validate the delta application against this md5 computed with the uncompressed cpio data.

Looking forward to hearing your thoughts. Please let me know if any more information is required, thanks!

@AlbertoFernandez-devops

Exact same problem here. Can you share the code of the fix please?

Regards

@oesolutions
Copy link

@AlbertoFernandez-devops, @sydneykwok made changes in this branch https://github.com/pason-systems/deltarpm/tree/uncomp-md5

@AlbertoFernandez-devops

Thanks a lot!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants