fix: code updates, lints and git hooks#2
Open
bongx00 wants to merge 19 commits into
Open
Conversation
…g and lints, README changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi @c0rnf13ld , first of all, thanks for open-sourcing your project, It's really cool. That being said, I made a few changes aimed at improving the code and simplifying usage:
Remove sudo: sudo is required to test whether the target is up because of the use of python-nmap. When we use the tool It means that the target is already up, removing the python-nmap -sU check eliminates the need to run the script with sudo. Any errors are handled by ipmitool as usual.
IPMI as dependency: With the nmap part removed, adding ipmitool installation instructions to the README removes the need for apt-get install steps. Then, Python dependencies can then be moved fully into requirements.txt, resulting in a cleaner separation of concerns.
Collaboration (GitHub Actions & linters): I added some linting rules for code quality and commit style consistency. I believe this improves maintainability. The GitHub Actions workflow is triggered once the files are added to the repository, and the linting dependencies are defined in requirements-dev.txt, specifically for development purposes. This means it does not affect users who simply want to clone and run the project.
Do not stop on first valid user: I implemented a change to address an issue raised in the project. It now allows dumping all hashes when a user wordlist is provided, instead of stopping at the first valid match (removing early break behavior).
Removal of the Bash version: I removed the Bash implementation and its associated files. Maintaining both Bash and Python versions introduced unnecessary duplication, while the Bash version was also noisier and slower. Keeping Python as the sole implementation provides a cleaner codebase, reduces maintenance overhead, and establishes a single, consistent execution path.
Kind regards!