Kevin Locke
b73f325327
Reattach 'readable' event listener when changing streams
...
Parser was not unregistering the 'readable' event listener from the old
socket, nor registering it to the new socket when setSocket() was
called. This caused event handling to stop during the STARTTLS handoff.
Signed-off-by: Kevin Locke <klocke@quantpost.com>
11 years ago
Brian White
a3a1d158c5
Parser: attempt workaround for broken mime encoded words
...
Some MUAs appear to break multi-byte characters across encoded word boundaries, which goes against RFC2047.
This change attempts to work around this by trying to concatenate broken encoded words that are separated by linear white space.
11 years ago
Brian White
510aa0b7b9
Parser: remove Readable proxied event for node 0.8
...
readable-stream proxies some events in wrap(). Since the Parser doesn't care about any events other than 'readable', we remove the troublesome proxied 'error' event.
Fixes #285
11 years ago
Alex Indigo
16dfe6a894
#276 Made parseHeader parse only header and ignore message's body + test.
11 years ago
mscdex
4729de2dab
Parser: fix header parsing so that folded whitespace between adjacent MIME encoded-words is ignored
11 years ago
mscdex
8c68fcc23d
Parser: relax continuation response checking for broken IMAP server implementations
11 years ago
mscdex
7dd577a133
restore npm dependency on iconv-lite
11 years ago
mscdex
671c5b3e0d
deps: add iconv-lite fork (for now)
11 years ago
mscdex
2d7012a835
Parser: use (slower?) pure-JS fallback for encodings that iconv-lite does not support
11 years ago
mscdex
30d0b12953
lint
11 years ago
mscdex
201818dda1
Parser: fix typo
11 years ago
mscdex
88359f9f43
First go at CONDSTORE support
12 years ago
mscdex
517367ef19
Parser: check for unexpected readable-stream module behavior for node v0.8
12 years ago
mscdex
99e054b69c
Parser: fix spacing
12 years ago
Roger Garner
2867d2ac96
Ending IDLE not being detected
...
As the buffer was wiped before emitting the 'other' event, the
parser.on('other') event handler has no buffer data passed to it thus
can't detect the end of the IDLE and never calls the
self._processQueue() to get the stuff waiting in the queue to move.
12 years ago
mscdex
e2c7cdd32f
Parser: add 'hack' to properly take care of non-literal BODY[*]
12 years ago
mscdex
1498020c2c
Parser: decode encoded-words by default in parseHeader()
12 years ago
mscdex
92db64096f
Parser: fix bug where entire chunk was being buffered instead of from current position onward
12 years ago
mscdex
bf4c8ca7bf
Parser: fix bug where _body isn't unset when body bytes left === chunk length
12 years ago
mscdex
e99fa094dc
Parser: remove redundant check
12 years ago
mscdex
d4a9c30bbd
Parser: don't set _read() for body until it's needed (push() returns false)
...
This fixes a problem where _read() was firing before the parsing function exited, causing the wrong data to be pulled in from the socket stream.
12 years ago
mscdex
75e7b921e0
Parser: don't delay buffer clearing
12 years ago
mscdex
977484ce7e
lint
12 years ago
mscdex
48e37631c7
add support for STARTTLS
12 years ago
mscdex
679d685fd9
Parser: wrap passed in stream for node v0.8
12 years ago
mscdex
46efaa5e28
add support for THREAD
12 years ago
mscdex
409577fdf8
add support for QUOTA
12 years ago
mscdex
008332036f
add support for ESEARCH
12 years ago
mscdex
15727c5ac1
Parser: body structure can be either 'BODY' or 'BODYSTRUCTURE'
12 years ago
mscdex
132cd1e13a
Parser: check untagged list-style responses for no results
...
Example: * SEARCH
12 years ago
mscdex
bad60cf479
Parser: fix text code parsing for tagged responses
12 years ago
mscdex
10f65e4d2a
Parser: add header parser
12 years ago
mscdex
5eb8334553
module rewrite
12 years ago