Commit Graph

1020 Commits

Author SHA1 Message Date
Michael Vetter
e09f3fb615 avatar: make _avatar_request_item_result_handler safer 2021-03-25 16:35:43 +01:00
Michael Vetter
44343a5c37 avatar: make _avatar_metadata_handler safer 2021-03-25 16:34:20 +01:00
Michael Vetter
b584a1ecd0 ox: make _ox_public_key_result safer 2021-03-25 16:30:19 +01:00
Michael Vetter
10df93ee3e ox: guard printing of fingerprint 2021-03-25 16:25:18 +01:00
Michael Vetter
fb81b80499 ox: improve error log in _ox_metadata_result 2021-03-25 16:24:07 +01:00
Michael Vetter
31a78e2629 ox: add logging prefix 2021-03-25 16:22:47 +01:00
Michael Vetter
f81ed759f5 stanza: guard mallocs
If this happens we have more serious problems :-)
But anyways..
2021-03-25 16:14:40 +01:00
Michael Vetter
d23c3dd065 stanza: simplify stanza_get_muc_destroy_alternative_room 2021-03-25 15:59:48 +01:00
Michael Vetter
caa2c7afd0 stanza: replae strcmp with g_strcmp0
since its NULL safe
2021-03-25 15:55:18 +01:00
Michael Vetter
1f96e14ce7 message: simplify _handle_headline 2021-03-25 15:43:57 +01:00
Michael Vetter
b2a02424ed message: make _receipt_request_handler safer 2021-03-25 15:38:48 +01:00
Michael Vetter
099260a4e3 message: make _handle_receipt_received safer 2021-03-25 15:37:54 +01:00
Michael Vetter
2236242407 message: make _handle_groupchat safer 2021-03-25 15:36:17 +01:00
Michael Vetter
ca9c946ddc message: simplify _handle_conference 2021-03-25 15:33:30 +01:00
Michael Vetter
2601fc5571 message: make _handle_form safer 2021-03-25 15:27:59 +01:00
Michael Vetter
b1bd1ecca8 message: make _message_handler safer 2021-03-25 15:26:16 +01:00
Michael Vetter
11382a8bf3 mesage: make _handle_ox_chat safer
And on the way fix a memleak
2021-03-25 15:20:53 +01:00
Michael Vetter
8a6d256fc1 message: make _handle_chat safer 2021-03-25 15:07:09 +01:00
Michael Vetter
ee87e5b036 message: make _handle_muc_private_message safer 2021-03-25 15:03:35 +01:00
Michael Vetter
d2dc440535 message: fix potential segfault in _receipt_request_handler 2021-03-25 11:56:38 +01:00
Michael Vetter
e396e863dd message: safeguard _handle_receipt_received
This shouldnt be necessary since we check for the receipt outside
alreayd. Let's be on the safe side though in case code gets changed
later.
2021-03-25 11:54:59 +01:00
Michael Vetter
9cfe5ec787 message: reorder _handle_groupchat 2021-03-25 11:51:42 +01:00
Michael Vetter
96b228728e message: fix possible segfault in _handle_conference 2021-03-25 11:43:42 +01:00
Michael Vetter
f21a99eaf8 message: fix possible segfault in _handle_muc_user 2021-03-25 11:38:22 +01:00
Michael Vetter
e656bdb83c message: fix possible segfault in _message_handler 2021-03-25 11:34:14 +01:00
Michael Vetter
fde0a0d1c6 Add support to register with a room
`/affiliation register` can now be used to register a nickname with a
MUC.

Tested with a server without forms. Couldn't find a server which
supports forms yet.

Implements https://github.com/profanity-im/profanity/issues/1210
2021-03-25 11:05:58 +01:00
Michael Vetter
ebb1be9e58 form.c: fix memleak in form_tag_exists 2021-03-17 16:18:56 +01:00
Michael Vetter
5cec47c86a Add support to approve MUC voice requests
A form will open. One can then use `/field4 on` `/form submit`.

Implements https://github.com/profanity-im/profanity/issues/1507
2021-03-17 16:16:59 +01:00
Thorben Günther
ec6f9df486 MUC: Add voice request
closes https://github.com/profanity-im/profanity/issues/1211
2021-03-12 14:57:00 +01:00
Michael Vetter
a7ecda7773 Merge pull request #1501 from xenrox/change-password
Add command to change password of logged in user
2021-03-11 18:18:03 +01:00
Thorben Günther
b0aea2bcff Add command to change password of logged in user 2021-03-11 17:42:53 +01:00
Maximilian Wuttke
e217ed0b79 Update to the newest version of XEP 0363 (HTTP Upload)
Main changes:

1. Attributes instead of tags
2. Read the optional <header> tags and send them in the HTTP PUT header:

   * Authorization
   * Cookie
   * Expires

Co-authored-by: Martin Dosch <martin@mdosch.de>
2021-03-11 17:11:22 +01:00
Maximilian Wuttke
2b1ada7722 [OMEMO]: Fix bundle publishing
Use the following options in `omemo_bundle_publish()`:

- "pubsub#persist_items" = "true"
- "pubsub#access_model" = "open"

The same options are also used in Gajim.

I've tested this on two different servers. The bundle was successfully
added as a new PEP node. Test cases:

1. Normal use on my main account
2. Log in into a fresh tesst account on a different server
3. `/omemo clear_device_list`. In this case, the client(s) may have to
   be restarted.

Note: In `_omemo_bundle_publish_result`, there's a route that is taken
when the bundle publish stanza failed. In this case, the node is
configured manually, i.e. the access_model is set to 'open'. I have
manually tested this case, but this case didn't naturally occur for me.

Note: The option "pubsub#max_items=max" is REQUIRED for the bundle
publication, as per XEP-0384. However, this is not done in other clients
(I've checked the source code of Gajim and Conversations), and it is
also not supported by Prosody. Cf. <https://github.com/xsf/xeps/pull/988>.
2021-03-09 17:48:29 +01:00
Maximilian Wuttke
68469149cd Logging [OMEMO]
Also "handle" some errors in `_omemo_bundle_publish_configure` if the
stanzas can't be found
2021-03-09 17:47:43 +01:00
Maximilian Wuttke
4124856100 Variadic version of stanza_attach_publish_options 2021-03-09 17:47:37 +01:00
Maximilian Wuttke
8481698705 Logging [OMEMO] 2021-03-09 17:47:27 +01:00
Stefan
637c2c2d62 Logging [CONNECTION] 2021-03-09 17:47:22 +01:00
Michael Vetter
69e923df3b Remove forgotten debug line 2021-02-15 09:58:37 +01:00
Michael Vetter
1435c7ae14 Use correct time for MAM messages
We need the delay value from the <forward> element.

Regards https://github.com/profanity-im/profanity/issues/660
2021-02-04 21:13:31 +01:00
Michael Vetter
c2ec3e7033 Enable error logging on MAM RSM 2021-01-28 14:44:53 +01:00
Michael Vetter
840238b126 Get MAM from last 7 days
Probably should make this configurable later.
2021-01-28 14:44:53 +01:00
Michael Vetter
d3303517f7 MAM: Request more pages via RSM
Send another request with same jid and last id we got.
2021-01-28 14:44:53 +01:00
Michael Vetter
6e1e01dbb8 Adapt MAM RSM code to latest functions
Some functions changed in the meantime.
stanza_get_child_by_name_and_ns() got dropped and
xmpp_stanza_get_child_by_name_and_ns() from newer libstrophe is used.
2021-01-28 14:44:53 +01:00
Michael Vetter
db65255a5a wip: add rsm after we get the first couple of mam messages 2021-01-28 14:44:53 +01:00
Michael Vetter
69e35e86b2 mam: Use correct ID in rsm handler
Thanks to DebXWoody for the help.
2021-01-28 14:44:53 +01:00
Michael Vetter
d06ca64098 mam: fix logging message 2021-01-28 14:44:53 +01:00
Michael Vetter
014e03c72e Start working on MAM RSM to get more pages
Regards https://github.com/profanity-im/profanity/issues/660
2021-01-28 14:44:35 +01:00
Michael Vetter
8c08e64f37 Update copyright 2021-01-08 16:36:30 +01:00
Michael Vetter
881b99c062 Remove not needed include 2020-12-16 14:46:01 +01:00
Michael Vetter
a94378f206 Fix various typos 2020-12-10 09:24:32 +01:00