Comments (5)
Sounds great, let's do it! 💪
regarding coding style in Rust, there is rustfmt. Just
- run rustfmt on the codebase before you do any work
- if there are changes, commit them separately
- do your changes in any coding style you like
- run rustfmt again
- commit
from keepass-rs.
Regarding the issue itself, let's do #29 first and then follow up with this issue.
from keepass-rs.
Thanks for filing the issue! Probably, there is some difference in the XML formats betwen KDBX3 and KDBX4 that I was not yet aware of.
from keepass-rs.
As a heads-up, I am in a state of being constantly very busy with my day job, so I might not be able to do much troubleshooting on this right now. It might take me some time to fix this.
keepass-rs
was one of my first real Rust projects, and I learned a lot in writing it. If you want to take a stab at fixing this yourself, I do think that I would have enough time to mentor.
from keepass-rs.
I think I have found my issue with pulling ExpiryTime
from the database for #29 at the very bottom of the official KDBX 4 documentation page:
In encrypted KDBX 4 files (not in plaintext XML exports), all times are now stored as Base64 string of the Int64 number of seconds elapsed since 0001-01-01 00:00 UTC. This improves the performance and reduces the file size.
Note: The file formats look the same when saved/exported as unencrypted XML!
@sseemayer,
I would love to take you up on the mentoring offer as your availability permits. I think I am getting close to having something presentable via a Draft PR for addressing #29 and will definitely appreciate any corrections, commentary, suggestions, etc. I have tried to follow your coding style for a few reasons:
- This is my first Rust coding (also my first GitHub experience) of any significance; and, assuming we complete it, my first real Open Source project contribution.
- I am a firm believer that coding styles should at least be consistent within modules, ideally within projects.
- Hopefully, this will make the code and any later maintenance easier.
Maybe I can track down the KDBX4 issue with Entry::AutoType.sequence
after that.
Thank you again!
from keepass-rs.
Related Issues (20)
- Better UUID handling
- Discussion: DatabaseKey design HOT 5
- Define a security policy for the project
- Warnings about conflicting changes raised when merging with keepassxc-cli HOT 1
- FR: Better ergonomics in structs? HOT 3
- ci: migrate to dtolnay/rust-toolchain for setting up rust toolchain
- Add support for YubiKey Challenge-Response
- Add support for Argon2i KDF
- Want be a member HOT 1
- impl Zeroize for DatabaseKey HOT 2
- Make the `Build Doc` PR check required HOT 1
- Document the Minimum Supported Rust Version (MSRV)
- Implement Zeroize for Value::Protected
- keepass-rs panics if providing a defect kdbx file HOT 1
- Database::open() should use generic parameter HOT 3
- Implement Zeroize for TOTP
- update URL for code coverage badge HOT 2
- Incorrect key when opening kdbx4 HOT 1
- save_kdbx4: Chunking by block size in hmac_block_stream corrupts database
- Fix code coverage job HOT 1
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 keepass-rs.