Implement Kerberos in Rust NASL using existing C code#2133
Open
Implement Kerberos in Rust NASL using existing C code#2133
Conversation
311d93a to
7455805
Compare
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Snapshot WarningsEnsure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice. OpenSSF ScorecardScorecard details
Scanned Files
|
7455805 to
d5dbcca
Compare
Kraemii
commented
Feb 12, 2026
Kraemii
commented
Feb 12, 2026
d5dbcca to
983ebb7
Compare
d809781 to
4c451d6
Compare
4c451d6 to
b53e08e
Compare
b53e08e to
0928e40
Compare
0928e40 to
d07bd9e
Compare
d07bd9e to
651e126
Compare
651e126 to
8fd0847
Compare
8fd0847 to
26494b3
Compare
56cae26 to
ecd3d51
Compare
ecd3d51 to
c6fef61
Compare
c6fef61 to
c32b639
Compare
c32b639 to
7a6707e
Compare
This includes: - Move all build artifacts to target directory, so they will be cleaned with a `cargo clean` - Remove shell script for building `libgcrypt` and `libgpg-error`. Instead building it within `build.rs` - Compile needed c functions in sys crate - Provide bindings in sys crate - Re-export sys crate in nas-c-lib to make bindings available
This will now automatically: - download krb5 source - build static krb5 libs from source - compile openvas-krb5 implementation - generate bindings to use openvas-krb5 implementation
This includes: - krb5_error_code_to_string - krb5_find_kdc - krb5_gss_init - krb5_gss_prepare_context - krb5_gss_session_key - krb5_gss_update_context - krb5_gss_update_context_needs_more - krb5_gss_update_context_out - krb5_is_failure - krb5_is_success
55e764c to
c563c9a
Compare
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.
In the first step I just did a tidy up of the build scripts already in use for building C code, we already depend on. This includes:
cargo cleanlibgcryptandlibgpg-error. Instead building it withinbuild.rsNext I implemented libopenvas-krb5-sys, which includes a build script to:
Finally I added all Nasl builtin functions for Kerberos:
Jira: SC-1136
For testing I provide a small and simple test script. Please use environment variables to fill all the necessary parameters for the Krb5 credentials. Here a template: