1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-12-04 14:46:46 -05:00
Commit Graph

987 Commits

Author SHA1 Message Date
Paul Fariello
973a05d15a Handle presence received before roster
Presence of contact not found in roster are filtered out.
But sometimes roster is received after a first few presences.

We choose to store presences until we receive roster and then process
this presences.

Fixes #1050
2019-04-17 14:19:31 +02:00
Paul Fariello
21ae946896 Handle MUC anonymous state when auto starting OMEMO
When auto joining a MUC we don't have access to required information so
we just don't start OMEMO at this time.

Once we receive disco info we then try to start OMEMO.
2019-04-17 14:03:14 +02:00
Paul Fariello
8c71a74afe Ensure MUC is Non-Anonymous before starting OMEMO
Store MUC anonymous type in mucwin for that purpose.

Fixes #1065
2019-04-17 13:56:27 +02:00
Paul Fariello
9714d1d867 Add random string at the end of the default resource
When connecting for the first time or when creating a new account don't
use only 'profanity' as default resource.

Some server don't support having 2 connection with same resource. Using
profanity as default lead to deconnections.
2019-04-12 15:49:54 +02:00
Paul Fariello
381d85bcca Fix build on travis 2019-04-10 17:24:56 +02:00
Paul Fariello
4ad6904216 Wait for discovery end to publish omemo devicelist and bundle
Add sv_ev_connection_features_received for that purpose
2019-04-10 17:23:46 +02:00
Paul Fariello
e69f947547 Rework MUC reflected message filtering
Reflected messages can't be filtered by nick only otherwise you might
ignore messages comming from you on another devices.

Consequently we maintain a list of sent messages id in mucwin.
To be sure the id will be correctly reflected we use the origin-id
stanza.
2019-04-10 17:23:46 +02:00
Paul Fariello
65b3f82c5f Fix devicelist notification handler
devicelist handler should be kept after trigger
2019-04-10 17:23:46 +02:00
Paul Fariello
0d0e2b246a Add support for missing from in bundle iq 2019-04-10 17:23:45 +02:00
Paul Fariello
562302846a Handle bundle publication error on publish-options
We try to reconfigure node and publish again.
If it fails again then we give up.
2019-04-10 17:23:45 +02:00
Paul Fariello
2015ba201d Ensure encrypted carbon of own message are marked as encrypted 2019-04-10 17:23:45 +02:00
Paul Fariello
bc16ba1669 Temporarly disable check for publish-options support 2019-04-10 17:12:31 +02:00
Paul Fariello
2fd2ca208c Use connection_support to check for publish-options support 2019-04-10 17:12:31 +02:00
Paul Fariello
91ee289c77 Add support for disconnect in OMEMO 2019-04-10 17:12:31 +02:00
Paul Fariello
70109953ec Revert "Ensure room isn't anonymous"
This reverts commit 733e1a24c7e08dde6aa2c15ec4528220aa360845.
2019-04-10 17:12:31 +02:00
Paul Fariello
d8f0bcef94 Add publish option to OMEMO device list and bundle 2019-04-10 17:12:31 +02:00
Paul Fariello
9044e3732c Ensure room isn't anonymous 2019-04-10 17:12:31 +02:00
Paul Fariello
4e1ffa6bdb Log and print outgoing encrypted message 2019-04-10 17:12:31 +02:00
Paul Fariello
a9d55dec92 Add support for sending encrypted message in MUC 2019-04-10 17:12:31 +02:00
Paul Fariello
f7ce1607f9 Ensure saved_account is set before calling sv_ev_login_account_success 2019-04-10 17:12:31 +02:00
Paul Fariello
a3897abba1 Add MUC message decryption 2019-04-10 17:12:31 +02:00
Paul Fariello
0dd5441f92 device_list iq should be from barejid or none
Ensure we request device_list and remove non conforming handling of
responses.

Move initialisation of iq_handlers before call to sv_ev_login_account_success
2019-04-10 17:12:31 +02:00
Paul Fariello
36ce21fc6d Add store hints for OMEMO encrypted messages
Store hints are required has some server might discard messages without
body. Here we ensure OMEMO messages are stored on server and delivered
to client when they connect back.

It's really important since it avoid libsignal to desynchronize
counters.
2019-04-10 17:12:31 +02:00
Paul Fariello
97c661271b Add support for libsignal-protocol-c 2.3.2 2019-04-10 17:12:31 +02:00
Paul Fariello
bf8b89c568 Randomly choose a prekey on session build 2019-04-10 16:31:45 +02:00
Paul Fariello
695694051e Remove hints preventing carbons to work properly 2019-04-10 16:31:45 +02:00
Paul Fariello
bcd582be42 Don't explicitely disable carbons for OMEMO messages 2019-04-10 16:31:45 +02:00
Paul Fariello
9b8c1d7d2c Add support for encrypted carbon
Fix {signed,}_pre_key store
2019-04-10 16:31:45 +02:00
Paul Fariello
810ea32223 Follow normal workflow for OMEMO message reception
We try to decrypt all messages, if it's successful we use
sv_ev_incoming_message even for OMEMO messages. We pass an OMEMO
boolean to let UI be aware that message were encrypted.
2019-04-10 16:03:50 +02:00
Paul Fariello
d871efdcf9 Add chat session state to OMEMO message stanza 2019-04-10 16:03:50 +02:00
Paul Fariello
904904d74e Add default body on OMEMO message 2019-04-10 16:03:50 +02:00
Paul Fariello
0fb27dc496 Add OMEMO message encryption and decryption 2019-04-10 16:03:50 +02:00
Paul Fariello
b1ae220aa4 Create signal session 2019-04-10 16:03:50 +02:00
Paul Fariello
f9216fddb1 Add signal store backend and OMEMO start command 2019-04-10 16:03:50 +02:00
Paul Fariello
1f9d46037c Request for device list when OMEMO is ready 2019-04-10 16:03:50 +02:00
Paul Fariello
756fefb09a Fix devicelist subscription and handle pubsub event
Devicelist subscription can be done directly with caps_add feature.
2019-04-10 16:03:50 +02:00
Paul Fariello
1ae5d9f1f8 Add pubsub event callback
Also add generic message callback struct
2019-04-10 16:03:50 +02:00
Paul Fariello
2d28725c85 Rename ProfIdCallback into ProfIqCallback
Goal is to create other kind of callback no based on id cmp
2019-04-10 16:03:50 +02:00
Paul Fariello
fdc5f25f2d Add devicelist and bundle publication 2019-04-10 16:03:50 +02:00
Paul Fariello
bce1981128 Add devicelist subscription 2019-04-10 15:37:22 +02:00
Michael Vetter
4792984f1e XEP-0027: Mention XEP in message body
With all the different kinds of encryption (OMEMO, OTR3 OTR4, PGP in XEP-0027 and XEP-0373) it might be helpful to know which kind of encryption is used.
2019-02-20 10:48:28 +01:00
Michael Vetter
706af9a900 Update copyright to include 2019 2019-01-22 11:31:45 +01:00
Paul Fariello
ac2d1c07fa Fix optionnal sessionid in xep 0050 2019-01-21 15:02:54 +01:00
Dmitry Podgorny
7f65aaa9a2 Add option to trust server's certificate
New tls policy "trust" added to /connect and /account. With the policy
TLS connection is established even with invalid certificate. Note, that
trust policy forces TLS connection and it fails when server doesn't
support TLS.

Examples:
 /connect <jid> tls trust
 /account <name> set tls trust
2018-11-06 14:09:02 +02:00
Michael Vetter
47f90d7a39
Merge pull request #991 from paulfariello/feature/xep-0050
Add support for xep 0050 ad-hoc commands, without multi-step
2018-09-27 17:27:37 +02:00
Paul Fariello
2e0bc27bf0 Make _get_groups_from_item and roster _compare_* public
In order to avoid duplication with xep 0133 support in command execution
2018-09-26 14:34:52 +02:00
Paul Fariello
01428eb858 Add special handling for xep-0133 get-user-roster 2018-09-10 13:09:23 +02:00
Paul Fariello
6de60e7efc Add support for ad-hoc response with forms 2018-09-10 12:28:28 +02:00
Paul Fariello
b7556b4e41 Add missing command name for completion log 2018-09-10 11:30:46 +02:00
Michael Vetter
82f8083b85 Move p_sha1_hash() to stanza.c
Move `p_sha1_hash()` from `common.c` to	`xmpp/stanza.c` as it is only
used in this file and now depends on libstrophe so xmpp is a better
namespace folder.
Renaming it as `_stanza_create_sha1_hash()`. And making static since
only used here.

The function cannot be tested in the unit tests anymore.
Once functional tests are working again we should write a test for the
sha1 functionality.
2018-09-06 20:40:09 +02:00
Paul Fariello
ec5fc3612f Allow to use cmd without being in a window 2018-09-05 13:52:20 +02:00
Paul Fariello
233e076be9 Add support for command config execution 2018-09-05 13:52:19 +02:00
Paul Fariello
b11d3a79df Add conf win callback 2018-09-05 13:51:00 +02:00
Paul Fariello
a952776b89 Rename mucconf wins into conf wins
Configuration windows are now being used by both muc and cmd.
2018-09-05 13:51:00 +02:00
Paul Fariello
7123e94e82 Add support for form edition in command execution
Also change wins_get_by_string prototype in order to handle const str.
2018-09-05 13:51:00 +02:00
Paul Fariello
40eee1caab Add command exec error handling 2018-09-05 13:51:00 +02:00
Paul Fariello
925cd488c1 Handle simple execution
Tested with ping from biboumi
2018-09-05 13:50:59 +02:00
Paul Fariello
c9f6a78f57 Add command subcommands: list and exec
Also handle list result
2018-09-05 13:49:40 +02:00
Paul Fariello
ca022ec75e Add command command
Initial commit to test commands API
2018-09-05 13:42:28 +02:00
Michael Vetter
6d80700329 Move ID generation to xmpp folder
create_unique_id() was changed to use UUIDs instead of a counter in the
last commit. Since now it depends on connection_create_uuid() which is
in the xmpp subfolder the function should also be moved there.

Renamed it to connection_create_stanza_id() and moved it to
src/xmpp/connection.c.

Discussion happened in https://github.com/boothj5/profanity/pull/1010
2018-08-30 11:17:04 +02:00
Dominik Heidler
86a9ef7b5c Use correct macro
XMPP_FEATURE_PING insted of STANZA_NS_PING
2018-07-30 11:04:54 +02:00
James Booth
d65fc24658 Fix muc nick autocomplete colon mid message 2018-02-09 20:47:41 +00:00
James Booth
cba17faf3d Add /rooms service autocompletion 2018-02-05 21:40:32 +00:00
James Booth
e6d9a243cd Clear rooms cache on disconnect 2018-02-05 20:30:20 +00:00
James Booth
26a182945f Add /rooms cache 2018-02-05 20:01:54 +00:00
James Booth
8db2389df6 Filter rooms by simple case insensitive text 2018-02-04 21:59:33 +00:00
James Booth
a04b02c928 Include filter string in no rooms message 2018-01-28 00:13:36 +00:00
James Booth
e571ccd8ea Fix tests, move glob creation 2018-01-27 23:51:03 +00:00
James Booth
2e414797a4 Allow filtering rooms list by glob 2018-01-27 22:42:31 +00:00
James Booth
250e972b7a Update copyright 2018-01-21 15:00:02 +00:00
Dmitry Podgorny
1012e11283 Legacy SSL support
Add "legacy" tls policy to /account and /connect commands. When this
policy is specified the connection is connected with
XMPP_CONN_LEGACY_SSL flag. Notice, legacy SSL and STARTTLS are not
compatible and user has to know when exactly the new policy should be
used.

To enable it, run one of the next commands:
  /connect <jid> tls legacy [server <host>]
  /account <name> set tls legacy

Notice, there is no SRV record for legacy SSL. Therefore, you may need
"server" property to connect successfully. Refer to configuration
provided by your server.
2017-06-24 21:33:30 +03:00
James Booth
4a6bf68727 Merge remote-tracking branch 'asdil12/ping' 2017-06-17 21:49:19 +01:00
Dominik Heidler
29f84ea3d4 Disable autoping if server doesn't support it
fixes #859
2017-06-16 12:11:44 +02:00
James Booth
6511d61b13 Show message when server does not support ping 2017-06-15 23:27:30 +01:00
James Booth
6b830277a6 Allow previous autocompletion with shift tab 2017-04-01 00:27:11 +01:00
James Booth
68a3daedb9 Update Copyright 2017-01-28 17:24:22 +00:00
James Booth
b712820c99 Check barejid in carbons 2017-01-24 13:37:28 +00:00
James Booth
8e75437a7e Add carbons from check 2017-01-23 22:25:36 +00:00
James Booth
2b7894ccff Remove status from cl_ev_presence_send
fixes #888
2017-01-15 23:59:31 +00:00
James Booth
e043029a50 Allow clearing account resource
issue #880
2016-11-22 00:39:52 +00:00
James Booth
609d05366c Use server features for account muc service
issue #878
2016-11-20 02:09:34 +00:00
James Booth
5b464f4cb0 Add /tls certpath default
issue #871
2016-10-17 23:48:03 +01:00
James Booth
9796b23cfd Use caps_lookup when checking for feature 2016-09-25 22:57:43 +01:00
James Booth
4647fd8a4f Free stanzas on stanza_create_http_upload_request() 2016-09-05 23:27:56 +01:00
James Booth
77ef4de29e Free hashtable key list in connection_jid_for_feature() 2016-09-05 23:19:22 +01:00
James Booth
47a1a62009 Add sv_ev_bookmark_autojoin 2016-08-28 22:42:09 +01:00
James Booth
ea98a8b04a Rename Bookmark->jid to Bookmark->barejid 2016-08-28 22:12:50 +01:00
James Booth
6a18dedca8 Fixed typos 2016-08-28 17:30:15 +01:00
James Booth
fca59a3110 log_info on private carbons 2016-08-28 17:27:26 +01:00
James Booth
0886062806 Use hash table for bookmarks 2016-08-21 15:25:49 +01:00
James Booth
a52230978f Tidy presence.c 2016-08-20 23:31:27 +01:00
James Booth
948d63d855 Tidy _handle_carbons 2016-08-20 21:37:20 +01:00
James Booth
583fb2b8c6 Use libstrophe xmpp_presence_new convenience function 2016-08-20 20:37:48 +01:00
James Booth
27263508c7 Use libstrophe xmpp_iq_new convenience function 2016-08-20 20:20:38 +01:00
James Booth
d61abd3577 Use libstrophe xmpp_message_get_body convenience function 2016-08-20 19:23:32 +01:00
James Booth
39ff399626 Use libstrophe xmpp_message_new convenience function 2016-08-20 19:08:13 +01:00
James Booth
45048e3ac8 Replace stanza_create_message with libstrophe convenience functions 2016-08-20 18:51:19 +01:00
James Booth
24c3eff428 Use libstrophe convenience functions for stanza attributes 2016-08-20 18:16:51 +01:00
James Booth
a978bb12bf Send receipt request only when receiver supports feature
issue #829
2016-08-18 22:53:23 +01:00
James Booth
71dcb2e427 Only include lastactivity feature in disco responses when enabled 2016-08-18 00:29:33 +01:00
James Booth
4de570b1ee Only include receipts feature in disco responses when enabled
issue #829
2016-08-18 00:10:15 +01:00
James Booth
41acaee955 Use hashtable to store profanity disco features 2016-08-17 23:49:20 +01:00
James Booth
7b22c813c8 Copy feature strings on caps_get_features 2016-08-17 23:32:43 +01:00
James Booth
8b6549b36c Add caps_create 2016-08-14 01:06:13 +01:00
James Booth
b26c961730 Move caps_create -> stanza_create_caps_from_query_element 2016-08-14 00:15:03 +01:00
James Booth
d5f14abd4e Move caps_create_sha1_str -> stanza_create_caps_sha1_from_query 2016-08-14 00:07:08 +01:00
James Booth
9c4e02db77 Move caps static functions 2016-08-13 23:53:41 +01:00
James Booth
e776ef9b68 Rename caps_contains -> caps_cache_contains 2016-08-13 23:45:58 +01:00
James Booth
9cecef5609 Move caps_create_query_response_stanza -> stanza_create_caps_query_element 2016-08-13 23:43:54 +01:00
James Booth
9ce59b1589 Free DiscoIdentity and SoftwareVersion 2016-08-13 17:49:19 +01:00
James Booth
ed75f1ec71 Use SoftwareVersion in EntityCapabilities 2016-08-13 17:43:43 +01:00
James Booth
0bd5b5200a Use DiscoIdentity in EntityCapabilities 2016-08-13 17:19:24 +01:00
James Booth
80eb5bee90 Rename Capabilties -> EntityCapabilities 2016-08-13 16:39:25 +01:00
James Booth
e949114284 Reduce variable scope in caps_create_sha1_str 2016-08-13 16:21:25 +01:00
James Booth
5c6e75fa06 Merge branch 'master' into caps 2016-08-13 00:17:23 +01:00
James Booth
4f5281bff0 Refactor stanza.c 2016-08-13 00:12:46 +01:00
James Booth
6ec159737b Use list for profanity service discovery features 2016-08-12 22:25:35 +01:00
James Booth
a65403c54a Remove disco features added by plugins on unload 2016-08-11 23:20:59 +01:00
James Booth
3396e75d23 Handle NULL saved_status 2016-07-27 23:35:49 +01:00
James Booth
a1f48f8457 Copy curr_status and free original in session.c 2016-07-27 22:07:11 +01:00
James Booth
6777919d96 Rename rooms vars in _send_room_presence 2016-07-25 23:13:09 +01:00
James Booth
8633cd6e29 Free ProfAccount 2016-07-25 22:38:23 +01:00
James Booth
a3a73cf003 Move all filepath handling to files.c 2016-07-24 21:49:35 +01:00
James Booth
29452f8f1b Move xgd functions 2016-07-24 17:12:09 +01:00
James Booth
37742d71b6 Move resource conversions 2016-07-24 16:27:39 +01:00
James Booth
ef942bd27a Add config/files.c 2016-07-24 16:22:15 +01:00
James Booth
e7bfaa643f Move autoaway check 2016-07-24 16:06:24 +01:00
James Booth
0a57c4de78 Tidy headers 2016-07-24 15:43:51 +01:00
James Booth
5bc38b6bc2 Moved window_list.c 2016-07-24 15:14:46 +01:00
James Booth
90b9b48ab9 Moved roster_list.c 2016-07-24 15:08:47 +01:00
James Booth
cc32bb7738 Moved resource.c 2016-07-24 15:05:24 +01:00
James Booth
2af0d38e3d Moved muc.c 2016-07-24 15:02:43 +01:00
James Booth
1c5efaeb58 Moved jid.c 2016-07-24 14:59:28 +01:00
James Booth
c23506f453 Moved contact.c 2016-07-24 14:55:32 +01:00
James Booth
9cff37352a Make header defines consistent 2016-07-24 14:51:39 +01:00
James Booth
310abd401d Moved chat_state.c 2016-07-24 14:28:25 +01:00
James Booth
25a6252a28 Moved chat_session.c 2016-07-24 14:23:55 +01:00
James Booth
0649aad80d Move event timeout to connection module 2016-07-24 14:08:30 +01:00
James Booth
e8fc80f5c1 Update GPL link in headers 2016-07-24 01:14:49 +01:00
James Booth
feb50ea411 capabilities: use free instead of g_free 2016-07-18 22:32:58 +01:00
James Booth
3a3933eff6 Add ProfIdFreeCallback to free stale id handlers on connect 2016-06-08 23:25:51 +01:00
James Booth
086fd30e23 Check for NULL before clearing connection data 2016-06-01 22:41:17 +01:00
James Booth
6559263b2f Option to bookmark room invites
issue #813
2016-05-23 23:53:44 +01:00
James Booth
598b2b3235 Add missing string.h include in blocking.c 2016-05-11 22:32:22 +01:00
James Booth
b935b4621c Add connection_set_disconnected() 2016-05-11 00:02:39 +01:00
James Booth
7e079f3684 Add connection_clear_data() 2016-05-10 23:53:44 +01:00
James Booth
a7fa27df01 Remove connection_free_conn(), connection_free_ctx() 2016-05-10 23:34:25 +01:00
James Booth
a67d199581 Add connection_shutdown() 2016-05-10 23:27:16 +01:00
James Booth
3d20c85ada Remove JABBER_STARTED, JABBER_UNDEFINED connection states 2016-05-10 23:18:11 +01:00
James Booth
22c4d91c50 Remove _session_free_session_data from session.c 2016-05-10 22:49:58 +01:00
James Booth
02bc4f217c Tidy connection.c 2016-05-10 22:09:09 +01:00
James Booth
5cb6b174cc Tidy connection.c 2016-05-10 21:59:41 +01:00
James Booth
030ac9e4e1 Fixed compile 2016-05-08 23:48:29 +01:00
James Booth
cd5d242207 Tidy session.c 2016-05-08 21:47:52 +01:00
James Booth
ec51ae689c Free features on disconnect 2016-05-08 03:14:22 +01:00
James Booth
ac3ab39e23 Use hash table for disco features 2016-05-08 03:04:36 +01:00
James Booth
29380a39cd Remove connection_get_disco_infos() 2016-05-08 02:37:02 +01:00
James Booth
188df60cfe Rename diso_items->diso_infos 2016-05-08 02:30:34 +01:00
James Booth
31e6cc8e38 Add connection_get_disco_info() 2016-05-08 02:25:34 +01:00
James Booth
137202e5dd Add connection_item_for_feature() 2016-05-08 01:45:22 +01:00
James Booth
f28655c5c8 Move logic to connection_set_disco_items 2016-05-08 01:10:42 +01:00
James Booth
f1cf444e05 Move conneciton initialisation to _connection_handler 2016-05-08 00:21:06 +01:00
James Booth
2f61f8d646 Move xmpp_initialise() to conneciton.c 2016-05-07 23:29:19 +01:00
James Booth
6ce8edc194 Move disco info struct to connection 2016-05-07 23:28:16 +01:00
James Booth
9596591610 Move available resources to connection struct 2016-05-07 23:04:50 +01:00
James Booth
7f1beadea9 Rename xmpp types 2016-05-06 02:31:55 +01:00
James Booth
81e95966cf Remove redundant tls secured function 2016-05-06 02:18:31 +01:00
James Booth
c009144b3d Tidy connect function 2016-05-06 02:08:10 +01:00
James Booth
3cb60399a1 Move connection_connect 2016-05-06 02:02:23 +01:00
James Booth
579d062063 Move send stanza function 2016-05-06 01:51:58 +01:00
James Booth
b6c4a2029f Move conn is secure function 2016-05-06 01:49:27 +01:00
James Booth
8950dbb768 Move tls peer cert function 2016-05-06 01:47:19 +01:00
James Booth
31b0f0b0c8 Move uuid functions 2016-05-06 01:16:13 +01:00
James Booth
d1c71e98f4 Move connection fulljid function 2016-05-06 01:12:54 +01:00
James Booth
cc485ed338 Tidy session.c 2016-05-06 01:10:12 +01:00
James Booth
88f423afea Rename jabber_ functions 2016-05-06 00:53:03 +01:00
James Booth
3bb1f12410 Add session.c 2016-05-05 23:51:49 +01:00
James Booth
f6fa63b374 Renamed connection.c -> session.c 2016-05-05 22:10:10 +01:00
James Booth
ccabc08fef Tidy xmpp headers 2016-05-04 01:19:51 +01:00
James Booth
2e1eb9210a Remove userdata from _blocklist_result_handler 2016-05-02 22:49:30 +01:00
James Booth
aabe3afff8 Rename stanza handler init functions 2016-05-02 22:34:43 +01:00
James Booth
39fb05577a Rename id_handler_add -> iq_id_handler_add 2016-05-02 21:50:39 +01:00
James Booth
92780f3e6e Remove free DiscoInfo values 2016-05-02 00:59:37 +01:00
James Booth
31ab43ea2d Free stanza text and DiscoInfo features 2016-05-02 00:40:16 +01:00
James Booth
2bacd43a16 Free stanza text on plugin send hooks 2016-05-01 23:41:57 +01:00
James Booth
b8c94376aa Add /blocked command 2016-05-01 19:39:39 +01:00
James Booth
a2efda19cc Merge remote-tracking branch 'pasis/const-char' 2016-05-01 00:39:16 +01:00
James Booth
623fbe9e47 Plugins: Added prof_disco_add_feature() 2016-04-30 23:00:07 +01:00
Dmitry Podgorny
efbf233c85 Define stanza's attributes as const char*
In most get-like funcitons libstrophe returns pointer to a string
that resides in an internal structure (e.g. xmpp_stanza_t). Hence,
Profanity must not change such strings. Define respective variables
as 'const char*' to reduce a chance of error and conform future
libstrophe's interface.

This patch mostly replaces 'char *' with 'const char*', but also
fixes two memory leaks after stanza_get_reason(). Add comment within
stanza_get_reason() to fix conflict with different allocator types.
2016-04-27 10:31:28 +00:00
James Booth
4ca6296fb7 Fix OSX compile 2016-04-26 23:50:56 +02:00
Dominik Heidler
1b0ce852bb Implement XEP-0363: HTTP File Upload 2016-04-26 23:50:55 +02:00
Dominik Heidler
28e260c7da Cache all disco items and features on connect 2016-04-20 00:19:40 +02:00
Dominik Heidler
4b1481987d Fix typo: diso -> disco 2016-04-01 12:09:35 +02:00
James Booth
9b177a9e01 Removed #AX_PREFIX_CONFIG_H 2016-03-31 21:05:02 +01:00
James Booth
94b9b1d8e4 Merge branch 'master' into stanza-hooks 2016-03-29 21:44:18 +01:00
James Booth
7b138b71db PGP: Also encrypt using sender public key 2016-03-29 21:24:37 +01:00
James Booth
c6730783bf Removed duplicate typedef 2016-03-28 15:44:03 +01:00
James Booth
d39e48ba18 Use one stanza handler per type (message, iq, presence)
Allows plugins to stop stanza processing
2016-03-28 01:25:48 +01:00
James Booth
8933d59b03 Added basic stanza receive eooks 2016-03-27 21:36:29 +01:00
James Booth
7b34f72007 Use xmpp_send_raw_string instead of xmpp_send_raw 2016-03-26 16:44:02 +00:00
James Booth
d0397f3da5 Added stanza send hooks for plugins 2016-03-26 15:50:16 +00:00
James Booth
4c913aa08b Added prof_send_stanza to plugins API 2016-03-23 22:57:03 +00:00
James Booth
6f537c3818 Add PGP decryption for incoming/outgoing carbons 2016-03-22 00:20:29 +00:00
James Booth
51c6cefafd Call plugin disconnect hook before disconnecting on autoping fail
fixes #746
2016-02-25 00:10:22 +00:00
James Booth
1f90aca503 Merge branch 'master' into plugins-c
Conflicts:
	src/main.c
	src/ui/console.c
2016-02-14 23:00:52 +00:00
James Booth
e53e94f1e2 Updated copyright 2016-02-14 22:54:46 +00:00
James Booth
41fe8c22b1 Added C plugin code from plugins branch 2016-02-14 22:28:55 +00:00
James Booth
7938db0a25 Use offline presence for software version responses from non contacts
fixes #714
2016-01-13 22:25:29 +00:00
James Booth
3d9e860574 Set autoping timeout default to 10 seconds, added null checks 2016-01-02 16:45:20 +00:00
James Booth
f27cae68c5 Added autoping timeout preference 2016-01-01 19:50:13 +00:00
James Booth
94b0d2c6da Added hardcoded autoping timeout 2015-12-31 01:48:04 +00:00
James Booth
08d30a4a83 Abort autping when existing attempt already in progress 2015-12-31 00:33:05 +00:00
James Booth
2847e39659 Tidy ping handlers 2015-12-31 00:11:58 +00:00
James Booth
a0c9b0cb70 Renamed autoping handler 2015-12-30 23:50:39 +00:00
James Booth
482eea4fcf Moved sending of initial presence to sv_ev_roster_received 2015-12-14 23:57:06 +00:00
James Booth
b73ff08a72 Free pref strings 2015-11-21 21:19:28 +00:00
James Booth
1f723a60b3 Tidy connection.c 2015-11-11 01:25:10 +00:00
James Booth
0bb596e14a Added extra fields to TLSCertificate 2015-11-10 22:46:48 +00:00
James Booth
9302188a32 Show current TLS certificate 2015-11-10 01:20:40 +00:00
James Booth
bee27f4773 Added /tls cert to show current certificate fingerprint 2015-11-09 23:31:21 +00:00
James Booth
38255e9be4 Make all mucconfwin functions take ProfMucConfWin 2015-11-02 22:19:01 +00:00
James Booth
a3e9178ea2 Renamed mucconfwin functions 2015-11-02 22:05:17 +00:00
James Booth
7f5b563a81 Removed ui_handle_room_join_error 2015-11-02 21:11:47 +00:00
James Booth
1602011e01 mucwin_role_set_error takes ProfMucWin 2015-11-02 00:52:50 +00:00
James Booth
982bc8e066 mucwin_affiliation_set_error takes ProfMucWin 2015-11-02 00:51:12 +00:00
James Booth
7bedb6c294 mucwin_handle_role_list takes ProfMucWin 2015-11-02 00:47:43 +00:00
James Booth
1aa3c0ea4f mucwin_role_list_error takes ProfMucWin 2015-11-02 00:44:33 +00:00
James Booth
3341e8c202 mucwin_handle_affiliation_list takes ProfMucWin 2015-11-02 00:40:23 +00:00
James Booth
d81dbdb233 mucwin_affiliation_list_error takes ProfMucWin 2015-11-02 00:38:26 +00:00
James Booth
5c53c94253 mucwin_kick_error takes ProfMucWin 2015-11-02 00:33:31 +00:00
James Booth
d21faa4609 mucwin_room_disco_info takes ProfMucWin 2015-11-01 23:33:50 +00:00
James Booth
363fda82c1 mucwin_room_info_error takes ProfMucWin 2015-11-01 23:30:44 +00:00
James Booth
67f8faf645 Renamed ui_handle_room_role_set_error -> mucwin_role_set_error 2015-11-01 21:53:12 +00:00
James Booth
50765190f7 Renamed ui_handle_room_affiliation_set_error -> mucwin_affiliation_set_error 2015-11-01 21:52:27 +00:00
James Booth
556985ec39 Renamed ui_handle_room_role_list -> mucwin_handle_role_list 2015-11-01 21:50:32 +00:00
James Booth
2cc5f17871 Renamed ui_handle_room_role_list_error -> mucwin_role_list_error 2015-11-01 21:48:28 +00:00
James Booth
fa0ed64190 Renamed ui_handle_room_affiliation_list -> mucwin_handle_affiliation_list 2015-11-01 21:45:59 +00:00
James Booth
21d560f068 Renamed ui_handle_room_affiliation_list_error -> mucwin_affiliation_list_error 2015-11-01 21:37:09 +00:00
James Booth
a575ab174c Renamed ui_handle_room_kick_error -> mucwin_kick_error 2015-11-01 21:34:28 +00:00
James Booth
fdd00b33a4 Renamed ui_show_room_disco_info -> mucwin_room_disco_info 2015-11-01 21:19:08 +00:00
James Booth
bb14b19bb1 Renamed ui_handle_room_info_error -> mucwin_room_info_error 2015-11-01 21:18:13 +00:00
James Booth
d6e4b74802 Removed ui_input_nonblocking() 2015-11-01 18:56:34 +00:00
James Booth
c8a6bdb381 Applied coding style to src/xmpp/ 2015-10-26 00:14:23 +00:00
James Booth
6640a0891f Force tls on all connections, add tls policy account property 2015-10-18 03:06:23 +01:00
James Booth
9d2745e462 Removed --disable-tls command line option 2015-10-18 00:17:45 +01:00
James Booth
31ecd41c8f Renamed PREF_CERT_PATH -> PREF_TLS_CERTPATH 2015-10-18 00:03:15 +01:00
James Booth
904a5a81cf Add ability to script commands after connect 2015-10-15 01:19:24 +01:00
James Booth
1fd2a8a4e9 Send service-unavailable when lastactivity disabled 2015-10-14 21:45:19 +01:00
James Booth
5fb8acb17f Use lastactivity preference for presence updates 2015-10-14 21:30:48 +01:00
James Booth
aae526fbde Moved idle time check for last activity 2015-10-14 21:12:26 +01:00
James Booth
c9165ef9d2 Title bar TLS indicator
Issue #616
2015-10-14 00:29:22 +01:00
James Booth
6e28df66e8 Use libstrophe/libmesode uuid generator 2015-10-12 23:37:11 +01:00
James Booth
1afe492e30 Added jabber:iq:last to capabilities 2015-09-29 23:55:01 +01:00
James Booth
bfdda17b7f Fix last active query 2015-09-29 00:53:58 +01:00
James Booth
26d160cae8 WIP: Added last activity request and response 2015-09-29 00:01:38 +01:00
James Booth
9593e17c3c Include last activity in initial presence 2015-09-27 23:53:06 +01:00
James Booth
54e225aa53 Added auto xa option, tidied autoaway code 2015-09-27 23:08:30 +01:00
James Booth
fe22fea9a8 Fixed spelling mistake 2015-09-27 18:32:21 +01:00
James Booth
b484411ea8 Save last activity to account on disconnect 2015-09-25 00:26:58 +01:00
James Booth
3e38d64397 Added HAVE_LIBMESODE check before setting cert path 2015-09-24 01:13:45 +01:00
James Booth
a37d55e1a9 Added TLS trusted certificate path preference 2015-09-23 20:37:41 +01:00
James Booth
9a53854a1d Added conditionals for libmesode cert verification 2015-09-22 21:55:46 +01:00
James Booth
74151e6419 Added TLS cert fail callback 2015-09-22 20:55:41 +01:00
James Booth
2b88e2f1bf Check for libmesode, fall back to libstrophe 2015-09-21 21:40:04 +01:00
James Booth
03ee1d56e6 Added conference and receipts features to caps query response 2015-09-09 22:36:07 +01:00
James Booth
b266e4d035 Pass delay timestamp to all incoming chat events 2015-09-08 20:18:31 +01:00
James Booth
2af5c151a0 Tidied pgp memory allocations 2015-08-11 01:00:23 +01:00
James Booth
0410dd90f1 Free timestamp and id for receipts 2015-08-09 23:08:36 +01:00
James Booth
131f1788c2 Free software version result properties 2015-08-09 01:10:02 +01:00
James Booth
70c0eeed1e Free error message in carbons handlers 2015-08-09 00:43:00 +01:00
James Booth
783342a48c Free timestamps and carbons stanzas 2015-08-09 00:40:37 +01:00
James Booth
406b821b35 Show software version result in current window 2015-08-06 01:56:52 +01:00
James Booth
af38ddc9e7 Handle resource not found on sofware version request 2015-08-05 01:14:41 +01:00
James Booth
0b7c79ac13 Use original JID in software version request in MUC 2015-08-05 01:01:46 +01:00
James Booth
ac3e7dd9e8 Handle software version requests for gateways that return from domainpart 2015-08-05 00:48:50 +01:00
James Booth
2a92169351 Use id handler for software version requests, handle errors 2015-08-05 00:26:29 +01:00
James Booth
7151792b8c Handle private messages that include muc#user namespace 2015-08-02 01:12:54 +01:00
James Booth
f9a7e35001 Added id attributes to roster queries
fixes #596
2015-07-22 22:48:37 +01:00
Sam Whited
167ee28ec0 Add no-copy and no-store hints to OTR messages 2015-07-01 09:04:54 -05:00
James Booth
d5f79c7b35 Use reference counts for GDateTimes #516 2015-06-30 16:21:21 +01:00
James Booth
dd206ef637 WIP fix for #516, needs memory cleanup 2015-06-29 23:48:41 +01:00
James Booth
240f6a3f79 Fixed various jid and account mem leaks 2015-06-24 20:53:04 +01:00
James Booth
5669799690 Encryption modes for sv_ev_incoming_message 2015-06-21 20:08:46 +01:00
James Booth
9b991ae058 Extracted chat session code from message senders 2015-06-21 17:11:23 +01:00
James Booth
e45afd5c09 Added pgp checks for message sending 2015-06-21 01:48:25 +01:00
James Booth
9aff8abd2e Merge branch 'master' into openpgp
Conflicts:
	.travis.yml
2015-06-05 23:02:56 +01:00
James Booth
2c5b44421e Added initial stabber test 2015-05-17 22:05:43 +01:00
James Booth
7f861b7743 Removed libgpg include from presence.c 2015-05-10 23:54:48 +01:00
James Booth
acd2d2309f Moved pgp signature generation to cl_ev_presence_send 2015-05-08 00:07:21 +01:00
James Booth
0db7bcbdcd Merge branch 'master' into openpgp 2015-05-07 23:23:45 +01:00
James Booth
d853284f92 Added cl_ev_presence_send 2015-05-07 23:21:48 +01:00
James Booth
a2281dbccf Merge branch 'master' into openpgp 2015-05-07 23:16:22 +01:00
James Booth
56cbce2ff3 Renamed presence_update -> presence_send 2015-05-07 23:12:49 +01:00
James Booth
beeadd6ae3 Merge branch 'master' into openpgp 2015-05-07 22:51:42 +01:00
James Booth
f69ccbf0cc Tidied _roster_result_handler 2015-05-07 22:51:35 +01:00
James Booth
8ebc1d4ac1 Moved pgp signature verification to sv_ev_contact_online 2015-05-07 22:22:28 +01:00
James Booth
6840f3b599 Merge branch 'master' into openpgp 2015-05-06 22:04:47 +01:00
James Booth
5067e565e3 Set ui nonblocking on presence updates
Speeds up joining rooms, and connecting.
2015-05-06 22:02:50 +01:00
James Booth
3fd9692aec Merge branch 'master' into pgp 2015-05-04 23:40:58 +01:00
James Booth
c487fe5f77 Use null check convention in stanza.c 2015-05-04 23:23:55 +01:00