344 Commits (fork)

Author SHA1 Message Date
Chotiwat Chawannakul 6f2adf53e3 Pass response text code and message for tagged response in append and move 11 years ago
mscdex 69d23e446f always pass any response text code and message for tagged responses to the callback as the last argument 11 years ago
mscdex 6b0b8ff8b4 fix ignoring of 'useless' untagged OK responses 11 years ago
Mike Mee 9950b29876 Fix append with empty flags array 11 years ago
mscdex b974f4da64 listen for 'error' on both plain and cleartext sockets 11 years ago
mscdex 2a00c83058 fix style 11 years ago
mscdex 93cb0e4c44 Merge branch 'master' of github.com:mscdex/node-imap 11 years ago
mscdex 037fcc2fff ignore untagged OK responses that contain no other information 11 years ago
mscdex 30c11e4710 make serverSupports() public 11 years ago
Nicolas Chambrier 0b042e0e14 Allow custom TLS options (fix #181) 11 years ago
Chotiwat Chawannakul 12a05501b7 Allow empty mailbox name (e.g. " ") 11 years ago
mscdex 78935f8a3c constant var names should be in caps 11 years ago
mscdex baf18ad2b8 fix header value parsing behavior for folded lines 11 years ago
mscdex 4e0e7436e3 fix 'connected' and 'authenticated' assignments 11 years ago
mscdex 13eb18f97d Merge branch 'master' of github.com:mscdex/node-imap 11 years ago
mscdex 6532b25ca9 don't write to a dead connection 11 years ago
Chotiwat Chawannakul eec89fb6ec Encode namespace with utf7 in getBoxes() 11 years ago
mscdex 2b2bacfbca when retrieving the mailbox list, support children that may come before their parents
closes #163
11 years ago
mscdex f2ec7d6071 fix regexps again 11 years ago
mscdex 024ba1f78e modify regular expressions used for untagged responses to ignore trailing whitespace 11 years ago
mscdex d7366a9202 fix parsing resp-text-code on tagged error responses 11 years ago
mscdex e7cd3df5cd be less strict about username/password value checking
refs #165
11 years ago
mscdex f62659a523 re-add node 0.6 compatibility 11 years ago
mscdex 034bd33cf3 better fetch() argument detection 11 years ago
mscdex 28999b3b45 add more detail to error object 11 years ago
mscdex 86efc68998 improve handling of negative welcome response upon connection 11 years ago
mscdex 100b7cfba2 rework handling of both secure and non-secure sockets 11 years ago
mscdex 2964cfe14a fix emitting of 'message' event for fetch responses with no body literals 11 years ago
mscdex 44fb676910 fix unsolicited fetch response detection 11 years ago
mscdex 23dc0e9c80 be less strict in parsing folded header values 11 years ago
mscdex da6eac3a6a don't include ".PEEK" in fetch keys, only in command where applicable 11 years ago
mscdex 318d01f177 discard any double quotes for strings in BODYs in untagged FETCH responses 11 years ago
mscdex 4398a801e4 remove displayName 11 years ago
mscdex 7cf54ed371 do more utf7 encoding and decoding for mailbox names 11 years ago
Chotiwat Chawannakul 57d7f467b7 Fix mailbox name gets convert to number 11 years ago
Brian White 6c3d6568c5 fix fetch() options a bit and don't default to fetching body structure 11 years ago
Brian White b4051174df fix fetch() message 'ending' for multiple messages 11 years ago
Brian White 3cb9beedf3 fix callback not being passed for fetch() with uids 11 years ago
Brian White a9870dfce9 fix multiple header fetch parsing 11 years ago
Brian White 2d7d0a7207 fix syntax error 11 years ago
Brian White 9a0a42c50c remove support for partial body fetching
We have no way to match up a partial fetch response if less than the number of
octets we requested were returned, due to the way IMAP responds to partial fetches.

Example: We request BODY[TEXT]<0.32>, but BODY[TEXT] is only 16 bytes,
         then we get back: BODY[TEXT]<0> {16}
         This leaves us with no way to find out what the original
         length request was.

Because of this and the fact that the server can return requested
values in any order, I am disabling partial fetches entirely.
11 years ago
Brian White 42871d1285 allow `headers` to be a string for fetch() 11 years ago
Brian White 2029bd9da3 default to all fields for undefined `headers.fields` for fetch() 11 years ago
Brian White caff5aa764 fix BODY[] parsing 11 years ago
Brian White c6b1ffe7e7 even more fetch() fixes 11 years ago
Brian White 70251b00c3 more fetch() fixes 11 years ago
Brian White ee89662679 fix typo 11 years ago
Brian White f107a86f10 fix double emit on fetch() 11 years ago
Brian White dfe176fdfd fix xoauth/xoauth2 11 years ago
Brian White b5dca62d5b fix IDLE after connection if there is nothing yet to do and other misc changes 12 years ago
Brian White 4e61905378 Don't clear connection timer until greeting is received 12 years ago
Brian White 1bc39932df relax parsing for search/sort results 12 years ago
Brian White bb5d8c43ed fix comment style 12 years ago
Brian White 93de609c54 fix backwards compatibility for require() 12 years ago
Brian White d1cdb06cc1 use type coercion and less 'arguments' usage 12 years ago
Brian White ce072c5d84 use util.isDate instead of instanceof 12 years ago
Brian White 1a1d51c42a rename is* connection properties 12 years ago
mscdex beda1283bf Check for boolean true in headers.fields for fetch() 12 years ago
mscdex 6b6bfb6bc1 Fix 'struct' default for fetch() 12 years ago
mscdex e204707743 Remove obsolete helper module 12 years ago
mscdex 2ae7371f22 fetch() rewrite 12 years ago
Brian White 5720473201 Fix variable case 12 years ago
Brian White ec01e96e2b Add UTF-7 support where needed for mailbox names 12 years ago
Brian White c270a7054a fix style 12 years ago
Brian White d3a366bd84 Merge pull request #109 from antifuchs/fix-preauth-connections
Don't attempt logging in on a PREAUTH connection
12 years ago
Brian White e3b336560c Fix re-IDLE 12 years ago
Brian White d39b7e72ac Add isConnected and isAuthenticated properties 12 years ago
Brian White 8db9bccc72 Reset some more state variables 12 years ago
Brian White abc0c6bb21 Merge pull request #114 from wavify/message-size
Can request for message size when fetch
12 years ago
Brian White 737b2de8b8 Check for prepended backslashes in user-supplied flags 12 years ago
Chotiwat Chawannakul 2615008ec6 Fix style 12 years ago
Brian White 321387c0e6 Fix confusing unseen mailbox count behavior 12 years ago
Brian White 6554c74e61 Don't change internal state when opening a box until the command is actually sent 12 years ago
Brian White 639701125b Don't use arguments.callee 12 years ago
Brian White 8370471c58 Add readOnly to definition and in resetBox() 12 years ago
Brian White 6919873b6b Merge branch 'master' of github.com:mscdex/node-imap 12 years ago
Brian White 7515fe99e2 Lint 12 years ago
Brian White adbfc49150 Make the reverse sort prefix '-' instead of '!' 12 years ago
Brian White 8376ee1559 Add uidvalidity event and make uidvalidity, uidnext, etc consistently an integer 12 years ago
Brian White 4242f2be3c Simplify command regex 12 years ago
Brian White f4641e9523 Add readOnly attribute to mailbox object when opening 12 years ago
Chotiwat Chawannakul 53e254c491 Don't reset indata.temp before in data.expect is zero. 12 years ago
Brian White b1a45c7ea6 Lint 12 years ago
Brian White 36d65c6d8f Add xoauth2 support 12 years ago
Chotiwat Chawannakul 009ccc6beb Initialize and reset unseen property. Fix wrong property assignment. 12 years ago
Chotiwat Chawannakul e8e2130249 Get unseen count of mailbox 12 years ago
Chotiwat Chawannakul 1d65778694 Fix addKeywords method 12 years ago
Brian White 2268fa6004 Merge pull request #100 from wavify/rfc822-bodystructure
Fix invalid part id for message/rfc822 attachment
12 years ago
Chotiwat Chawannakul 8323a6f738 Remove block for single-statement if 12 years ago
Brian White 49e85a43ec Merge pull request #107 from Contatta/addDel-Labels
Added support to add/remove/store X-GM-LABELS
12 years ago
Andreas Fuchs 86248a66aa Don't attempt logging in on a PREAUTH connection
Node-imap already correctly recorded state for PREAUTH connections,
but attempted to login anyway, which results in a timeout, as it waits
for the connection to get into a state it can never reach.
12 years ago
Andreas Fuchs 7749d75207 Fix IDLE for very fast connections
When issuing commands in rapid succession, it was possible for
node-imap to send multiple "DONE" commands. This resulted in wedged
state when the server dropped out of IDLE and then didn't know what to
do with the second DONE command.

This change adds a safeguard that ensures _send never sends more than
one DONE, and queues (non-DONE/IDLE) commands up for when the server
was able to acknowledge.
12 years ago
Stuart Carnie 295d6ffd06 Added support to add/remove X-GM-LABELS 12 years ago
Chotiwat Chawannakul 26be70afba Check for 'SORT' capability in _sort(). Fix style and wording. 12 years ago
Chotiwat Chawannakul 6ef3ae2141 Add sort() method 12 years ago
Chotiwat Chawannakul 86b399238a Can request for message size when fetch. 12 years ago
Brian White 4960a8581a Remove unused function 12 years ago
Chotiwat Chawannakul 46c5dd5eef Fix invalid part id for message/rfc822 attachment 12 years ago
Brian White 28e9965787 Add ability to also retrieve only specific headers and a body in addition to all headers and a body 12 years ago
Brian White 747f2c2122 Remove length property as it can be misleading 12 years ago
Brian White 847ac47757 Fix variable re-use 12 years ago
Brian White 647d562e2c More style changes 12 years ago
Brian White c1e29d131a Style changes and fix function references 12 years ago
Brian White a430d37e04 More style fixes 12 years ago
Brian White 430cda79cb Style fixes 12 years ago
Brian White 2be77661a9 Fix global leak 12 years ago
Brian White ef66bb5c57 Make line parsing state per-connection 12 years ago
Brian White 5ab5e55734 Move incoming data state variables 12 years ago
Chotiwat Chawannakul 779cc7a33f Fix buffer is not sliced when read position > 0 and bytes remaining are less than bytes expected 12 years ago
Chotiwat Chawannakul 23779f307f Fix typo. Update delim to delimiter in readme. 12 years ago
Chotiwat Chawannakul a1227bd966 Fix unexpected continuation error when APPEND 12 years ago
Brian White 298fdafcb4 Merge pull request #89 from wavify/getboxes-delimiter
Fix wrong delimiter when getBoxes()
12 years ago
Chotiwat Chawannakul fac4a1d34c Increment attribute value index after it is parsed when parsing response of STATUS 12 years ago
Chotiwat Chawannakul b48f5d804e Fix wrong delimiter when getBoxes 12 years ago
Brian White ac71ac0c8f Don't delay processing of extra data until next tick
There could be other 'data' events that are waiting to be emitted before the end of the current tick.
12 years ago
Brian White a9062b98f3 Fix buffer OOB error and re-style traffic debug output 12 years ago
Brian White 4c03c7519c First go at parser and partial code rewrite 12 years ago
Brian White 5dc5c5ace0 Add slightly modified copy of XRegExp used in parser rewrite 12 years ago
Brian White 61fdef282d Fix scope issue when re-using mime parser instance 12 years ago
Robin Qu 975c6916e5 remove test; fix small bugs 12 years ago
Robin Qu 2965e3f889 support find uid by multiple seqno 12 years ago
Robin Qu 0153a433d6 Merge remote-tracking branch 'upstream/master' 12 years ago
Robin Qu 4f9defb0a1 support sequence set for search 12 years ago
Chotiwat Chawannakul 84318676c6 Fix undefined login callback call when connection timed out 12 years ago
Chotiwat Chawannakul ca317f56d9 Fix missing message structure in fetch result 12 years ago
Brian White 0135f16e47 Add mailbox name to result for status() 12 years ago
Brian White edcfbdb797 Add status command 12 years ago
Brian White 83a3008658 Rename _supports() -> _serverSupports() 12 years ago
Brian White 7efda6cb9e Misc minor changes + be less strict on non-selectable mailboxes
Closes #58
12 years ago
Brian White af0c191ec1 Better "constant" variable naming in mimeparser 12 years ago
Brian White f9c72c9323 Misc performance improvements for utility functions 12 years ago
Brian White 21e50a9887 Use string.indexOf() since we already have a stringified version of the response chunk 12 years ago
Brian White 4f8fbcbe01 Use custom message parser instead of node core's HTTP response parser
node core's HTTP response parser's header value unfolding removes any and all whitespace when concatenating lines together.

The new custom parser also removes any and all whitespace, but replaces all of said whitespace with a single space. Some message parsers behave this way also, while others choose to only remove the CRLF and preserve any other proceeding, leading whitespace.
12 years ago
Brian White 27d2ae8c8d Save message part's disposition type where available
Closes #59

Thanks @asutherland
12 years ago
Brian White 733cb24767 Revert header collection behavior such that header values are always arrays of strings instead of only when duplicate headers are found 12 years ago
Brian White a77fa792b5 Fix error when calling validateUIDList() internally. 12 years ago
Brian White 03b4cefe84 Fix more style 12 years ago
Brian White bcacc36582 Fix capatilization of Deleted flag when moving a message 12 years ago
Brian White 0c9baf755d Use node's built-in HTTP parser for headers or headers and bodies 12 years ago
Brian White 1866d4ad88 Simplify checking of server capabilities 12 years ago
Brian White 15a2e1036b Remove unused variable 12 years ago
Brian White dc45f96e21 Use lazy debugging output and some style changes / code reorganization 12 years ago
Brian White 4053d58dd9 Add RFC reference for NAMESPACE capability 12 years ago
Brian White 5cd24335e4 First go at code reorganization. 12 years ago