Commit graph

472 commits

Author SHA1 Message Date
Daniel Gultsch 1accf9d961 migrate to xmpp-addr 2018-03-07 22:30:36 +01:00
Daniel Gultsch b393f54a03 get rid of customizable resources 2018-03-07 22:30:35 +01:00
Daniel Gultsch bf6b54a7aa get rid of OTR 2018-03-07 22:30:34 +01:00
Daniel Gultsch de0272fd1a integrate trust manager into conversations 2018-03-07 22:30:33 +01:00
Daniel Gultsch 63cd8e5981 added config param to use a random resource at every bind 2018-02-24 20:47:02 +01:00
Daniel Gultsch f81e5e471e request disco items before disco#info on first connect
should make initial connect faster because code is not waiting for omemo code to run
2018-02-20 17:36:07 +01:00
Daniel Gultsch e7094af9d5 warn when attempting to write stanza to an unbound stream 2018-02-20 17:03:44 +01:00
Daniel Gultsch 014cf66c87 do not allow insecure bind 2018-02-18 21:54:03 +01:00
Marc Schink 17c6d8827c Make use of Namespace.DATA constant 2018-02-16 16:12:53 +01:00
Daniel Gultsch 012653f7ed SM saftey checks 2018-02-02 16:52:40 +01:00
Daniel Gultsch 78c5c508b3 permanently cache last resolver result 2018-01-21 20:41:30 +01:00
Daniel Gultsch f2bbb6087c remove wakelocks in XmlReader 2018-01-21 12:30:31 +01:00
Daniel Gultsch 6458351f6c use countdownlatch to check if TagWriter has finished 2018-01-20 23:13:36 +01:00
Daniel Gultsch 3a8855a672 fixed interupt handling 2018-01-20 21:57:09 +01:00
Daniel Gultsch 2b39acf352 postpone notification actions (mark as read, reply) until after messages are loaded 2018-01-20 20:05:39 +01:00
Daniel Gultsch 6009b8ebf0 disable offline messages. postpone prekey handling until after mam catchup 2018-01-19 18:17:13 +01:00
Daniel Gultsch 036dd82698 properly handle key transport messages. use prekeyparsing only when that attribute is set 2018-01-18 20:58:55 +01:00
Daniel Gultsch 127557df56 show pep as available if omemo_all_access has been installed on server 2017-12-18 13:47:53 +01:00
Daniel Gultsch 1b0cd77c57 XmppConnection: refactor registration code. 'Open Website' on PAYMENT_REQUIRED failure 2017-12-08 14:23:38 +01:00
Daniel Gultsch 05b6fdb9f1 use empty wake lock tag 2017-11-21 13:25:18 +01:00
Daniel Gultsch 2d42646893 JingleConnection: fixed rare npe when canceling jingle 2017-11-16 12:49:15 +01:00
Daniel Gultsch c52492ada0 apperently some servers will ommit the from even for stanzas not going to them 2017-11-16 12:48:26 +01:00
Daniel Gultsch bc9da1fbf4 remove prosody push from blacklist 2017-11-12 19:22:39 +01:00
Daniel Gultsch 435d1ef5bd SASL: don't prefer PLAIN auth over DIGEST-MD5 for nimbuzz.com 2017-11-05 16:21:59 +01:00
Daniel Gultsch 962add97f9 XmppConnection: throw bind failure when server tries to reassign domain 2017-10-27 18:26:06 +02:00
Daniel Gultsch 6f802b88d2 XmppConnection: do not count stanzas before smacks session has started 2017-10-27 11:35:55 +02:00
Daniel Gultsch 396ad3361f Jingle: create output stream on demand 2017-10-26 18:42:10 +02:00
Daniel Gultsch d348780dfc wait up to 2s to let server close socket before force closing 2017-08-23 12:33:40 +02:00
Daniel Gultsch 6afa5653cb fixed jingle state machine being thrown off by iq-result coming after session-accept
fixes #2587
2017-08-18 14:33:56 +02:00
Daniel Gultsch b925f436fd add more logging to http download connection and reset file params after setting expected size 2017-08-04 11:58:12 +02:00
Daniel Gultsch 225cca4566 provide extra 'network is unreachable' account state 2017-08-02 18:58:51 +02:00
Daniel Gultsch e11277c70f use base64 instead of base36 when creating random strings 2017-07-30 11:39:47 +02:00
Daniel Gultsch 2fc216bfc4 skip initial socket closing if thread was already interrupted 2017-07-21 08:30:16 +02:00
Daniel Gultsch 9a57673130 use publish-options instead of always pushing node configuration 2017-07-18 12:51:15 +02:00
Daniel Gultsch 2a198793b1 fixed otr jingle file size reporting 2017-07-18 12:43:53 +02:00
Daniel Gultsch febee9863f catch IllegalArgumentException caused by invalid custom hostname 2017-07-16 21:02:56 +02:00
Daniel Gultsch 3d0b127a8f verify with hostname in direct tls connections 2017-07-13 19:27:43 +02:00
Daniel Gultsch edb28ccb31 throw state changing exception on failed tls only if no more connection options left 2017-07-11 23:25:59 +02:00
Daniel Gultsch da00a58902 work around idn short comings in minidns 2017-07-10 08:50:01 +02:00
Daniel Gultsch 5cac4397dd catch state changing error when sending timeout to iq callbacks 2017-07-03 19:44:01 +02:00
Daniel Gultsch 4a2e222b34 deduplicate disco items before disco#info 2017-06-30 08:45:16 +02:00
Daniel Gultsch cbbf6f439b add publish-options helper class 2017-06-27 22:50:39 +02:00
Daniel Gultsch 3c90dbe723 fixed ip reporting for dns look ups 2017-06-22 00:09:59 +02:00
Daniel Gultsch 2ed71df01a also check for hostname in in certs if hostname is from trusted source 2017-06-21 23:40:01 +02:00
Daniel Gultsch 2e380ed792 upgrade minidns. refactored dns utils 2017-06-21 23:28:01 +02:00
Daniel Gultsch 5d9d725446 offer to open website if ibb offers oob redirect. fixes #2503 2017-06-19 20:02:41 +02:00
Daniel Gultsch 3ece613a5d rename resource on bind conflict 2017-05-25 14:40:59 +02:00
Daniel Gultsch 51d1223198 invoke statusChanged callback after syncronization 2017-05-19 15:28:25 +02:00
Daniel Gultsch 7cd4ed78b2 synchronize on dedicated lock for catchup instead of account 2017-05-19 13:30:57 +02:00
Daniel Gultsch 9fd6539534 clean up client cert selection code 2017-05-18 11:31:31 +02:00
Daniel Gultsch 5056a28553 differentiate starttls failure and sasl failure 2017-05-13 08:08:05 +02:00
Daniel Gultsch 91db2023d3 use mam reference instead of timestamp 2017-05-07 21:05:35 +02:00
Daniel Gultsch 9a7d925b97 do not synchronize startXmpp() and sendPacket() on the same object as this can block the ui 2017-05-06 15:37:22 +02:00
Daniel Gultsch be371ac5df reset resource after bind failure 2017-05-05 09:38:58 +02:00
Daniel Gultsch 7b6d49f329 unified all account state exceptions 2017-05-05 09:33:05 +02:00
Daniel Gultsch f47cf7ae67 make jingle implementation send file hash when using ft5 2017-05-03 11:03:04 +02:00
Daniel Gultsch 5cadc81de4 support for jingle ft:5. fixes #2458 2017-04-30 16:21:13 +02:00
Daniel Gultsch 84baa3ae68 avoid race conditions when downloading files or decrypting pgp messages and waiting for sm catchup 2017-04-30 16:19:39 +02:00
Daniel Gultsch c837e0616a make sure tag writer thread shuts down 2017-04-22 10:08:51 +02:00
Daniel Gultsch 0904ba42f8 use async message loading only when called from UI 2017-04-13 00:12:23 +02:00
cijo-saju 3467a67e75 Removed unused imports from entire project. 2017-04-12 20:24:36 +05:30
cijo-saju b4318996ac Fixed typo in comment 2017-03-26 22:07:39 +05:30
Daniel Gultsch 010b341251 do not pipeline first SM request because that might fail when resume fails 2017-03-21 18:08:20 +01:00
Daniel Gultsch c97c5def2c experimental: wait for SM catchup before triggering notifications
wait for a first SM ACK before calculating if we need to trigger any notifications
might have to be changed to an XEP-0199 ping later on. for now sending <r/> after resume seems to work outfine
2017-03-21 17:58:08 +01:00
Daniel Gultsch c740386297 rename the Xmlns class to Namespace 2017-03-01 13:01:46 +01:00
Daniel Gultsch c7ec82679f Merge branch 'master' of github.com:siacs/Conversations 2017-02-24 20:00:54 +01:00
Daniel Gultsch 0c0ff882a9 make x509 verification node world readable 2017-02-24 19:58:46 +01:00
Daniel Gultsch a28116753a Merge pull request #2315 from licaon-kter/lecagy-typo
Fix a typo in legacy
2017-02-19 18:43:21 +01:00
licaon-kter d3dd80eec9 Fix a typo in legacy 2017-02-19 15:47:57 +02:00
Daniel Gultsch 0d00ff0c15 migrate domain and host exemption into seperate class 2017-02-19 13:05:40 +01:00
Daniel Gultsch c69ad8f52c npe checks 2017-02-17 10:26:42 +01:00
Daniel Gultsch caa16a8517 experimental mam legacy compat layer 2017-02-15 16:42:35 +01:00
Daniel Gultsch b90a1fe1db bump mam namespace 2017-02-14 17:19:45 +01:00
Daniel Gultsch c8f97be68e only force close tagwriter before creating a new one 2017-02-13 13:01:00 +01:00
Daniel Gultsch c9e6d05fa0 use base64 encoding for file names uploaded with http 2017-01-26 18:39:25 +01:00
Daniel Gultsch b72d7ec8d0 make sure to properly stop tagwriter 2017-01-22 12:54:39 +01:00
Daniel Gultsch 780d1daf7e fixed some issues around ibb 2017-01-20 22:37:50 +01:00
Sam Whited bfc2cffc2f Add SCRAM-SHA-2 support 2017-01-15 23:43:44 -06:00
Daniel Gultsch 1876b444fa refactor getServerIdentity() to parse disco result directly 2017-01-12 23:17:52 +01:00
Daniel Gultsch b050ff2576 only call UI thread from downloading thread every 250ms 2017-01-12 16:02:09 +01:00
Daniel Gultsch cbc9c1fb20 add support for RFC7711 to MTM 2016-12-05 21:52:44 +01:00
Daniel Gultsch 5d4aa04e5d support for jid escapting when displaying localpart only 2016-12-01 20:49:18 +01:00
Daniel Gultsch 8132480b82 close socket after failed stream open 2016-11-19 12:20:31 +01:00
Daniel Gultsch 3bf2876e09 check if thread was interrupted before doing operations on socket 2016-11-19 10:44:40 +01:00
Daniel Gultsch d68b7cfcfc issue ping after network change 2016-11-18 14:00:05 +01:00
Daniel Gultsch 1ed2445c1d don't reset last connect time on network change 2016-11-18 13:55:02 +01:00
Daniel Gultsch 20ddba2aa9 fixed npe when jingle partner is using unknown candidate 2016-11-01 10:27:01 +01:00
Daniel Gultsch 07a71d312a extracting stanza-id where by=account 2016-10-31 12:07:08 +01:00
Daniel Gultsch 8557120ef8 add error message to failed messages. accessible via context menu 2016-10-26 12:26:04 +02:00
Daniel Gultsch 44ce5df359 write prepped string to db. use display version everywhere else 2016-10-20 17:31:46 +02:00
Daniel Gultsch f6cfa27741 synchronize access to json key storage in account model 2016-10-13 11:27:26 +02:00
Daniel Gultsch 9efef24a04 reset sending to waiting on every error 2016-10-07 14:54:35 +02:00
Daniel Gultsch 26e33de79a create new instances of key manager every time it's used 2016-10-07 10:04:36 +02:00
Daniel Gultsch 8d8cb92e43 try to fix messages stuck at sending 2016-10-06 17:23:35 +02:00
Daniel Gultsch 401759cdc7 don't wait for disco when not having stream managment 2016-09-21 12:55:40 +02:00
Daniel Gultsch 7eac903277 add support for XEP-0377: Spam Reporting 2016-09-18 23:21:05 +02:00
Daniel Gultsch 4359afacb4 store jid if it was changed during bind 2016-09-14 12:26:38 +02:00
Daniel Gultsch 7b52e6984c Merge pull request #2018 from SamWhited/sasl_anonymous
SASL ANONYMOUS (no UI)
2016-09-14 09:34:20 +02:00
Daniel Gultsch d3dfecae8a don't use display version of jids 2016-09-12 22:48:51 +02:00
Sam Whited 1a0b538166 Use JID returned by the server during bind
Not just the resourcepart
2016-09-12 11:33:36 -05:00
Sam Whited 805717673c Support ANONYMOUS SASL 2016-09-12 11:30:03 -05:00
licaon-kter 59b2e281a3 Fix typo 2016-09-10 22:16:14 +03:00
Daniel Gultsch 416481bb65 be a bit more careful when deleting and deactivating accounts 2016-09-07 14:34:58 +02:00
Daniel Gultsch 7917c19d18 broader exception catchers 2016-08-30 13:15:00 +02:00
Daniel Gultsch caafd03130 don't automatically download files and avatars when datasaver is on 2016-08-27 13:35:52 +02:00
Daniel Gultsch e98ab37c9d made payment required error standard compliant 2016-08-25 23:42:42 +02:00
Daniel Gultsch 0b9d38cf32 send register IQs without full from 2016-08-25 13:50:54 +02:00
Daniel Gultsch 285d86b375 display error status for missing internet permission 2016-08-19 21:47:08 +02:00
Daniel Gultsch b5d3859b22 add payment required error 2016-08-16 10:39:59 +02:00
Daniel Gultsch 08725ba2bb use direct ssl when port was manually set to 5223
this should create a work around for the oracle xmpp server
2016-08-10 12:34:05 +02:00
Daniel Gultsch a51de9fcd9 explictly set account status to offline when waiting for push 2016-08-09 17:25:45 +02:00
Daniel Gultsch 3409399ef1 display specific error message when password is too weak on registration 2016-07-25 15:57:47 +02:00
Daniel Gultsch 1db85e582e add more error states for stream errors 2016-07-14 17:05:43 +02:00
Daniel Gultsch 58d5d2a1be don't time out disco request but just send bind request 2016-07-13 00:20:57 +02:00
Daniel Gultsch ac8aa63916 do not crash on jingle connection when contact doesn't use disco 2016-07-04 19:29:46 +02:00
Daniel Gultsch 1d79a677c8 support jingle ft:4 to be compatible with swift
Conversations and Gajim both have an implementation bug that sends the jingle session id instead of the transport id (compare XEP-260 2.2). This commit has a work around for this that remains buggy when using ft:3. If gajim is ever to fix this we will be incompatbile. gajim should implement ft:4 instead. (gajim to gajim is broken as well)
2016-06-29 17:16:40 +02:00
Daniel Gultsch 97fe14c4be code cleanup in jingle socks5 transport 2016-06-24 13:36:37 +02:00
Daniel Gultsch 34454ef2ec synchronize stanza count increment and write 2016-06-22 12:21:33 +02:00
Daniel Gultsch 5f40a7042d delay notification until after pgp decryption 2016-06-15 12:44:29 +02:00
Daniel Gultsch 95a51ea2e0 synchronize access to stanza queue 2016-06-14 10:17:37 +02:00
Daniel Gultsch 40f81f19df make sure tagwriter is clear before force closing socket 2016-06-13 19:05:32 +02:00
Daniel Gultsch 587fb3cca3 refactored pgp decryption 2016-06-13 13:32:14 +02:00
Daniel Gultsch 36ae840d76 log all background stanzas when background logging is enabled 2016-06-05 02:04:31 +02:00
Daniel Gultsch 71e9117176 opt-in to send last userinteraction in presence 2016-06-04 16:16:14 +02:00
Daniel Gultsch ffba53777c check if session is optional 2016-05-31 23:09:45 +02:00
Daniel Gultsch b69ab65b12 show regitration failed try again later in UI 2016-05-24 13:26:30 +02:00
Daniel Gultsch 3f65b0e985 access disco over caching mechanism instead of querying db 2016-05-19 10:44:16 +02:00
Daniel Gultsch 0eb8d4226e also save form elements in disco storage 2016-05-19 10:41:56 +02:00
Daniel Gultsch d7c5264ad0 cap exponential backoff at 300s (10 attempts) 2016-05-16 19:58:24 +02:00
Daniel Gultsch b756d61c45 show presence of other resources as template 2016-05-13 10:45:30 +02:00
Daniel Gultsch 2014f388b1 interrupt XMPPConnection Thread
in some cases the the DNS query might take too long (even though we specified a timeout)
if that happens we need a secondary solution (besides killing the socket) to stop the thread
2016-05-12 21:54:46 +02:00
Daniel Gultsch 8e3948e495 don’t let attempt count fall below zero 2016-05-10 17:48:09 +02:00
Daniel Gultsch 549be9bb3d report host-account as account state in UI 2016-05-10 10:29:02 +02:00
Daniel Gultsch 488780d2ce fix logging wrong variable for failed resume 2016-05-08 21:53:45 +02:00
Daniel Gultsch 6f3b8f64d1 check for h attribute in 'failed' nonza 2016-05-08 21:45:18 +02:00
Daniel Gultsch a7cd05bd4e report bind failure as account state 2016-05-05 20:22:47 +02:00
Daniel Gultsch 0157039e87 log more information about HTTP’s max upload size 2016-05-05 19:34:44 +02:00
Daniel Gultsch 12704fa640 refactor captcha response handling to avoid network on main thread exception 2016-05-05 09:58:35 +02:00
klemens 7047d68165 spelling fixes 2016-05-04 10:29:29 +02:00
Daniel Gultsch 7ff890e513 republish avatar if server offers non-persistent pep :-( 2016-04-11 22:20:32 +02:00
Daniel Gultsch 5786e75374 don't throw IO exception at end of stream 2016-04-10 00:19:53 +02:00
Daniel Gultsch 607b7d1593 moved authentication into seperate method. force close socket before changing status 2016-04-10 00:18:14 +02:00
Daniel Gultsch 14b46c3ee7 transform nimbuzz workaround into a more general 'waitForDisco' condition 2016-04-09 08:53:58 +02:00
Daniel Gultsch a8ebc5fafc add required disco#items query to timeout list 2016-04-08 20:20:37 +02:00
Daniel Gultsch 0385e3a8d6 switched around info and items query to avoid race condition 2016-04-04 20:35:40 +02:00
Daniel Gultsch 61997912fd made sure the disco#items query has returned before finalizing the bind 2016-04-04 20:06:07 +02:00
Daniel Gultsch 2549ce89b0 check max http file size when attaching files 2016-04-01 00:03:14 +02:00
Daniel Gultsch 74c496fe3e add methods to check max file size for http upload 2016-03-31 21:56:59 +02:00
Daniel Gultsch e074104004 save otr fingerprint in message 2016-03-31 21:15:49 +02:00
Daniel Gultsch 867d0ef191 include form fields into caps hash calculation 2016-03-31 14:21:56 +02:00