Patrick Mooney
00956eaae5
Add ducktyping Filter.isFilter method
...
This should make some headway in avoiding instanceof pitfalls when
dealing with Filter objects.
Fix mcavage/node-ldapjs#123
2014-06-23 18:09:56 -05:00
Patrick Mooney
72bfb9b0f7
Major overhaul of client connection logic
...
- Remove PooledClient
- Add reconnect functionality to client
- Add 'idle' client event and options
2014-06-23 16:15:52 -05:00
Patrick Mooney
f3e376d40b
Alter presence testing for Attribute vals
...
Ignoring a null 'vals' options while constructing a new Attribute object
will more closely mimic the behavior prior to mcavage/node-ldapjs#178 .
2014-06-23 13:37:35 -05:00
Patrick Mooney
f213b3e9a2
Allow configuration of derefAliases client option
...
Fix mcavage/node-ldapjs#134
2014-06-16 10:07:55 -05:00
Patrick Mooney
e8593f78ce
Add ServerSideSortingResponseControl
2014-06-09 15:58:01 -07:00
Patrick Mooney
352e4bbfba
Rename ServerSideSortingControl
...
ServerSideSortingRequestControl will be more consistent when
ServerSideSortingResponseControl is implemented.
2014-06-09 15:37:19 -07:00
Patrick Mooney
f1d4b667c3
Refactor ServerSideSortingControl
...
- Fix lint errors
- Always store SSSC sort fields as array
- Rename test file to match 'make test' pattern
2014-06-06 17:23:27 -05:00
Patrick Mooney
349e0f91bd
Merge qvicksilver/server_side_sorting
2014-06-06 14:56:56 -05:00
Patrick Mooney
d9b2b1378e
Properly dispatch unbind requests
...
Fix mcavage/node-ldapjs#197
2014-06-06 14:05:08 -05:00
Patrick Mooney
5a6e781293
Handle string ports properly in server.listen
...
Parse port as an integer when possible in server.listen. In addition to
fixing server.url output, this avoids some weird socket reuse behavior
when mixing string and integer types passed to net.listen.
Fix mcavage/node-ldapjs#196
2014-06-06 12:21:05 -05:00
Patrick Mooney
e92977b514
Refactor server route handling
...
Force route lookups to proceed lexically through mounted endpoint DNs.
Mounting to a null ('') DN will act as the default route for requests
which aren't matched by defined routes.
Fix mcavage/node-ldapjs#154
Fix mcavage/node-ldapjs#111
2014-06-05 16:53:23 -05:00
Patrick Mooney
87117ecdec
Use Buffer storage for EqualityFilter value
...
Store the value portion of EqualityFilter objects in raw attribute.
Certain binary-only comparisons (such as GUIDs or objectSIDs) are
difficult, if not impossible, to handle without direct binary access.
2014-06-01 19:46:11 -05:00
=
b742e286db
Fixed parse method and added some tests
2014-05-30 20:57:06 +00:00
Patrick Mooney
8d0a2d0d99
Add error code 123 from RFC4370
2014-05-24 09:53:37 -05:00
Jonathan Süssemilch Poulain
c5ccafd436
Server Side Sorting control
2014-05-16 17:10:24 +02:00
Patrick Mooney
8f1eb06ffa
Perform strict presence testing on attribute vals
...
When initializing an Attribute object, the 'vals' option field was being
loosely tested for content presence. By changing this test to a strict
comparison against undefined, Attribute object creation will be more
consistent across input values.
Fix mcavage/node-ldapjs#178
2014-05-11 20:38:37 -05:00
Tobias Muellerleile
e3d8ba2f37
Fixup for 501fb5a46b
2014-05-06 14:33:43 +02:00
Tobias Muellerleile
501fb5a46b
Accept buffers for cert/key in createServer
2014-05-06 07:36:18 +02:00
Patrick Mooney
d530893cce
Merge pfmooney/parser-error-handling
...
* pfmooney/parser-error-handling:
Improve parser error handling
2014-04-04 15:14:32 -05:00
Evan Shortiss
9afecfd788
Upadte to make dtrace-provider optional. Fix bug in original update.
2014-04-02 10:51:10 -04:00
Evan Shortiss
b3b26a48fa
Fix DTraceProvider name
2014-04-01 23:24:41 -04:00
Evan Shortiss
a84546b7bd
Update to make dtrace-provider optional.
2014-04-01 23:02:11 -04:00
Patrick Mooney
7c7c480eb8
Improve parser error handling
...
In cases where one side of the connection is not communicated with valid
ASN.1/BER, it would be better to fire an error event rather than let the
exception bubble all the way up.
Fix mcavage/node-ldapjs#142
2014-03-15 16:06:42 -05:00
Patrick Mooney
d20308265a
Circumvent lack of 'close' event for tls sockets
...
It appears that in node.js (at least recent versions), the 'close' event
is not emitted by TLS sockets. The CleartextStream class specifies that
the 'close' event is optional, so such operation is allowed. In order
to compensate, the event can be trapped at the raw net.socket instead.
Fix mcavage/node-ldapjs#161
2014-01-23 10:06:40 -06:00
Patrick Mooney
c5cfc48da4
Remove buffertools dependency
2014-01-20 09:34:11 -06:00
Patrick Mooney
bc19a98d06
Update buffertools dependency
...
Buffertools 2.0.1 is required to build on VC2013.
With the change to v2.x, the buffertools.extend() method must be called
to mimic the prototype extention behavior of the 1.x versions.
Fix mcavage/node-ldapjs#163
2014-01-18 14:42:21 -06:00
Patrick Mooney
6414682eee
Merge pfmooney/filter-case-attrs
...
Fix mcavage/node-ldapjs#155
2014-01-17 15:58:32 -06:00
Patrick Mooney
7bacfb676e
Merge from pfmooney/client-pool-events
...
Fix mcavage/node-ldapjs#162
2014-01-17 15:33:11 -06:00
Mark Cavage
bc897f9fd4
lint/test cleanup
2014-01-17 09:52:26 -08:00
Patrick Mooney
6b7906ce99
Fix error event handling for pooled clients
...
Do not emit error events if no listeners are present
2014-01-17 10:47:51 -06:00
Gonzalo Huerta-Canepa
737009ee15
Modified client to allow buffer as a value for exop
2014-01-03 12:58:20 +00:00
Gonzalo Huerta-Canepa
fce043d6d0
Allow ext request message to have a buffer value in order to accomodate rfc3062 exop
2014-01-03 12:47:42 +00:00
Patrick Mooney
9c78c06643
Make *Filter.matches case insensitive for attrs
2013-11-30 23:39:33 -06:00
Patrick Mooney
57fecb06d5
Update Filter utility functions
...
- Write simple tests for multi_test
- Add get_attr_caseless function for improving Filter.Match
2013-11-30 23:31:15 -06:00
Patrick Mooney
dfbb6031c6
Merge client-pool-events from pfmooney/node-ldapjs
...
Fix mcavage/node-ldapjs#87
2013-11-28 14:09:28 -06:00
Patrick Mooney
f5ba81dc38
Minor update to ClientPool event pass-through
...
- Allow event pass-through when performing ClientPool.bind
- Rename createPool parameter for better readability
- Fix jsstyle error
2013-11-28 14:08:17 -06:00
Patrick Mooney
ebcba1205d
Fix unhandled error during client connection
...
Client actions utilizing an EventEmitter may generate unhandled errors,
especially during initial connection. Tracking whether the emitter has
been sent via callback is critical for proper routing of such errors.
Fix mcavage/node-ldapjs#144
2013-10-30 18:24:37 -05:00
Patrick Mooney
df13275b8e
Output ldapi:// URLs for UNIX domain sockets
2013-10-29 23:46:48 -05:00
Patrick Mooney
00bcb58ea1
Fix jsstyle error
2013-10-29 23:38:12 -05:00
Patrick Mooney
d4a9d371f0
Re-enable ability to listen on UNIX domain sockets
2013-10-29 23:29:21 -05:00
Patrick Mooney
5d91284e57
Merge ephemeral_port from lloyd/node-ldapjs
2013-10-29 23:28:26 -05:00
Mark Cavage
aa633dfd20
support extensible matching of caseIgnore and caseIgnoreSubstrings
2013-10-28 21:12:12 +00:00
Patrick Mooney
e03d40957e
Fix some ClientPool event handling
...
Emit connectTimeout and error events from ClientPool as Client would.
2013-10-24 21:04:50 -05:00
Patrick Mooney
0d12eef3ff
Improve DN formatting flexibility
...
- Add 'spaced' function to DN objects allowing toggle of inter-RDN when
rendering to a string. ('dc=test,dc=tld' vs 'dc=test, dc=tld')
- Detect RDN spacing when parsing DN.
2013-10-24 18:27:42 -05:00
Pedro Palazón Candel
6c00badd95
Fixed Typo on AddRequest.getAttribute
2013-10-08 19:57:53 +02:00
Lloyd Hilaiel
04eab4716c
allow binding ldap server on an ephemeral port
2013-05-27 14:49:44 -06:00
Pedro Palazón Candel
a796c3efbf
remove listeners on the right object (s/client/res/)
2013-04-30 21:16:45 +03:00
José F. Romaniello
0bd66caae9
Fixes #127 - socket is closed issue with pools
2013-04-10 10:17:23 -03:00
Tobias Muellerleile
4708b61cf4
Allow changing TLS connection options in client
2013-03-15 13:23:43 +01:00
Matti Kononen
a73a7ecb2c
Fixed a bug with formatting digits less than 16.
2013-02-28 08:48:04 +02:00
Rob Gulewich
f52a29e24c
GH-118: "failed to instantiate provider" warnings in console on SmartOS
2013-02-25 21:11:52 -08:00
Mark Cavage
3fc422ac2b
filter parsing not catching (()
2013-02-07 18:16:40 +00:00
Mark Cavage
5a79884977
allow _ in search filters
2013-01-31 15:51:23 +00:00
Mark Cavage
5157e72f5d
Merge branch 'master' of git://github.com/morphar/node-ldapjs into morphar-master
2013-01-31 01:06:40 +00:00
Mark Cavage
55ba2d1855
lint cleanup
2013-01-30 23:58:40 +00:00
Mark Cavage
9e35cf76ac
Merge branch '109-escape-filter' of git://github.com/Kenoxa/node-ldapjs into Kenoxa-109-escape-filter
2013-01-30 23:54:34 +00:00
Mark Cavage
ea8aac5781
lint cleanup
2013-01-30 23:52:44 +00:00
Mark Cavage
9cfeed0bdc
Merge branch 'master' of git://github.com/DenisVuyka/node-ldapjs into DenisVuyka-master
2013-01-30 23:50:48 +00:00
Mark Cavage
24e02f8d88
throw on all bad filters
2013-01-30 23:50:19 +00:00
Mark Cavage
0535dd8534
version bump
2013-01-29 18:38:39 +00:00
Denis Vuyka
2b433bb3ad
Added objectGUID formatting support
...
see readme for more details
2013-01-15 22:19:20 +02:00
Doug Campbell
efb3ea98b7
make changes recommended in Issue 97
2013-01-14 17:14:35 +08:00
Sascha Tandel
20368c58c1
#109 : escape filter attribute/values only in toString()
2013-01-11 11:01:51 +01:00
Dan Larsen
2435d1cf93
Added a raw getter to be able to extract images correctly
2012-12-07 23:07:53 +01:00
Mark Cavage
51e6abf477
throw on invalid filter syntax
2012-10-11 20:04:10 +00:00
Mark Cavage
2579c251fb
lint/style cleanup and build support updates
2012-09-20 19:38:46 +00:00
Jason Pincin
4de2aa3ed2
client-side support for paged search
...
Re-applied paged search work by thomasv, without introducing logging
changes.
2012-09-19 16:39:31 -04:00
Pedro P. Candel
3c1feec071
Instead of log with error log level, emit "clientError" and let each ldap server decide how to log.
2012-09-11 11:49:37 +02:00
Pedro P. Candel
5cd593a5ec
Log errors with error log level instead of trace.
2012-09-10 09:09:50 +02:00
Kevin Chan
6c7e33763a
option.maxConnections of 1 should not create a ClientPool
2012-08-03 15:53:25 -07:00
Pedro P. Candel
2a30dee86b
Fixes mcavage/node-ldapjs#83 : "ReferenceError: removeAllListeners is not defined"
2012-07-13 16:01:38 +02:00
Mark Cavage
9d984b72fc
0.5.2 broke pooled SSL
2012-07-10 22:40:34 +00:00
Mark Cavage
0da050009b
Bad event handling, and working with node 0.8
2012-07-09 13:00:51 +00:00
Mark Cavage
fd9d713cdc
Fix client memory leaks
2012-07-09 12:23:53 +00:00
Mark Cavage
e378ae8474
use connect() instead of createConnection() as the tls api does not have createConnection
2012-04-27 11:02:49 -07:00
Mark Cavage
15413542c9
purge reference to generic-pool
2012-04-26 20:53:23 -07:00
Mark Cavage
3bcb74aa66
GH-72 s/debug/trace/g in client
2012-04-26 20:47:03 -07:00
Mark Cavage
59ea20ffa2
Client refactor, with pooled client (minor lint cleanup as well)
2012-04-26 20:23:43 -07:00
Mark Cavage
89d3dfc97b
special handling of objectclass in search filters
2012-04-17 14:19:31 -07:00
Trent Mick
e825615d9e
Fix client 'connect' event being send when using tls.
...
With `tls.connect()` the socket connect event is 'secureConnect' instead
of 'connect'.
2012-04-13 15:42:58 -07:00
Nathan Rogers
91051377da
added tests and better handle zero-length cookies
2012-03-26 14:30:23 -05:00
Nathan Rogers
fd085c409d
add support for RFC 2696 paged results controls
2012-03-26 13:53:30 -05:00
Mark Cavage
344cac0287
filter parsing turning presence filter into substring filter
2012-03-16 17:22:30 -07:00
Mark Cavage
d5cf19bd9e
Finish up #65 (lint and missing check)
2012-03-14 09:06:03 -07:00
Austin King
9c5ed685c5
First stab at RFC 2254 filter escaping
2012-03-13 16:40:39 -07:00
Mark Cavage
7fc249565e
fix make check after merge
2012-02-24 08:39:21 -08:00
Yunong Xiao
5135da4b6a
fixed style.
2012-02-23 16:02:52 -08:00
Yunong Xiao
116bedb487
Add persistent search cache, minor bug fix to client
2012-02-23 15:21:17 -08:00
Yunong Xiao
763f4630f7
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
lib/index.js
2012-02-22 14:34:17 -08:00
Yunong Xiao
035d2c4cfc
add persistent search lib, fix url to parse filter as an ldap object
2012-02-20 17:21:53 -08:00
Mark Cavage
9819353042
Client refactoring. Cut reconnect logic and force users to listen for connect event.
2012-02-18 14:58:40 -08:00
Mark Cavage
7ff50f43f4
Initial switch to bunyan
2012-02-18 08:54:22 +00:00
Mark Cavage
afeb354eac
Initial setup for 0.5 (use eng.git layout)
2012-02-18 08:15:52 +00:00
Mark Cavage
b47b208e5d
GH-55 Client emits connect event multiple times
2012-01-30 08:45:01 -08:00
Mark Cavage
a499a7cfd5
Addition of javascriptlint
2012-01-24 09:43:46 -08:00
Mark Cavage
0e30dc50c4
GH-53 unable to parse !filters
2012-01-24 08:56:30 -08:00
Mark Cavage
f7276475b9
GH-51 Timeout support in client library
2012-01-19 18:02:10 -08:00
Mark Cavage
44a9d87863
GH-49 Allow options.attributes = "dn" in client.search
2012-01-19 15:39:16 -08:00
Mark Cavage
11b3a6655d
Support escaping * in filter values
2012-01-19 15:12:19 -08:00
Mark Cavage
512541bfbd
GH-50 Allow = in filter strings
2012-01-19 14:19:06 -08:00