[pbs-devel] applied-series: [PATCH v3 proxmox 0/6] introduce proxmox-ldap crate

Wolfgang Bumiller w.bumiller at proxmox.com
Wed Feb 8 14:32:14 CET 2023


applied series, with some followups:
- dropped the Ldap prefixes (it was mixed with&without and we repeat so
  much already anyway)
- default-features needs to go to the toplevel Cargo.toml
- git repo in d/control was still the separate one

On Tue, Jan 24, 2023 at 11:03:31AM +0100, Lukas Wagner wrote:
> This patch series adds the new `proxmox-ldap` crate. The crate is mostly based on
> `src/server/ldap.rs` from [1].
> 
> The main reason for breaking this out into a separate crate is to make it easily
> reusable from PVE/PMG via perlmod -- at some point in the future, all
> products could use the same LDAP implemenation.
> 
> This is sent as a separate patch series, as the original [1] was already
> quite large with 17 commits, affecting multiple repositories.
> 
> 
> Changes v2 -> v3:
>   * Move the `proxmox-ldap` crate into the `proxmox` repo
>   * Let FilterElement take &str instead of String
>   * Implement the Display trait instead of ToString
> 
> Changes [1]@v1 -> v2:
>   * Change how custom TLS-certificates work:
>     Pass certificate paths instead of strings containing the
>     certificate.
>     Now, users of this crate can pass additional root certs that
>     are to be trusted. Alternatively, and this was added with PVE
>     compatibility in mind, one can add whole certificate store
>     directories, replacing the system's default at `/etc/ssl/certs`.
> 
>   * Add integration tests, testing the implementation against a real
>     LDAP server (`glauth`). The test can be executed via the
>     `run_integratin_tests.sh` helper and require the `glauth` binary to
>     be available. The integration tests are #[ignored] by default, so they
>     don't interfere with regular unit-test execution.
> 
> Thanks to Wolfgang and Thomas for their review of v2.
> 
> [1] https://lists.proxmox.com/pipermail/pbs-devel/2023-January/005788.html
> 
> Lukas Wagner (6):
>   ldap: create new `proxmox-ldap` crate
>   ldap: add basic user auth functionality
>   ldap: add helpers for constructing LDAP filters
>   ldap: allow searching for LDAP entities
>   ldap: tests: add LDAP integration tests
>   ldap: add debian packaging
> 
>  Cargo.toml                                    |   3 +
>  proxmox-ldap/Cargo.toml                       |  18 +
>  proxmox-ldap/debian/changelog                 |   5 +
>  proxmox-ldap/debian/control                   |  43 ++
>  proxmox-ldap/debian/copyright                 |  16 +
>  proxmox-ldap/debian/debcargo.toml             |   7 +
>  proxmox-ldap/run_integration_tests.sh         |  31 ++
>  proxmox-ldap/src/lib.rs                       | 390 ++++++++++++++++++
>  .../tests/assets/generate_certificate.sh      |   4 +
>  proxmox-ldap/tests/assets/glauth.cfg          |  67 +++
>  proxmox-ldap/tests/assets/glauth.crt          |  29 ++
>  proxmox-ldap/tests/assets/glauth.key          |  52 +++
>  proxmox-ldap/tests/assets/glauth_v6.cfg       |  67 +++
>  proxmox-ldap/tests/glauth.rs                  | 166 ++++++++
>  14 files changed, 898 insertions(+)
>  create mode 100644 proxmox-ldap/Cargo.toml
>  create mode 100644 proxmox-ldap/debian/changelog
>  create mode 100644 proxmox-ldap/debian/control
>  create mode 100644 proxmox-ldap/debian/copyright
>  create mode 100644 proxmox-ldap/debian/debcargo.toml
>  create mode 100755 proxmox-ldap/run_integration_tests.sh
>  create mode 100644 proxmox-ldap/src/lib.rs
>  create mode 100755 proxmox-ldap/tests/assets/generate_certificate.sh
>  create mode 100644 proxmox-ldap/tests/assets/glauth.cfg
>  create mode 100644 proxmox-ldap/tests/assets/glauth.crt
>  create mode 100644 proxmox-ldap/tests/assets/glauth.key
>  create mode 100644 proxmox-ldap/tests/assets/glauth_v6.cfg
>  create mode 100644 proxmox-ldap/tests/glauth.rs
> 
> -- 
> 2.30.2





More information about the pbs-devel mailing list