Commit Graph
32 Commits
Author SHA1 Message Date
timmy 75ae796156 Allow sending an error message with the ldap response
Cleanup interfaces and allow the errorMessage ldap field to be used

Use the correct ldap server-side error code
LDAPResultNotSupported(92) is for a client side error
LDAPResultUnavailable(52) is for when a subsystem is not available
LDAPResultOther(80) is for generic server errors

Provide better errors

Fix binding dn to connection

Fix tests

Make handleSearchRequest conform to rfc4511
2026-08-25 14:48:53 -07:00
timmy cd44bd6eea Use EqualFold instead of ToLower in all possible places 2026-08-25 14:21:16 -07:00
timmy a0adcc062b Fix test cases provided by @navibodybuilder in #7 2026-08-25 14:21:16 -07:00
timmy a8aa3dece1 Fix substring match 2026-08-25 14:21:16 -07:00
timmy 94e9c7a5aa Make handleSearchRequest conform to rfc4511 2026-08-24 19:38:25 -07:00
timmy b4c86f583d Switch on tags instead of strings 2026-08-24 18:04:45 -07:00
timmy bb17f0bc21 Publish GetFilterAttribute and return unmodified string from filter 2026-08-24 18:04:45 -07:00
timmy 93ce6da943 Stricter error handling 2026-08-24 18:04:45 -07:00
timmy a03b89f9be Rename package to ldaps 2026-08-24 16:30:01 -07:00
timmy a4b5f16b98 Minimal set of changes to remove client and use upstream ldap package
Switches to github.com/go-ldap/ldap/v3 for ldap management as it generally
 has better practices and security
2026-08-24 16:29:16 -07:00
Marcel Heers 19bd16af77 can find entries based on DN (#2)
* fixes most staticcheck errors

* can find entries based on DN
2026-01-18 16:03:49 -08:00
Chris F Ravenscroft 297568ea5d feat: extensible match filters proxying (#5)
* feat: extensible match filters proxying
2026-01-18 15:55:48 -08:00
b9bf4d1baf Start tls by @shipperizer (#1)
* switch nmcclain/asn1-ber to go-asn1-ber/and1-ber.
This newer package has ben updated with tests, and looks to actually be supported.
It is also is a forked version of nmcclain/asn1-ber, so supports the same API.

* no need to print errors if client disconnects early and unexpectedly

* added in Close method on server to avoid a race condition

* test ssl certs are untrusted, ldapsearch needs to be told to allow untrusted certs

* Extra time.Wait causes the test to fail

* removed singaling with a custom quit chanel

* feat: support StartTLS in server

* lint: fmt and imports

* feat: rename library to be used by glauth

* chore: renamed packages

---------

Co-authored-by: Daniel Barney <daniel@thoughtplot.io>
Co-authored-by: Mark Rushakoff <mark@influxdata.com>
Co-authored-by: shipperizer <alexcabb@gmail.com>
2023-12-10 14:58:23 -08:00
wxiaoguang 7f8d1e44ee strings in LDAP are case-insensitive (#8)
Thank you @wxiaoguang !

* strings in LDAP are case-insensitive

* optmize routeFunc (faster, case-insensitive)

* small optimiztion to routeFunc

* request the directory server to return operational attributes by adding + (the plus sign) in your ldapsearch command.

* request the directory server to return operational attributes by adding + (the plus sign) in your ldapsearch command.

* request the directory server to return operational attributes by adding + (the plus sign) in your ldapsearch command.

* remove operational attributes
2021-07-20 10:27:43 -06:00
Apehaenger 6ebc2104fc Fixed handling of UTF8 chars in filter value (#9)
Thank you @Apehaenger
2021-07-20 10:27:06 -06:00
Jeroen Simonetti 6e14e82719 Implement FilterSubstrings (#2)
* Implement FilterSubstrings
* Remove unneeded if
Signed-off-by: Jeroen Simonetti <jeroen@simonetti.nl>


Signed-off-by: Jeroen Simonetti <jeroen@simonetti.nl>
2016-06-01 08:55:37 -06:00
ned c43d537d5b Implemented other LDAP server operations (add/delete/modify/extended/etc.) and tests. 2014-11-23 12:03:05 -07:00
ned f4e67fa4cd LDAP server support 2014-11-12 14:52:16 -07:00
Vincent Vanackere 0e043b3393 cleanup : unexport FilterMap & remove FilterSubstringsMap (unneeded) 2014-08-01 22:14:03 +02:00
Vincent Vanackere 03389e6f26 filter : small code cleanup
Also use ber.DecodeString in DecompileFilter like with all other filters
2014-08-01 22:01:21 +02:00
Gregory Haik 81cd5e4d4d filter: bugfix for FilterPresent 2014-08-01 18:16:52 +02:00
Vincent Vanackere 192ce467a8 Switch asn1-ber dependency to "github.com/vanackere/asn1-ber" 2014-07-24 13:07:31 +02:00
John Weldon 6b7bf8da55 SpruceHealth disappeared :-( 2014-04-15 18:02:01 -07:00
Samuel Stauffer 5023af85ba Fixed spelling of Primitive 2014-03-19 15:13:31 -07:00
Samuel Stauffer 2eea0c0a70 Use error instead of *Error 2014-03-19 14:22:55 -07:00
Samuel Stauffer 67312503d2 Remove newlines from log messages 2014-03-19 14:13:11 -07:00
Samuel Stauffer 4e3f3713c8 Some more cleanup 2014-03-19 14:05:10 -07:00
Samuel Stauffer 222854694e Stylistic fixes, update imports, and some format string fixes 2014-03-19 13:57:59 -07:00
Marc Sauter e2ff8b4459 rename 2014-03-19 13:57:59 -07:00
tmfkams 16e1575c86 refactoring, redesigned connection/message handling 2014-03-19 13:57:59 -07:00
tmfkams e45f834579 refactoring, fixes for go1.2, modify added 2014-03-19 13:57:58 -07:00
Michael Mitton 1094e1befc first commit 2011-02-18 01:36:55 -05:00