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

Add keygen command. #9

Open
wants to merge 30 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 22 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
fdb4cb1
Keygen skeleton.
ximon18 Oct 17, 2024
c914a7c
[keygen] Implement the basic features
bal-e Oct 29, 2024
7dc6b82
[keygen] synchronize files before exiting
bal-e Oct 29, 2024
5746c3b
[keygen] Add help documentation
bal-e Oct 29, 2024
0333288
[keygen] Generate '.ds' files for KSKs
bal-e Oct 29, 2024
b313809
[keygen] Use 'display_as_bind()'
bal-e Oct 30, 2024
4f2fd8e
[keygen] Add support for symlinks (Unix only)
bal-e Oct 30, 2024
51cdb1c
Merge branch 'main' into keygen
bal-e Nov 11, 2024
73550b4
[keygen] Improve errors and support '.ds' symlinks
bal-e Nov 13, 2024
086246b
Implement ldns-specific parsing for 'keygen'
bal-e Nov 15, 2024
0ef9f0a
Merge branch 'main' into keygen
bal-e Nov 15, 2024
643ab86
[keygen] Implement '-v' with version info
bal-e Nov 15, 2024
a062704
[keygen] Add 'cfg(unix)' in ldns-parsing
bal-e Nov 15, 2024
d450192
[keygen] Correctly handle duplicate options in ldns parsing
bal-e Nov 15, 2024
f503fc8
Revert "[keygen] Implement '-v' with version info"
bal-e Nov 15, 2024
a5052ac
Merge branch 'main' into keygen
bal-e Nov 19, 2024
76d604a
[keygen] Integrate the use of 'Env'
bal-e Nov 19, 2024
bf09e96
[workflows/ci] Add OpenSSL installation steps
bal-e Nov 19, 2024
532a399
[workflows/ci] Integrate OpenSSL for 'minimal_versions'
bal-e Nov 19, 2024
eb171c4
Merge branch 'main' into keygen
bal-e Nov 19, 2024
f524f89
[keygen] Improve the 'dnst' interface
bal-e Nov 21, 2024
84977fb
[keygen] Satisfy clippy
bal-e Nov 21, 2024
a2224e6
[keygen] Simplify symlink CLI
bal-e Nov 25, 2024
9772177
Merge branch 'main' into keygen
bal-e Nov 25, 2024
4158fb8
Add basic filesystem operations to 'Env'
bal-e Nov 25, 2024
cf85404
[keygen] Use symlink ops provided by 'Env'
bal-e Nov 25, 2024
114b931
[keygen] Add basic tests for argument parsing
bal-e Nov 25, 2024
4a3fb18
[keygen] Add tests
bal-e Nov 26, 2024
1a0aa79
[keygen] Satisfy 'minimal-versions'
bal-e Nov 26, 2024
c531ec7
[keygen] Satisfy clippy
bal-e Nov 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,30 @@ jobs:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
rust: [1.78.0, stable, beta, nightly]
env:
RUSTFLAGS: "-D warnings"
# We use 'vcpkg' to install OpenSSL on Windows.
VCPKG_ROOT: "${{ github.workspace }}\\vcpkg"
VCPKGRS_TRIPLET: x64-windows-release
# Ensure that OpenSSL is dynamically linked.
VCPKGRS_DYNAMIC: 1
steps:
- name: Checkout repository
uses: actions/checkout@v1
- name: Install Rust
uses: hecrj/setup-rust-action@v2
with:
rust-version: ${{ matrix.rust }}
- if: matrix.os == 'ubuntu-latest'
run: sudo apt-get install -y libssl-dev
- if: matrix.os == 'windows-latest'
id: vcpkg
uses: johnwason/vcpkg-action@v6
with:
pkgs: openssl
triplet: ${{ env.VCPKGRS_TRIPLET }}
token: ${{ github.token }}
github-binarycache: true
- if: matrix.rust == 'stable'
run: rustup component add clippy
- if: matrix.rust == 'stable'
Expand All @@ -36,6 +53,8 @@ jobs:
uses: hecrj/setup-rust-action@v2
with:
rust-version: "1.78.0"
- name: Install OpenSSL
run: sudo apt-get install -y libssl-dev
- name: Install nightly Rust
run: rustup install nightly
- name: Check with minimal-versions
Expand Down
110 changes: 96 additions & 14 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 9 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,19 @@ default-run = "dnst"
name = "ldns"
path = "src/bin/ldns.rs"

[features]
default = ["openssl", "ring"]

# Cryptographic backends
openssl = ["domain/openssl"]
ring = ["domain/ring"]

[dependencies]
clap = { version = "4.3.4", features = ["derive"] }
domain = { version = "0.10.3", git = "https://github.com/NLnetLabs/domain.git", features = [
domain = { git = "https://github.com/NLnetLabs/domain.git", branch = "main", features = [
tertsdiepraam marked this conversation as resolved.
Show resolved Hide resolved
"zonefile",
"bytes",
"unstable-sign",
"unstable-validate",
] }
lexopt = "0.3.0"
Expand Down
Loading
Loading