Commit Graph

262 Commits

Author SHA1 Message Date
Felix Hammerl 5f9132ab5f [WO-651] Do not error if imap upload fails after send 2014-10-22 12:25:27 +02:00
Tankred Hase d7c1718a1c Merge pull request #145 from whiteout-io/dev/WO-645
[WO-645] Fix: Credentials are not stored after logout
2014-10-21 15:01:48 +02:00
Tankred Hase b556334407 Integrate OpenPGP.js 0.8.1 with promises support 2014-10-20 18:44:39 +02:00
Felix Hammerl 7a986fc60a [WO-645] Fix: Credentials are not stored after logout 2014-10-20 17:43:26 +02:00
Felix Hammerl 3a6e0463fb [WO-567] fix TLS worker handling 2014-10-15 19:58:26 +02:00
Tankred Hase c6fb31fd49 Fix phantom mocha tests 2014-10-15 19:16:19 +02:00
Tankred Hase 84d5bd8124 Integration test works again 2014-10-15 19:16:19 +02:00
Tankred Hase 85afb0be01 Fix angulat mocks for unit tests 2014-10-15 19:16:19 +02:00
Tankred Hase 7e09add0f4 Dao and crypto unit tests work 2014-10-15 19:16:19 +02:00
Felix Hammerl 9bfda73969 WIP add unit tests 2014-10-15 19:16:18 +02:00
Felix Hammerl 297f7c493f [WO-625] Catch exception on socket.oncert
Mozilla's socket is not extensible via Object.preventExtensions(obj)
and throws exceptions when non-prototype function .oncert is added.
The callback function is needed for the other shims.
2014-09-30 12:30:18 +02:00
Tankred Hase bedb69973c [WO-587] implement user logout 2014-09-26 19:14:53 +02:00
Tankred Hase 0613016581 Remove chrome.filesystem and use only standard apis 2014-09-24 12:46:19 +02:00
Felix Hammerl 77e0377fd1 [WO-563] Introduce connection doctor
* Uses predefined error messages from the config
* Show error and underlying error in login screen
2014-09-23 16:21:12 +02:00
Tankred Hase 74f6b3312e [WO-598] Replace contentEditable in writer with textarea 2014-09-22 15:28:22 +02:00
Tankred Hase 8199ee741d Fix tests 2014-09-22 13:59:05 +02:00
Tankred Hase d1308aa14c Add SMS validation 2014-09-19 18:59:13 +02:00
Tankred Hase 7c7d650cf2 [WO-577]: implement wmail account creation 2014-09-19 14:58:04 +02:00
Tankred Hase ba9770b495 Merge branch 'master' of github.com:whiteout-io/mail-html5 2014-09-17 15:51:58 +02:00
Tankred Hase d365de4e5b Use crypto-lib util function for keychain code generation 2014-09-17 15:51:32 +02:00
Tankred Hase 0aff411c3f Merge pull request #112 from whiteout-io/dev/WO-531
[WO-531] introduce option to query key w/o starting recovery
2014-09-17 15:05:26 +02:00
Felix Hammerl 86a87e26b8 [WO-565] Improve notifications
* Introduce 2 sec timeout for sent notifications
* Notify only for new messages in the inbox
* Close pending notes when a msg is marked unread in the inbox
2014-09-17 13:29:51 +02:00
Tankred Hase 487bb31d45 [WO-592] implement webmail using socket.io
* Relax CSP to allow iframe assets to load
* Integrate socket.io proxy
* go to /# when controllers not initiated
* Add offline caching using AppCache manifest
2014-09-16 17:40:03 +02:00
Felix Hammerl efdc78fc75 Merge pull request #121 from whiteout-io/dev/WO-285
Dev/wo 285
2014-09-16 12:14:18 +02:00
Tankred Hase 34b3bee520 Add test for lookupAddressBook 2014-09-16 00:11:44 +02:00
Mario Volke 7e8d88e5a8 updated tests for write ctrl 2014-09-15 17:19:36 +02:00
Tankred Hase 50f0bf951e Skip setting passphrase in setup 2014-09-15 14:26:12 +02:00
Felix Hammerl 15710f4602 [WO-531] use query parameter instead of JSON parameter 2014-09-12 19:23:02 +02:00
Felix Hammerl ad2b6d1237 [WO-587] Explicitly include arbitrary headers in clearsigned regex 2014-09-12 17:02:03 +02:00
Felix Hammerl 04b6c8b033 [WO-491] Add Web.de support 2014-09-11 13:41:20 +02:00
Felix Hammerl a3d87c7da8 [WO-491] Allow STARTTLS, add Outlook.com
* Change UI to choose encryption type TLS/STARTTLS/None
* Change adapt login controller to STARTTLS changes
* Add Outlook.com to providers
2014-09-11 13:41:20 +02:00
Felix Hammerl ec5edff626 [WO-531] introduce option to query key w/o starting recovery 2014-09-02 13:26:51 +02:00
Felix Hammerl 8a737788e7 [WO-555] Remove cleartext prefix to encrypted messages 2014-08-26 15:47:37 +02:00
Tankred Hase 14624c877e Add server.js for potential selfhosting 2014-08-12 17:09:18 +02:00
Felix Hammerl 7adc095277 [WO-515] Fix folder handling
Use the first folder provided in well known folders

Add migration script to fix clients with multiple folders for same
category

Handle folder deletion smarter

Extract some magic number/strings to constants in emaildao
2014-08-05 18:38:09 +02:00
Tankred Hase c4337fba30 Remove cached OAuth token before reconnect 2014-08-05 17:53:11 +02:00
Felix Hammerl d278afb253 Merge pull request #104 from whiteout-io/dev/WO-498
[WO-498] Add newsletter signup
2014-08-04 18:30:55 +02:00
Felix Hammerl 3a713180f1 [WO-475] give backbutton on android sane behavior 2014-08-04 15:20:52 +02:00
Tankred Hase 6ce1f2361a [WO-498] Add newsletter signup 2014-08-01 19:01:16 +02:00
Tankred Hase e19d8a4e5b [WO-462] Rework login workflow
* Make keygen and import possibilities clearer in login-initial
* Show spinner when generating key
* Use mobile design (wide buttons) everywhere
* Show info about key-sync in login-new-device (for mobile users)
* remove info popovers in login screens
* allow keyfile import even when keysync has been activated
2014-07-31 19:27:22 +02:00
Tankred Hase e072f118ca [WO-510] fix toBigInteger bug
* Add tests to reconstruct the issue
* Upgrade to OpenPGP.js v0.7.2
2014-07-30 17:34:31 +02:00
Tankred Hase a137bf5bfd Merge pull request #94 from whiteout-io/dev/WO-421
Dev/wo 421
2014-07-23 13:55:36 +02:00
Felix Hammerl 3e80138a10 [WO-188][WO-421] introduce password-based login
* add custom login ability
* encrypt email password
* allow arbitrary tcp connections
* add db migration script v3 -> v4
* add bug reporting capability with the axe logger
* fix nonexistent folder handling
* enable message upload after sent
* use plain text alternative body when replying to html mails
* Move set-credentials.* -> login-set-credentials.*
* Use login styles for set-credentials
* Make OAuth optional
2014-07-23 13:51:10 +02:00
Tankred Hase 2c3347bf84 Merge pull request #97 from whiteout-io/dev/WO-465
[WO-465] clear input
2014-07-23 10:41:23 +02:00
Felix Hammerl a9db71a8b9 [WO-465] clear input 2014-07-22 21:32:11 +02:00
Felix Hammerl 10d19b5816 [WO-464] jump to the next keychain code and allow paste 2014-07-22 21:05:34 +02:00
Tankred Hase 2019f7f657 [WO-448] Do not show reader on first select in mobile mode 2014-07-21 16:05:29 +02:00
Tankred Hase 1c2f00cddd Fix tests 2014-07-21 15:18:23 +02:00
Tankred Hase 7e4f8f1c80 Fix test 2014-07-18 17:06:36 +02:00
Tankred Hase b4507b1bbc Change comment in PGP armor to whiteout 2014-07-18 16:58:33 +02:00
Tankred Hase bfda677b1b Merge pull request #90 from whiteout-io/dev/WO-428
[WO-428] use integer to track busy state
2014-07-17 17:53:07 +02:00
Tankred Hase 6a0ae4d55d Performance improvements and fixes for mail-list
* Use same list style in desktop as mobile
* Bugfix: don't download all body when list not displayed
* Use ng-infinite-scroll to load DOM nodes on demand
* Custom search filter for FTS and reomve angular filters
* Rubber band scrolling on iOS
* Add CSP support in cordova via html meta tag
2014-07-17 17:43:51 +02:00
Tankred Hase 1d0526a6a0 Render text body in iframe as well
* Remove recursive ng-includes/templates
* Use DOMPurify to sanitize reader input
* Remove ngSanitize
* Wait to show signature error until body has been parsed
* Fix scrollbar in iframe
* Allow iframe scrolling on iOS
* Move mail text body rendering to sandbox
* Cleanup html files
2014-07-16 10:22:45 +02:00
Felix Hammerl 6d2896a70c [WO-428] use integer to track busy state 2014-07-11 15:03:03 +02:00
Tankred Hase 9e46f96a28 Release and use OpenPGP.js v0.7.1 2014-07-07 12:29:13 +02:00
Tankred Hase 1b8e662769 Use same signatures structure openpgp.js for clearSignedSignatures as detached 2014-07-07 11:58:41 +02:00
Felix Hammerl 30efac0792 [WO-259] introduce proper signature checking 2014-07-04 17:58:25 +02:00
Tankred Hase b11161655a Add dev build w/ patched OpenPGP.js containing signature verification 2014-07-03 15:33:03 +02:00
Felix Hammerl c335fee0d5 add Function.prototype.bind polyfill in tests because phantomjs is buggy 2014-07-02 16:46:17 +02:00
Felix Hammerl 1283bb4a1c [WO-420] add bug reporting capability with the axe logger 2014-07-02 16:17:50 +02:00
Tankred Hase 8ebb24123a Merge pull request #85 from whiteout-io/dev/WO-279
[WO-279] Display error message if PGP signature is invalid
2014-07-02 15:31:33 +02:00
Tankred Hase bf063b5dac [WO-279] Display error message if PGP signature is invalid 2014-07-02 15:26:51 +02:00
Tankred Hase 5aec80da47 Fix appController._pgp mocking in read controller test 2014-07-01 20:59:10 +02:00
Tankred Hase b20c6977ca [WO-437] Allow users to import only the private PGP key block 2014-07-01 20:58:34 +02:00
Tankred Hase 049ac96954 Fix signature verification for PGP messages
* Upgrade to OpenPGP.js v0.6.5
* Migrate PGP wrapper for breaking OpenPGP.js api changes
* Change PGP wrapper decrypt api to return one signature arg
* Change emailDao and keychainDao calls respectively
* Fix tests
* Add tests keygen with empty passphrase
* Add tests to check PGP verification with wrong public key
2014-07-01 17:15:16 +02:00
Felix Hammerl a9cf763bed fix handling of clearsigned messages and missing signatures 2014-06-27 16:19:30 +02:00
Tankred Hase 48c478961d Add CCA scripts and css optimizations for Android
Hide native account picker on Android after first time.

Get OAuth to work on iOS

Turn off css slide transistion
2014-06-26 15:01:13 +02:00
Tankred Hase b5fda88b8a Implement client side key sync protocol and ui 2014-06-25 18:14:33 +02:00
Tankred Hase c890cbe71d Upgrade to OpenPGP.js v0.6.0 2014-06-25 18:14:29 +02:00
Tankred Hase 5244c5c2d7 Refactor REST dao 2014-06-25 18:12:15 +02:00
Tankred Hase e720753779 Implement setDeviceName and generateDeviceSecret 2014-06-23 17:21:03 +02:00
Tankred Hase 4880c162f8 Fix paths to unit 2014-06-23 17:21:02 +02:00
Tankred Hase 1e8894abe6 Rename new-unit to unit under test 2014-06-23 17:21:02 +02:00
Tankred Hase a810fb06d1 Delete old qunit test directory 2014-06-23 17:21:02 +02:00
Felix Hammerl 23242a9112 remove commented lines 2014-02-17 15:46:48 +01:00
Tankred Hase 1da5c68fd1 [WO-237] integrate web worker support for pgp 2014-02-14 16:18:21 +01:00
Tankred Hase 9341678151 reactivate qunit integration tests 2013-10-29 19:24:22 +01:00
Tankred Hase 3e75397213 cleanup and refactor qunit tests to mocha 2013-10-29 19:00:05 +01:00
Tankred Hase 1eb14d1e11 refactor to generate and store random salt for PBKDF2 2013-10-09 16:40:36 +02:00
Tankred Hase 267e889872 list and store only encrypted emails in local db 2013-09-28 19:04:15 +02:00
Tankred Hase 2b966c1132 cleanup device storage dao 2013-09-26 15:48:32 +02:00
Tankred Hase 38b0a8e8b1 refactor test and storage code 2013-09-26 13:26:57 +02:00
Tankred Hase 7b532f780c integrated imap-client amd branch 2013-09-19 18:35:12 +02:00
Tankred Hase 1259d0c160 add ngtouch to angular app, remove all backbone deps and models code 2013-09-04 19:18:28 +02:00
Tankred Hase 873671f011 add symmetric batch encryption to crypto, delete unnecessary crypto code 2013-08-31 16:09:25 +02:00
Tankred Hase fbbed90e62 removed return nul in lawnchair dao 2013-08-23 16:47:36 +02:00
Tankred Hase f06fe5e545 start rewrite of unit tests using mocha, sinon and chai 2013-08-19 21:13:32 +02:00
Tankred Hase 79b297e624 update and test forge ~0.1.14 2013-08-05 16:45:02 +02:00
Tankred Hase 699871276c sending end-2-end encrypted emails internally work 2013-07-01 22:42:39 +02:00
Tankred Hase 6097000f9f optimized email sync from cloud to do RSA validation and decryption only once 2013-06-26 17:37:21 +02:00
Tankred Hase 6932088aa9 jshint on grunt test works again 2013-06-11 17:12:27 +02:00
Tankred Hase 2007fbcc0f tested mobile.html... works 2013-06-11 03:14:57 +02:00
Tankred Hase 1368672c1d web worker tests work again 2013-06-11 00:55:53 +02:00
Tankred Hase 0e9be73791 integration tests work too now 2013-06-11 00:17:08 +02:00
Tankred Hase f1fd936141 finished refactoring unit tests with email dao 2013-06-10 23:50:26 +02:00
Tankred Hase deb47fd4df refactored device storage 2013-06-10 23:22:57 +02:00
Tankred Hase ccebe011cb refactored crypto 2013-06-10 23:07:29 +02:00
Tankred Hase 5d409933e5 refactored keychaindao 2013-06-10 22:45:21 +02:00
Tankred Hase e7185a8baa rsa and lawnchair tests refactored 2013-06-10 22:02:29 +02:00
Tankred Hase e8329872ec started refactoring for requirejs 2013-06-10 17:57:33 +02:00
Tankred Hase 1491e9fd1d removed unnecessary email model code 2013-06-06 22:05:37 +02:00
Tankred Hase 8f54f1c544 removed email collection usage in email dao 2013-06-06 19:19:37 +02:00
Tankred Hase f2a14ad65b refactoring of crypto worker code and lots of cleanup 2013-06-05 01:47:28 +02:00
Tankred Hase 71d6d6c799 started refacrtoring for sandboxed iframe 2013-06-04 21:36:13 +02:00
Tankred Hase 1071d89ee9 key ync from cloud works 2013-06-03 19:57:15 +02:00
Tankred Hase 04a3ab2a34 different lawnchair for each user 2013-06-03 04:26:17 +02:00
Tankred Hase 6224d01afd upgrade lawnchair deps... fixed bugs 2013-06-03 03:49:43 +02:00
Tankred Hase 5a2a559485 put sentDate in lawnchair key, reducing sort complexity 2013-06-03 02:17:20 +02:00
Tankred Hase 8cfd6ea0a6 upgrade several js libs 2013-06-01 13:57:50 +02:00
Tankred Hase 558ac6153d removed unnecessary scripts and dependecies for sjcl and nacl 2013-06-01 11:19:18 +02:00
Tankred Hase 03a60c2546 integrated refactored item batch encryption 2013-06-01 10:58:50 +02:00
Tankred Hase 39a9a90e26 started cloudstorage integration tests and keychain dao integration tests 2013-05-31 23:27:19 +02:00
Tankred Hase dca3b252ce finished refactoring email dao for unit tests 2013-05-31 15:51:34 +02:00
Tankred Hase 0fb0e7c1e7 cleanup Lawnchair dep injection 2013-05-31 13:09:49 +02:00
Tankred Hase 9a7e87d33e deleted local storage dao code and tests 2013-05-31 13:05:12 +02:00
Tankred Hase 09d4c1c56f refactored crypto.js tp use keypair input 2013-05-31 13:00:54 +02:00
Tankred Hase 6a33f17f42 implemented storage and lookup of user keypair 2013-05-27 19:25:45 +02:00
Tankred Hase dbb25162fa added keychain dao and started impl 2013-05-23 23:45:26 +02:00
Tankred Hase eaddd674b9 added error handling in lawnchair dao 2013-05-23 23:14:30 +02:00
Tankred Hase bdab0e19c1 integrated crypto lib changes into device storage dao 2013-05-23 22:33:44 +02:00
Tankred Hase 1e27297013 integrated new crypto lib api into crypto.js 2013-05-23 22:17:25 +02:00
Tankred Hase 52fba1a462 rm util unti test 2013-05-23 14:04:44 +02:00
Tankred Hase 487ddca28c refactored crypto libto use different namespace 2013-05-22 17:03:54 +02:00
Tankred Hase f5d505df49 moved dev server to grunt connect 2013-05-22 10:16:26 +02:00
Tankred Hase f9461aaf25 fixed cloudstorage dao it tests 2013-05-19 04:00:53 +02:00
Tankred Hase 0cb5214b94 minor fixes to email dao and crypto 2013-05-19 01:33:59 +02:00
Tankred Hase afe8c1329b integrated new crypto into email dao unit test 2013-05-18 22:33:10 +02:00
Tankred Hase 2c1458b663 updated devicestorage 2013-05-17 17:44:34 +02:00
Tankred Hase 6f2be99672 moved crypto batch code from util to own js file 2013-05-15 13:36:59 +02:00
Tankred Hase fcf64569b2 refactored crypto for user to use RSA encrypt/sign 2013-05-15 12:26:32 +02:00
Tankred Hase c9c53598e8 started refacroting crypto 2013-05-14 20:28:12 +02:00
Tankred Hase c264dfc994 refactored rsa sign and verify to take base64 arrays 2013-05-14 18:15:47 +02:00
Tankred Hase 6bbcd8cab7 added rsa module and tests 2013-05-14 16:05:31 +02:00
Tankred Hase ec14639d56 refactored forge test 2013-05-14 14:49:07 +02:00
Tankred Hase d59077dedd removed sjcl dependencies from code 2013-05-14 14:37:31 +02:00
Tankred Hase c89569fabd refactored crypto api to use forge cbc mode instead of sjcl 2013-05-14 14:05:14 +02:00
Tankred Hase 3e12c7eae6 inject forge as dependency 2013-05-14 13:43:52 +02:00
Tankred Hase 0a6ae5d599 removed hmac integrify check during cbc encryption 2013-05-14 13:40:58 +02:00
Tankred Hase df0696a373 test code cleanup 2013-05-14 13:26:51 +02:00
Tankred Hase 0a64d09fd8 test code cleanup 2013-05-14 13:19:56 +02:00
Tankred Hase d3ebb8dc50 removed crypto.js and jsbn libs 2013-05-14 12:57:09 +02:00
Tankred Hase 4d47a3cdec swapped crypto'js cbc impl for forge 2013-05-14 12:49:27 +02:00
Tankred Hase 01469356dd fixed forge test 2013-05-14 03:04:39 +02:00
Tankred Hase 04376d0245 fixed forge test 2013-05-14 02:07:28 +02:00
Tankred Hase 7d14dbfa23 test cleanup 2013-05-14 00:35:25 +02:00
Tankred Hase 184b9a6d3b forge test update 2013-05-13 17:29:02 +02:00
Tankred Hase e3ce4df5bb added forge rsa bundle and wrote benchmarks tests successfully 2013-05-13 17:14:44 +02:00
Tankred Hase 6177b40f1b moved nacl key derivation to web worker 2013-04-29 15:10:27 +02:00
Tankred Hase 65e0a7d520 user keypair is now derived on email dao init and pub key pushed to the cloud 2013-04-19 16:38:32 +02:00
Tankred Hase 3d5ab5db5f moved nacl web worker code to nacl-crypto and added synchronous impl 2013-04-11 15:02:24 +02:00