(name 'LDAP-ar.49' message 'Fixes:
- Remove undocumented, untested, and unnecessary class Ldap
- Fix broken handling of exception codes
- Simplify some needlessly complex code
' id '89a9ab45-8ffa-9247-9fe2-3426ed1bf366' date '3 March 2011' time '12:32:00.517 pm' author 'ar' ancestors ((name 'LDAP-olivierauverlot.48' message 'adaptations for pharo 1.1.1 (deprecated methods #or:or: and #copy have been modified)' id '560c3e6a-a212-48bf-9536-f5e2ed2683b4' date '3 March 2011' time '9:56:24 am' author 'olivierauverlot' ancestors ((name 'LDAP-ar.47' message 'More fixes for partial request handling: The semaphore logic was entirely broken since different paths through the code would absorb some, but not other signals resulting in lots of spurios timeout signals. The new code does away with #hasMoreResults (since it is impossible to know unless the next ldap record comes in) and replaces this with #next or #nextTimeout: returning nil when the last record has arrived.' id '7a4df29f-81f7-114e-a495-ecc2aa395062' date '27 May 2008' time '10:27:26 am' author 'ar' ancestors ((name 'LDAP-ar.46' message 'All LDAP waits are now timed out appropriately so that a single request cannot hang even if the ldap connection died for some reason.' id 'c1d41519-5ecc-3046-85ff-5c1777f4cb85' date '27 May 2008' time '10:26:39 am' author 'ar' ancestors ((name 'LDAP-ar.45' message 'Suppress LDAP unbind request printing.' id '37ed14f7-d621-b34c-8542-11a09a46943d' date '27 May 2008' time '10:26:05 am' author 'ar' ancestors ((name 'LDAP-ar.44' message 'Fixes partial result handling (which was badly broken).' id 'cd5890ae-ced5-344f-a530-395201959f24' date '27 May 2008' time '10:25:37 am' author 'ar' ancestors ((name 'LDAP-ar.43' message 'Handle errors in the LDAP worker and stop it if one is encountered. Also provide a method asking for validity of a connection.' id '90becd65-e70e-894c-9cc2-819a3313d5f9' date '27 May 2008' time '10:25:06 am' author 'ar' ancestors ((name 'LDAP-ar.42' message '- Signal ldap errors when wait completes
- Add waitTimeout: variants
' id '900a8021-4424-b74d-915c-7f3ef68a04ad' date '27 May 2008' time '10:24:38 am' author 'ar' ancestors ((name 'LDAP-ar.41' message 'Several fixes and improvements:
- #processResponse: needs to set isDone
- LDAPFilter>>with:notEqualTo: for convenience
- suppress raising errors from the worker thread' id '1034a196-5b89-0443-8e36-828695e15d70' date '27 May 2008' time '10:23:43 am' author 'ar' ancestors ((name 'LDAP-ar.40' message 'Rename core LDAP category to ''LDAP-Core'' for improved readability in package pane browser.' id 'a1b26fd3-44bc-df4c-a817-97c4f2b26afe' date '27 May 2008' time '10:22:45 am' author 'ar' ancestors ((name 'LDAP-ar.39' message 'Replace underscores by := for Croquet.' id '5746b5c2-cd69-bb43-ae76-147838429521' date '27 May 2008' time '10:21:24 am' author 'ar' ancestors ((name 'LDAP-RHE.38' message '- Exceptions now show a more helpful message
- attrAt: will return nil if the attr you have asked for isn''t pressent; this change might have side effects (making it possible for nils to crawl inside the code?)' id '294b24c7-07e1-4eb3-9e15-9eb9096f9bd2' date '28 July 2005' time '7:21:32 pm' author 'RHE' ancestors ((name 'LDAP-RHE.37' message 'transitional bugfixing' id '89971870-1021-442f-856b-41e13be0012e' date '1 July 2005' time '1:13:51 pm' author 'RHE' ancestors ((name 'LDAP-RHE.36' message 'Recategorized some classes.
Now we have BERElement and LDAPElement separated.
' id '43b60286-1791-b241-bb5d-f864671abead' date '8 November 2004' time '10:30:44 am' author 'RHE' ancestors ((name 'LDAP-RHE.35' message '- bug affecting filein in 3.7 found by Yoel Jacobsen
- minor class reorganization; it would be nice to eventually get BERElement and BEREncoder into BERTypes.. that''d give us a standalone BER encoder for squeak.
' id '646eec6a-7974-ca47-a8eb-0e3ba31d4672' date '6 November 2004' time '6:08:47 pm' author 'RHE' ancestors ((name 'LDAP-RHE.34' message 'fixed a bug in long definite length (found by gsa)' id '3fd9d273-920e-4b24-a3aa-8ec04479b28c' date '21 May 2004' time '2:15:29 pm' author 'RHE' ancestors ((name 'LDAP-RHE.33' message 'Most noticeable change is the bug fix in attrsAsBERElement for searches and modifications, and that the quick attempts at making validation tests in LDAPTest work.

This thingie should be sort of ready for use.' id '7cdc7c30-5d59-1a44-8322-073e08a14820' date '14 March 2004' time '11:55:55 pm' author 'RHE' ancestors ((name 'LDAP-RHE.32' message '+ Some work on exceptions so we now throw by what RFC says.
+ Searches now use constants
+ Added some documentation on whats missing from RFC 2251.
+ LDAPWorker>>dispatchMessage: has quite some comments on stuff to do' id 'e63216eb-f2ef-cf40-8cab-d7c24971959a' date '27 February 2004' time '10:50:52 pm' author 'RHE' ancestors ((name 'LDAP-RHE.31' message 'Refactored the whole newFromEncodedStream thing; which we needed in order to have the tag of an element available from that element. The side effect was the removal of BERDecoder.

Bus commute supposed to last 3h is quite very likely to go over 6h. Ugh.' id 'caf32f0a-34af-5343-a552-627707ec20df' date '22 February 2004' time '11:26:43 pm' author 'RHE' ancestors ((name 'LDAP-RHE.30' message '+ tests
f reworked searches (inc. return types)
f baaad race in search results
+ preliminar referral handling
f exception throwing for compares
f reworked modifications (inc. interface)
+ preliminar support for unrequested notifications
f handling of packets longer than 127 bytes

We need to clean up the tests, they are a mess.

Another interesting thing to do might be following referrals automatically. As this functionality is not needed, it will have to wait.

Most important, and what we should do next, is change newFromEncodedStream: so that we also read the tag there, because we will need it in the future in order to extract and detect the optional values like in the case of ExtendedResponse.' id 'e3a17242-10b4-664e-ae44-0fc3d7740bd8' date '22 February 2004' time '9:34:34 pm' author 'RHE' ancestors ((name 'LDAP-RHE.29' message 'ofbj' id '470ff331-8e3e-439c-8bf3-624b8d284496' date '20 February 2004' time '2:44:40 pm' author 'RHE' ancestors ((name 'LDAP-RHE.28' message 'Fixed unbind encoding, added modify.
Now throws exceptions when bad things happen.
Cleaned up incremental searches a little bit -- I still dont like it as it is, as hasMoreResults can block. We should have a maybeHasMoreResults or something like that.
Removed the TTL stuff which was mostly a nuisance by now.

Usual missing stuff. Either I write it, or I''ll bore myself to death repeating this over and over.' id '84b64147-a06e-fe45-9413-77b3e8c19fa4' date '18 February 2004' time '10:08:49 pm' author 'RHE' ancestors ((name 'LDAP-RHE.27' message 'Added abandon, modify and compare requests; it does look, tho, as if modify was sort of broken because we dont set dn anywhere.

The usual stuff is still missing, hopefully we''ll get to it once all the functionality is in.

' id '82601790-e6f1-41e7-b6a4-22d74feefd9f' date '18 February 2004' time '10:36:17 am' author 'RHE' ancestors ((name 'LDAP-RHE.26' message 'sync' id '282343fc-8187-42da-b449-a1c2806bc966' date '16 February 2004' time '6:57:02 pm' author 'RHE' ancestors ((name 'LDAP-RHE.25' message 'Some cleaning up in LDAPResult -- we are still missing  error code exception throwing, and parsing referral        [3] Referral OPTIONAL

Adds, dels and modifyhave been fixed and are now (superficially) tested to work ok.

We still have pending the 23 todos.' id 'bf02f2a8-0f9d-9f4d-9918-07bfd3012598' date '15 February 2004' time '10:41:33 pm' author 'RHE' ancestors ((name 'LDAP-RHE.24' message 'Added add, del and changeDN functionality; 100% untested as I don''t have an ldap server at hand right now. Should verify and fix in 25, then proceed to clean up whats missing from 23 (all comments in 23 apply to this version too)
' id 'bcb41452-7c69-f241-a596-244c9b0d7bbc' date '15 February 2004' time '9:50:07 pm' author 'RHE' ancestors ((name 'LDAP-RHE.23' message 'Incremental searches are in, however i think we should be removing elements as r next returns them. Or we could use forEachDo: to do stuff without having to store in the whole results.

BEREncoder is still with us; bad.
Still need testcases and validation for filters.
' id 'd09edceb-57d3-6d46-983c-fe6f064d3e02' date '14 February 2004' time '2:21:47 pm' author 'RHE' ancestors ((name 'LDAP-RHE.22' message 'screwed up semas?' id 'd7c0030e-60cf-8744-8d6d-278382171f81' date '13 February 2004' time '5:39:26 pm' author 'RHE' ancestors ((name 'LDAP-RHE.21' message 'Next: entry-by-entry search results.

BEREncoder is still with us; bad.
Still need testcases and validation for filters.

' id 'f537f1dc-e02a-4d87-8d00-3a62378fd09e' date '12 February 2004' time '6:29:46 pm' author 'RHE' ancestors ((name 'LDAP-RHE.20' message 'FilterWithSet is now finished
Reworked the Filter API
Added a couple of subclassResponsibility

It is now clear BEREncoder should go away

FilterNot is missing
Testcases for filters are missing
Filters need validation' id '4c6b5419-94ce-4cfa-a19e-6e2ca9bd3e0f' date '11 February 2004' time '7:24:23 pm' author 'RHE' ancestors ((name 'LDAP-RHE.19' message 'BEREncoder most likely is to go away.
We are missing lots and lots of subclassResposibility.
FilterWithSet isnt done yet. Neither is Not.
Need test cases for the filters.
The API of the filters should be changed to newWithAttr: ''xx'' value: ''yy'' or similar.
' id 'f1ffe9dc-7680-4e36-b005-306ebab9cf61' date '10 February 2004' time '9:27:32 pm' author 'RHE' ancestors ((name 'LDAP-RHE.18' message 'Search + end of search code works
Need to clean up,  we have to copies of LDAPBindResult>>newFromEncodedStream: floating around.

Planned next are filters.


 ' id 'e9fdbc21-802d-4856-b6e5-e422a08b7692' date '10 February 2004' time '7:20:18 pm' author 'RHE' ancestors ((name 'LDAP-RHE.17' message 'transitional' id 'a339fa9d-dd67-f54f-ba1c-a071b2639885' date '10 February 2004' time '11:44:22 am' author 'RHE' ancestors ((name 'LDAP-RHE.16' message 'planning for LDAPWorker>>targets refactorization' id '4a329057-9774-3e4e-8a62-604ce63c8435' date '8 February 2004' time '10:47:17 pm' author 'RHE' ancestors ((name 'LDAP-RHE.15' message 'partial implementation of LDAPSearchRequest finished (mostly missing filters)' id '3f03ad89-6049-2944-8fbe-c5752883509b' date '8 February 2004' time '8:33:12 pm' author 'RHE' ancestors ((name 'LDAP-RHE.14' message 'Successfully finished refactoring of LDAPMessage' id '4a7cc4fd-d23c-9c4b-b57a-e81c777d20f8' date '8 February 2004' time '7:10:43 pm' author 'RHE' ancestors ((name 'LDAP-RHE.13' message 'refactoring in LDAPRequest, does not work' id '3c5d8fbf-a726-9442-b9d4-0afa33c5ef4e' date '8 February 2004' time '7:04:41 pm' author 'RHE' ancestors ((name 'LDAP-RHE.11' message 'binds and worker work' id '3b6315ce-0af8-c74b-be05-98dfa77d8701' date '8 February 2004' time '6:39:09 pm' author 'RHE' ancestors ((name 'LDAP-RHE.9' message 'Sort of messy, but it does parse bind responses correctly.' id '9dbcf014-4192-d448-a41e-d67090a5aaa6' date '7 February 2004' time '3:06:49 am' author 'RHE' ancestors ((name 'LDAP-RHE.8' message 'need to finish BERDecoder, and maybe change the LDAPWorker targets to SharedQueues instead of Semaphores.
' id 'a07c1c8b-16b3-394f-aa80-1b2a9275274e' date '6 February 2004' time '12:01:23 am' author 'RHE' ancestors ((name 'LDAP-RHE.7' message 'start of the network code' id '8b003acc-175c-4128-9382-de93acf59e7f' date '5 February 2004' time '6:28:07 pm' author 'RHE' ancestors ((name 'LDAP-RHE.6' message 'Added RecursionLock in case we need it later' id '13cd6ca3-6c5a-494b-92d7-cd252f9f5ad1' date '3 February 2004' time '1:39:15 pm' author 'RHE' ancestors ((name 'LDAP-RHE.5' message 'Fixed stupid bug.' id '40405852-b1e8-824a-a04d-c58d1ce5c987' date '1 February 2004' time '11:04:37 pm' author 'RHE' ancestors ((name 'LDAP-RHE.4' message 'BER testBindRequest is apparently fixed; we wrote the fix earlier, but we forgot to add a with: 0 tag to the Sequence, and, therefore, was writing it in full (0x70).

We still don''t support long tags, but they most likely aren''t needed.
' id '961f8f1c-175c-ab43-8f24-816fdda4a125' date '1 February 2004' time '10:53:52 pm' author 'RHE' ancestors ((name 'LDAP-RHE.3' message 'BERTest new testBindRequest

shows wrong results: 302D02010170280201..

when it should be: 302D02010160280201..

Why don''t we have to put the 0x10 for UNIVERSAL SEQUENCE there?' id '3327f757-e8fc-dc41-a884-2221ebab0808' date '1 February 2004' time '10:17:02 pm' author 'RHE' ancestors ((name 'LDAP-RHE.1' message '' id 'a6e6574c-7d8f-eb48-a409-cd4af04dca09' date '31 January 2004' time '6:21:16 pm' author 'RHE' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())