Commit Graph

712 Commits

Author SHA1 Message Date
Yann Leboulanger 8babbb1de3 revert [10593]. see #4449 2008-11-12 20:04:25 +00:00
Yann Leboulanger 540fba2aaa prevent some disk write error and show error dialog. 2008-11-06 08:10:36 +00:00
Yann Leboulanger a368839123 [thorstenp] import rst generator only when needed. see #4457 2008-11-05 18:25:40 +00:00
Yann Leboulanger 67d19a226d handle mood in messages, send mood in message if pep is not supported on server. Fixes #4449 2008-11-03 14:25:08 +00:00
Yann Leboulanger 06ab4a7b6d revert thorstenp patches for now. They introduce bugs. 2008-10-20 21:38:06 +00:00
Yann Leboulanger f801a50260 [thorstenp] fix unused variables 2008-10-20 21:17:48 +00:00
Yann Leboulanger 158538b81c [thorstenp] rename some var to not hide builts-in functions (list -> list_, ...) 2008-10-11 10:22:04 +00:00
Yann Leboulanger 73aee40542 [thorstenp] replace none equality test with identity test 2008-10-11 09:44:12 +00:00
Yann Leboulanger 567f1e17c1 [thorstenp] di not use emtpy except clauses 2008-10-11 09:37:13 +00:00
Yann Leboulanger 84e717c8df [thorstenp] use startswith and endswith instead of array indices on strings 2008-10-11 09:32:59 +00:00
Yann Leboulanger 6cc8204319 [thorstenp] replace if statement with dict.get() 2008-10-11 09:31:48 +00:00
Yann Leboulanger 9262133315 reconnect correctly when you were conencted with plain connection. Fixes #4390 2008-10-10 18:03:25 +00:00
Yann Leboulanger 9d7c80d522 [thorstenp] replace has_key by key in dict. Fixes #4392 2008-10-07 20:41:59 +00:00
Yann Leboulanger 96dd7b8ba7 revert [10494]. see #4388 2008-10-07 15:09:39 +00:00
Yann Leboulanger 46e958902f start xmpp ping after we received the roster. Fixes #4388 2008-10-07 13:59:42 +00:00
Yann Leboulanger e236382f3d handle XEP-0203 (Delayed Delivery) and use it when forwarding unread messages via adhoc commands. Fixes #4347 2008-09-26 11:11:38 +00:00
Yann Leboulanger 238ee10039 prevent traceback when connection is lost while waiting for user to accept plain connection or ssl certificate. Fixes #4285 2008-09-05 18:24:51 +00:00
Yann Leboulanger 1607000c5c revoke tune when disconnecting only for current account. fixes #4267 2008-08-31 13:40:53 +00:00
Brendan Taylor 32b56a2328 move most of is_loggable out of the session object. fixes #4103 2008-08-30 01:31:25 +00:00
tomk acdf4ff143 improved disconnect handling, added comments, fixed minor bugs 2008-08-17 22:57:48 +00:00
Julien Pivotto de4a23e751 See #4200.
* remove js from some headers
 * set coding:utf-8 to allow real names in headers
2008-08-15 17:31:51 +00:00
Julien Pivotto b58dfd6a59 Prevent many traceback due to headers and my last commit (it's late,
sorry)
2008-08-15 03:39:27 +00:00
Julien Pivotto 8bc9bc29ae * Big headers review
* Remove some licencing problems
 * To do: same for images
 * See #4200
2008-08-15 03:20:23 +00:00
tomk a76c173816 - improved SSL connections with BOSH - SSL over HTTP proxy is possible now,
Gajim will do HTTP CONNECT on proxy to reach the BOSH Conn manager and try
  to estabilish TLS (same as what firefox do when approaching HTTPS server via
  proxy)
- moved proxy-connecting code to xmpp/proxy_connectors.py
- debugged SOCKS5 proxy code
- tested with Tigase server
2008-08-14 21:48:43 +00:00
tomk 4504861084 fixed handling of SSL errors 2008-08-09 12:16:42 +00:00
Yann Leboulanger c7d33bb68e register Disconnect handler soon enough 2008-08-06 21:37:56 +00:00
tomk cbfa9d97df - TLS classes refactored - NonBlockingTLS is now plugged to NonBlockingTCP and
derived (was plugged to NonBlockingClient which made it unusable for BOSH)
- Fixed HTTP CONNECT proxy socket
- Implemented workaround for the bug with insecure-connection warning dialog
  (unfortunately, this is not over - I just forbid the transport to send
  BOSH empty bodies until auth module is plugged, which is wrong and will
  break if user will wait more than "inactivity" (usualy thirty) seconds
  before clicking the dialog.
  This workaround works with ejb and opf, and also breaks connection with
  both of them if delay is too long.
- Implemented basic TLS over BOSH. It works only with OPF and poorly.
2008-08-05 23:52:35 +00:00
Yann Leboulanger 2b896152a2 make back strings translatable 2008-08-04 08:07:07 +00:00
js 9bb8f8c5e6 Make "This message is encrypted" bodies consistent. 2008-08-03 23:01:43 +00:00
Yann Leboulanger fa2d983354 better transltion strings. see #4166 2008-08-01 09:30:36 +00:00
Yann Leboulanger 673052f1b8 handle disconnection while insecure connetion dialog is opened. fixes #4138 2008-07-30 15:43:53 +00:00
js 8605cd3f38 For historical reasons, we have a tab width of 3. This is strange, but
we have that in all files. To at least lesser the confusion a bit, add
vim tags for that.
Additionally, fix wrong #! in a few files.
2008-07-29 19:49:31 +00:00
tomk 56e0ad7a96 basic proxy authentication for BOSH connections implemented 2008-07-28 18:53:00 +00:00
tomk af3f1a9dd4 - implemented BOSH key sequencing, acknowledgements
- improved HTTP persistent connections
- added alarm-unregister method to idlequeue
- extended proxy managing dialog for BOSH proxy
2008-07-26 22:42:40 +00:00
Brendan Taylor abbdf8d5c9 attach resource to sessions so that only the relevant sessions are terminated when a contact goes offline 2008-07-26 05:28:15 +00:00
tomk a58618c843 persistent HTTP connections in BOSH roughly implemented, added hack for openfire incapability of after-SASL-stream-restart-response in BOSH, changed doubles quotes to single 2008-07-18 00:34:49 +00:00
js 92e9a51fc5 D'oh! 2008-07-15 14:39:54 +00:00
js 151e7af63e Proper checking for XEP-0085, with workaround for the caps missing
problem. Same here, remove check to notexistant once we have fallback
to disco.
2008-07-15 13:51:20 +00:00
tomk 3d860f40a6 BOSHClient transformed to NonBlockingBOSH transport - it's easier to maintain more connections from below, implemented handling of non-persistent HTTP connections - it runs with ejabberd, improved NonBlockingTransport interface, minor changes in BOSHDispatcher 2008-07-13 22:22:58 +00:00
Yann Leboulanger 3ad1f9afed remove useless print 2008-07-05 18:25:39 +00:00
Yann Leboulanger 32bb251381 typo 2008-07-05 18:25:09 +00:00
Yann Leboulanger 1e636e7824 warn before connecting without PyOpenSSL. fixes #4065 2008-07-05 18:07:32 +00:00
tomk 952e4a1569 moved bosh code from client_nb.py to bosh.py, replaced debug logging with debug.py by logging in whole xmpppy (debug.py is now unused) 2008-07-02 23:29:10 +00:00
js 9ce8e28c0a Fix missing ). 2008-07-02 12:27:12 +00:00
js 46913c541b XEP-0184 uses the new caps-checking way now. 2008-07-02 10:48:15 +00:00
tomk f3820706fb - Refactored non-blocking transport and client classes - getaddrinfo is called
in Client now
- Added NonBlockingHttpBOSH transport (to tranports_nb) and BOSHClient
(to client_nb)
- Extended possible proxy types in configuration by "BOSH" proxy
- Rewrote NonBlockingTLS to invoke success callback only after successful TLS handshake is over (formerly, the TLS Plugin returned right after sending <starttls>)
2008-06-30 00:02:32 +00:00
Yann Leboulanger 371a38c91c increase xmpppy verbosity when we use -l gajim=DEBUG 2008-06-26 10:01:12 +00:00
Yann Leboulanger 9457c28a63 don't try the old (XEP-018) way to go invisible. It's not XMPP complient. That prevent to show the we are invisible but we are not. Fixes #4012 2008-06-25 09:25:43 +00:00
Yann Leboulanger d4c8cb8b15 don't think connection to server failed when only first connection attempt failed when creating a new account 2008-06-25 06:56:03 +00:00
Yann Leboulanger 3d2e97d251 when we are disconnected from server, we then try to reconnect only with the type (tls, ssl, plain) that worked first time. Fixes #3896 2008-06-19 18:05:15 +00:00
js 9634f98250 * Implemented XEP-0184 section 5.
* Added NS_RECEIPTS to protocol namespace list.
* Show our support of XEP-0184 in caps.
* Added a big, fat warning to get_contact as this does not work as
  expected.
* There was some strangeness in our XEP-0022, it added an id tag to
  the x tag, which isn't mentioned anywhere in the XEP. And for some
  strange reason, that id even was the same all the time.
* Fixed a typo.
2008-06-17 16:03:21 +00:00
tomk 6a15c9b9c9 initial cleanup of xmpppy perfomed, see #3260 2008-06-09 00:32:02 +00:00
js 593ed0c6d8 * Fix passing of message ID.
* Don't asnwer to receipt requests from users not in roster.
2008-06-08 15:51:55 +00:00
js c2eb4b5a9f Completely remove OTR.
Sorry, it just wasn't maintainable. The problem is the current libotr
API. I'm sick of working around the strange libotr API, sick of getting
HTML messages, sick of losing messages. The final argument for
completely removing it was that we can't get the message ID of a sent
msg anymore - which we need. I tried to work around this as well, but
there seems to be no way to wait for a signal in glib the way I would
need it for the workaround (I wanted to emit a signal in inject_message
and then wait for it after the call to otr_message_fragment_and_send
so the signal can pass us the message id). And the last reason is that
we're heading towards a new release and thus want to stabilize the code,
thus don't have time to work around even more libotr API strangeness.
I will give feedback to the libotr developers, who are currently
planning a new API, so that we can hopefully see OTR support once again
as soon as libotr4 is released.

Kjell already announced that he will continue his branch:
https://code.launchpad.net/~afflux/gajim/otr

I really hope the libotr devs will provide a sane API with libotr4 so
we can integrate OTR support again.

Oh, and I added one more try/except block for OS X.
2008-06-08 15:27:05 +00:00
js a495d090c3 Initial XEP-0184 support.
TODO:
 * Implement section 5.
 * Think of a way to show in GUI
    Possible way: Grey out the sent msg until we receive a <received/>,
    but only if we know the other end supports XEP-0184.
 * Maybe implement section 6?
2008-06-07 19:47:19 +00:00
Jean-Marie Traissard e487aa7802 Change the way to remember last message time in groupchat again. Save the time on
disconnection or exit. Previous version seemed perfect, but if server don't have the
same exact time than us (always), lots of messages can be logged twice. Here we will
lost log for messages that were sent beetween we lost connection and we see it. But that
seems better for me. For previous version, see [9516].
2008-06-05 11:18:33 +00:00
Brendan Taylor f7874d29c7 reuse chat controls after session termination
fixes #3950
2008-05-23 23:27:08 +00:00
Brendan Taylor 368dd9fe66 missed part of that last patch 2008-05-19 18:30:04 +00:00
js 1cbe5678da * When we receive a plaintext, non-tagged message, don't append OTR
tag to outgoing messages anymore. Messages are not even passed to
  libotr anymore then.
* If we don't support OTR, strip OTR tags from the message before
  displaying it.
2008-05-19 17:41:51 +00:00
Brendan Taylor fad6d2ef7e pass session when dispatching MSGNOTSENT 2008-05-19 00:17:39 +00:00
js 75ad801f62 Fix music_track_info for multiple accounts. 2008-05-16 16:04:51 +00:00
js 96a5b497a8 * Remove old code to update status to current track.
* Don't bind the track listener when not enabled anymore.
* Remove the signal / add the signal when changed in preferences.
2008-05-15 19:52:04 +00:00
js 4c3dc0b092 That still was the wrong place, it was initialized too early. Fixed. 2008-05-10 23:42:29 +00:00
js e335055709 Fix broken exception handling for OTR in connection.py. 2008-05-10 22:22:09 +00:00
js 4eeb96368b Store otr_userstates at the right place and create it the right way.
This fixes the crash when creating a new account, which made Gajim
unusable on systems where it never ran before.
2008-05-10 21:29:47 +00:00
js 435042968e Added OTR support.
Work done by Kjell Braden <fnord@pentabarf.de>.
Some fixes done by me.
2008-05-09 12:35:25 +00:00
Jean-Marie Traissard 75ffe12157 Change very bad var names 2008-05-05 03:18:09 +00:00
Jean-Marie Traissard 94580b3019 Change the way last_history_time for room is saved. Save time in mem at each message logged. When closing
control, save the value in rooms_last_message_time table. Previous version could introduce duplicate logs or
messages not logged.
2008-04-21 15:48:06 +00:00
Jean-Marie Traissard 8f84ff29f5 fix indent 2008-04-15 01:54:31 +00:00
Jean-Marie Traissard f32901d243 Create a new small table in DB to remember rooms last_history_line at next
launch. This is necessary because with a big history get_last_date_that_has_logs
can take about 5 seconds on first launch.
Created new gajim subversion.
2008-04-15 01:52:11 +00:00
Stephan Erb b991b32886 Add missing tooltip and markup in vcard window. See #1069. Make string a doc string. 2008-04-04 15:10:50 +00:00
Jean-Marie Traissard 75983ff571 Some "jep" -> "xep" 2008-03-30 20:35:02 +00:00
Yann Leboulanger 95bf9c4f74 send xml:lang in groupchat presences and configuration request. fixes #3743 2008-03-03 23:00:01 +00:00
Yann Leboulanger 494ae444b6 ability to ignore SSL errors until certificate changes. Fixes #3710 2008-02-15 10:11:17 +00:00
Yann Leboulanger 597096ce81 don't show us online automatically when we are in error state and we try to go online 2008-02-08 22:04:42 +00:00
Yann Leboulanger 436c75a244 show in GUI that we are offline when we don't get XMPP ping in time 2008-02-08 21:48:20 +00:00
Yann Leboulanger 0727ebd940 wrong syntax, missing ) 2008-02-08 07:53:09 +00:00
Yann Leboulanger a9e0ce5a0e add advanced option to configure the time we wait XMPP Ping answer 2008-02-08 07:47:35 +00:00
Yann Leboulanger 85cc4889ec use XMPP ping (XEP-0199) to detect connection lost at applicatin level. fixes #2767 2008-02-07 23:53:02 +00:00
Yann Leboulanger e8b7778521 detect jabber:iq:last and jabber:iq:version errors by IDs. fixes #3711 2008-02-05 14:50:21 +00:00
Yann Leboulanger 594313ed94 fix creation of new accounts 2008-02-04 22:17:35 +00:00
Yann Leboulanger 853d06bcaa fix args retured by on_connect_failure 2008-02-04 22:15:00 +00:00
Yann Leboulanger 848c492926 add checkbutton to YesNoDialog. Ability to fall back from tls to ssl and then plain. Warn user when using insecure connection. fixes #1923 2008-02-04 21:38:36 +00:00
Yann Leboulanger 68324dd104 fix XEP-0126 (invisibility) support. see #3666 2008-01-09 19:32:09 +00:00
Stephan Erb 30ad68a26c Backport some fixes to zeroconf: don't fail on special characters, don't allow gpg usage when it is not secure or even possible
Be more verbose when there is a key missmatch.

Mind that presence in zeroconf are not signed, gpg keys have to be assigned manually therefore.
2007-12-31 01:19:08 +00:00
Stephan Erb d621eb9405 SSL errors got mixed up. Fixed 2007-12-30 00:10:22 +00:00
Stephan Erb 6fdd7c0f88 Rework GPG behaviour:
Only encrypt when the receiver is trusted. You have to sign its key or it has to be signed by someone you trust. Fixes #109

Make checkbox insensitive when GPG is disabled on an account (or no passphrase given).

Auto assign trusted keys on received presence. Deny encryption on missmatch of assigned key and signing key. Fixes #3376

Do not disable encrypted when receiving an unencrypted message. Print whether a received message was encrypted or not.

TODO: Remove togglebutton, its useless now
2007-12-29 23:28:27 +00:00
Stephan Erb fef742c863 Refactor the way we decide whether GPG is usable or not: Ability to change keys when no valid passphrase could be entered.
See #1210. Workaround for unavailable keys.

Remove useless except block: import of GnuPGInterface is the same on Debian and non Debian systems.
2007-12-28 18:49:28 +00:00
Yann Leboulanger f95df09441 how SSL error message in bold. fixes #720 2007-12-27 23:33:05 +00:00
Jean-Marie Traissard 14bf5ed62c pyflakes checks, remove unused imports, mainly 2007-12-27 21:52:45 +00:00
Yann Leboulanger 6247de33da don't propose to add certificate to cacerts.pem file if it's useless, and don't add it if it is already in. fixes #720 2007-12-26 23:59:54 +00:00
Yann Leboulanger 3bc22371cc [ruiabreuferreira and I] ability to use http_proxy environment variable. fixes #2977 2007-12-19 14:42:04 +00:00
Yann Leboulanger a2e53ccc5c fix creation of account on server that supports dataforms 2007-12-15 12:41:39 +00:00
Yann Leboulanger 19761f081f [js & I] show pep info in account tooltip, fix a bug in create_contact() 2007-12-13 20:26:13 +00:00
Yann Leboulanger a645006bf8 merge diff from trunk 2007-12-12 08:44:46 +00:00
Piotr Gaczkowski 55a7061ea3 Better Tune support 2007-08-10 20:18:32 +00:00
Piotr Gaczkowski 947ec8e933 PEP prefs added 2007-08-09 23:05:43 +00:00
Yann Leboulanger ea24ee82e5 merge diff from trunk to pep branch 2007-08-09 15:39:18 +00:00
Piotr Gaczkowski e3ef0821b3 Merge with trunk 2007-06-03 10:04:20 +00:00
Yann Leboulanger c02eb73bd0 add pep_supported var to pep branch too 2007-03-30 19:16:44 +00:00