[PR #1071] [MERGED] server: Add ldap subschema entry #1103

Closed
opened 2026-02-27 09:10:55 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/lldap/lldap/pull/1071
Author: @T0byV
Created: 1/8/2025
Status: Merged
Merged: 7/6/2025
Merged by: @nitnelave

Base: mainHead: add-ldap-subschema


📝 Commits (2)

  • 20dbb72 server, ldap: add support for Subschema requests
  • 6e6d506 Merge branch 'main' into add-ldap-subschema

📊 Changes

13 files changed (+544 additions, -29 deletions)

View changed files

📝 Cargo.lock (+3 -0)
📝 crates/access-control/src/lib.rs (+7 -0)
📝 crates/domain/Cargo.toml (+1 -0)
📝 crates/domain/src/schema.rs (+8 -0)
📝 crates/graphql-server/src/query.rs (+48 -2)
📝 crates/ldap/Cargo.toml (+10 -0)
📝 crates/ldap/src/core/group.rs (+23 -2)
📝 crates/ldap/src/core/user.rs (+28 -13)
📝 crates/ldap/src/core/utils.rs (+142 -2)
📝 crates/ldap/src/handler.rs (+24 -4)
📝 crates/ldap/src/lib.rs (+3 -0)
📝 crates/ldap/src/search.rs (+241 -6)
📝 schema.graphql (+6 -0)

📄 Description

This PR aims to resolve #893. It adds a subschema entry to the rootDSE, which shows all attributes and objectclasses present on the LLDAP server, which is needed for some applications that need to index the LDAP server. The current implementation's goal is to have a bare minimum working subschema which follows the LDAP RFC. It also updates the GraphQL interface to follow the changes that have been made in actually seperating out objectclasses, instead of having them as an attribute.

Currently, this is work in progress and no tests have been implemented yet.
I'm publishing this PR as a draft as it's not ready to be merged in the state it is currently in, but it might be a good start for others who would like to continue on this issue, as my progress has stalled for more than a month. Feel free to contribute / use this for inspiration.

Tests were added, and the PR is now in a presentable state.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/lldap/lldap/pull/1071 **Author:** [@T0byV](https://github.com/T0byV) **Created:** 1/8/2025 **Status:** ✅ Merged **Merged:** 7/6/2025 **Merged by:** [@nitnelave](https://github.com/nitnelave) **Base:** `main` ← **Head:** `add-ldap-subschema` --- ### 📝 Commits (2) - [`20dbb72`](https://github.com/lldap/lldap/commit/20dbb72b460d77aae8abf98ae03ec1f8fe04ea58) server, ldap: add support for Subschema requests - [`6e6d506`](https://github.com/lldap/lldap/commit/6e6d5069d69fe006352e857100390d95ff4d0224) Merge branch 'main' into add-ldap-subschema ### 📊 Changes **13 files changed** (+544 additions, -29 deletions) <details> <summary>View changed files</summary> 📝 `Cargo.lock` (+3 -0) 📝 `crates/access-control/src/lib.rs` (+7 -0) 📝 `crates/domain/Cargo.toml` (+1 -0) 📝 `crates/domain/src/schema.rs` (+8 -0) 📝 `crates/graphql-server/src/query.rs` (+48 -2) 📝 `crates/ldap/Cargo.toml` (+10 -0) 📝 `crates/ldap/src/core/group.rs` (+23 -2) 📝 `crates/ldap/src/core/user.rs` (+28 -13) 📝 `crates/ldap/src/core/utils.rs` (+142 -2) 📝 `crates/ldap/src/handler.rs` (+24 -4) 📝 `crates/ldap/src/lib.rs` (+3 -0) 📝 `crates/ldap/src/search.rs` (+241 -6) 📝 `schema.graphql` (+6 -0) </details> ### 📄 Description This PR aims to resolve #893. It adds a subschema entry to the rootDSE, which shows all attributes and objectclasses present on the LLDAP server, which is needed for some applications that need to index the LDAP server. The current implementation's goal is to have a bare minimum working subschema which follows the LDAP RFC. It also updates the GraphQL interface to follow the changes that have been made in actually seperating out objectclasses, instead of having them as an attribute. ~~Currently, this is work in progress and no tests have been implemented yet. I'm publishing this PR as a draft as it's not ready to be merged in the state it is currently in, but it might be a good start for others who would like to continue on this issue, as my progress has stalled for more than a month. Feel free to contribute / use this for inspiration.~~ Tests were added, and the PR is now in a presentable state. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 09:10:55 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/lldap-lldap#1103
No description provided.