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
Mark Cavage
fb63ba2220
lint cleanup, and extensible matching
2012-01-19 14:00:23 -08:00
Craig Baker
60870497ef
Removed commented out code and some left over console.log's.
2012-01-19 14:00:23 -08:00
Craig Baker
d09a2ee711
changed out a stack based filter parser for a operator/operand k-ary tree based parser.
2012-01-19 14:00:23 -08:00
Mark Cavage
040dfa51fa
GH-47 Server crash in c.on('data')
2012-01-09 08:24:14 -08:00
Mark Cavage
f8c46a4c20
GH-13 server.use()
2012-01-06 15:10:46 -08:00
Mark Cavage
16a1018a3b
getControl not handling null values correctly
2012-01-06 08:51:54 -08:00
Mark Cavage
13978d5303
Trivial server side extensible search filter support
2011-12-27 12:12:40 -08:00
Yunong Xiao
f4729032dd
add persistent search to cli
2011-12-20 15:04:59 -08:00
Yunong Xiao
e6a007e032
minor fixes to revert new lines.
2011-12-19 17:09:38 -08:00
Yunong Xiao
cbf809c856
add support for entry change notification control
2011-12-19 16:52:48 -08:00
Mark Cavage
ab94de8126
Fix control.json and exports
2011-12-09 13:59:17 -08:00
Mark Cavage
ebde1df00c
Minor refactoring of PersistentSearchControl commit
2011-12-08 14:54:40 -08:00
Yunong Xiao
bad8841382
"removed log4js dep in persistent_search_control.js"
2011-12-08 11:26:09 -08:00
Yunong Xiao
2240f29cc3
"refactored controls into its own directory, minor bug fixes"
2011-12-08 11:22:35 -08:00
Yunong Xiao
ee88fc7019
"added ability to deserialize ldap persistent search controls"
2011-12-07 17:02:17 -08:00
Mathieu Lecarme
eadf70e994
Filter: filter against one or multiple values.
2011-12-07 21:24:24 +01:00
Mark Cavage
7b5bef86d5
Control parsing incorrect if criticality field ommitted
2011-12-07 21:24:23 +01:00
Mathieu Lecarme
52f350dec2
Filter: stop when on first match in an array.
2011-12-04 23:32:35 +01:00
Mathieu Lecarme
b0044f9bf0
ApproximateFilter can match multiple values.
2011-12-04 23:23:39 +01:00
Mathieu Lecarme
4343f72fab
gjslint suggestions.
2011-12-04 22:48:22 +01:00
Mathieu Lecarme
ef043af1d4
SubstringFilter can match against an array.
2011-12-04 22:32:22 +01:00
Mark Cavage
eac2f95517
Client logging undefined
2011-11-28 10:39:07 -08:00
Mark Cavage
dc8d04e8e0
Don't require log4js in bin/*
2011-11-22 13:36:08 -08:00
Mark Cavage
e9c1de31f9
Don't actually delete the attributes in res.send()
2011-11-22 13:29:19 -08:00
Mark Cavage
57831b56d1
DTrace rework so probes always fire
2011-11-18 16:39:37 -08:00
Mark Cavage
5092293f84
comment wrong for dtrace probe
2011-11-17 11:56:19 -08:00
Mark Cavage
8cfcdadd18
Wrong probe on connect event
2011-11-16 10:59:53 -08:00
Mark Cavage
fe8294319c
DTrace rework
2011-11-15 10:49:23 -08:00
Mark Cavage
caf258a4f7
GH-35 reference error in client connect()
2011-11-14 09:23:33 -08:00
Mark Cavage
868c46bde4
GH-26 rewrite network parser
2011-11-11 10:09:20 -08:00
Mark Cavage
6b6eaadf6d
GH-33 Allow non-DN binds for AD
2011-11-09 14:57:22 -08:00
Mark Cavage
df159475c8
reconnect cleanup
2011-11-09 14:55:13 -08:00
Mark Cavage
8fdff3e06d
Better handling of disconnect/reconnect over TLS and Plain sockets
2011-11-09 14:44:12 -08:00
Mark Cavage
aedd9f222c
GH-28 Support extensible filters (client only)
2011-11-08 16:12:48 -08:00
Mark Cavage
920b9e00f4
GH-31 allow changing multiple fields in a single ldap_modify with better object sytnax
2011-11-08 13:31:00 -08:00
Mark Cavage
35f6b8a6c7
GH-30 Handle unbinds more gracefully
2011-11-08 13:10:39 -08:00
Mark Cavage
fdd3184420
remove extraneous console.log
2011-11-07 17:24:56 -08:00
Mark Cavage
8c212908a0
more dn/server cleanup
2011-11-07 17:23:38 -08:00
Mark Cavage
28ddaaad69
Minor cleanup of server handling and null DNs
2011-11-07 17:12:59 -08:00
Mark Cavage
75aba691f1
GH-27 Support for abandon operations client side, and noop it server side
2011-11-07 14:14:01 -08:00
Mark Cavage
5cf425de72
Fill in c.remoteAddress for TLS connections
2011-11-07 12:05:45 -08:00
Mark Cavage
b8799d6a1e
Don't be so strict about dn methods requiring a DN instance
2011-10-20 11:22:31 -07:00
Mark Cavage
a80758b917
Minor client argument fixes, and broken search response send() with no filtering option
2011-10-18 12:31:52 -07:00
Mark Cavage
03dad8c9a1
SSL server looking for certificate, not cert
2011-10-18 10:15:14 -07:00
Mark Cavage
e0007f6f6a
new DN methods
2011-10-18 08:50:44 -07:00
Mark Cavage
ccff51804a
Refactor search_response.send() so that hidden variable magic works
2011-10-17 16:37:09 -07:00
Mark Cavage
2a41abbff8
GH-21: Write attribute values as raw binary, rather than as strings
2011-10-11 15:24:00 -07:00
Mark Cavage
c20030f5bb
GH-21 Support for binary attributes
2011-10-11 13:56:16 -07:00
Mark Cavage
9610cbe9d3
GH-24: support clients asking for * in attribute search selection list
2011-10-11 11:39:56 -07:00
Mark Cavage
7dbeca1fdd
GH-23 case insensitive attribute filtering in searchResponse.send()
2011-10-11 10:43:27 -07:00
Mark Cavage
7763cf3789
GH-22: Client should preserve attribute type casing
2011-10-04 10:27:43 -07:00
Mark Cavage
01a6cfb77e
GH-14: Support null/empty attribute values
2011-09-30 10:48:56 -07:00
Mark Cavage
12356c5628
GH-20 case insensitive treatment of attribute names in a DN
2011-09-29 14:46:10 -07:00
Mark Cavage
1105b47293
Allow empty dns in search (e.g., enable rootDSE searches)
2011-09-29 09:35:53 -07:00
Mark Cavage
f4b49a20ae
GH-14: Client needs to handle search references
2011-09-27 11:49:33 -07:00
Mark Cavage
50a0c59d1f
Client reconnect logic
2011-09-26 16:45:49 -07:00
Mark Cavage
e2cac51a29
GH-18: Server not handling unknown message types gracefull
2011-09-26 13:47:33 -07:00
Mark Cavage
c57470804c
gracefully handle parsing attributes with no values
2011-09-23 15:47:02 -07:00
Mark Cavage
a515652ac7
GH-17 invalid exop mountpoints crash server
2011-09-23 09:00:28 -07:00
Mark Cavage
be3d5fa7fa
GH-16: dn.equals broken on empty strings
2011-09-23 08:54:48 -07:00
Mark Cavage
d2d99d14a6
Change constructor to match docs
2011-09-23 08:48:17 -07:00
Mark Cavage
16597d5632
CompareResponse.end() not working correctly with non-numeric codes
2011-09-21 17:35:19 -07:00
Mark Cavage
9b67dc608a
substring filter fixes for clients
2011-09-19 12:24:16 -07:00
Mark Cavage
ed1ae29054
search.send option to not filter out any attributes
2011-09-16 09:06:35 -07:00
Mark Cavage
73b14ea8ad
support for client controls
2011-09-16 09:06:07 -07:00