Michael Vetter
83ed9ba24b
message.c: Put plugin handler code in helper function
2020-07-02 17:53:28 +02:00
Michael Vetter
6be5b51a46
message.c: Log invalid message type
...
So far we logged when we receive a message without a type. Which is
actually quite common and makes no sense.
2020-07-02 17:47:07 +02:00
Michael Vetter
46a00317ee
message.c: Check for message type
...
RFC 6121 allows only few types.
So we can also remove that check in _handle_chat().
2020-07-02 17:40:58 +02:00
Michael Vetter
19d9e80a79
message.c: Remove handled cases form _handle_chat()
...
Both cases are tested before entering that function.
2020-07-02 17:32:14 +02:00
Michael Vetter
d9cfa2e48a
message.c: Break out of _message_handler() after handling code
...
AFAIK it can only be one.
Except at STANZA_NS_MUC_USER which is used in several cases.
2020-07-02 17:31:56 +02:00
Michael Vetter
ad3dd72325
Add HEADLINE stanza define
2020-07-02 17:17:28 +02:00
Michael Vetter
b14b711492
message.c: Parse incoming message stanzas according to type
2020-07-02 17:15:42 +02:00
Michael Vetter
728cb55b68
message.c: Add pubsub helper function
2020-07-02 16:48:57 +02:00
Michael Vetter
f2b415079a
message.c: Add XEP information
2020-07-02 16:37:20 +02:00
Michael Vetter
1f50647865
message.c: Add my copyright
2020-07-02 15:22:58 +02:00
Michael Vetter
3350139ed0
message.c: Make several functions static
2020-07-02 15:21:54 +02:00
Michael Vetter
10190b5fb0
message.c: Adjust function formatting
2020-07-02 15:20:17 +02:00
Michael Vetter
e5ac12afa6
Remove prefs_free_string()
...
It just does a free.
Related to b580b9ef11
2020-07-02 11:34:12 +02:00
Michael Vetter
8de6a7bfb0
And ifdefs around new OX functions
...
Fix for some build cases introduced in 2c94ee5a88
Fix https://github.com/profanity-im/profanity/issues/1376
2020-06-30 11:10:27 +02:00
DebXWoody
2c94ee5a88
Feature request - XEP-0373: OpenPGP for XMPP (OX)
...
Basic implementation of XEP-0373: OpenPGP for XMPP.
https://xmpp.org/extensions/xep-0373.html
Command /ox
Issue: #1331
2020-06-29 19:05:41 +02:00
Dmitry Podgorny
409bbd6f2d
Fix possible segfault in xmpp/message.c
...
Check for pointer to be NULL before dereferencing it.
2020-06-16 17:52:01 +03:00
Michael Vetter
914c6752dd
Fix reading/writing linked files
...
"base" was not really base but the filename :-)
Fix https://github.com/profanity-im/profanity/issues/1362
2020-06-13 15:02:43 +02:00
Dmitry Podgorny
424918c5ed
Make legacy auth optional
...
Some systems don't provide recent libstrophe releases. When older
version of libstrophe is detected, don't build legacy auth support.
To simplify this patch, report about unsupported legacy auth and
keep commands option as is.
2020-06-11 02:51:07 +03:00
Dmitry Podgorny
ac410445af
Add option for legacy authentication
...
New options:
/connect <account> [auth default|legacy]
/account <account> set auth default|legacy
Fixes #1236 .
2020-06-05 11:37:51 +03:00
Pierre Mazière
d92c576aa5
Get output and error streams from the command spawned by external_call()
...
Signed-off-by: Pierre Mazière <pierre.maziere@gmx.com>
2020-06-03 13:09:29 +02:00
Michael Vetter
e19bf0e303
Merge branch 'bugfix/1329'
2020-05-29 10:29:20 +02:00
Michael Vetter
24e8243a98
_omemo_receive_devicelist() use if/else
2020-05-29 10:28:41 +02:00
Michael Vetter
8d9cbef1e3
Merge pull request #1343 from DebXWoody/bugfix/1333
...
Incoming iq stanza - Reset the autoping timer
2020-05-29 10:21:51 +02:00
Michael Vetter
d4692b1b2d
Fix carbon logging
...
Regards https://github.com/profanity-im/profanity/issues/1342
2020-05-27 22:06:04 +02:00
Michael Vetter
de8975c008
Add and use connection_get_barejid()
...
Instead of connection_get_fulljid() and then creating a Jid from it.
2020-05-25 13:04:19 +02:00
Michael Vetter
a2af4c3184
Fix memleak in bookmark minimize
...
Introduced in 36f2569e53
2020-05-24 13:35:09 +02:00
DebXWoody
b882fd495a
OMEMO - Request only "current" item
...
NOTE: as per XEP-0060 §12.20, it is RECOMMENDED for the publisher to specify an
ItemID of "current" to ensure that the publication of a new item will overwrite
the existing item.
https://xmpp.org/extensions/xep-0384.html#devices
Issue: 1329
2020-05-23 07:41:06 +02:00
DebXWoody
3cd3bced70
Incoming iq stanza - Reset the autoping timer
...
A autoping is to make sure that there is still a connection between server and
client. If the application receives incoming stanza, the connection is fine.
There is no need to wait for response, if there are other incomings.
Issue: #1333 and #1315
2020-05-23 06:52:03 +02:00
Michael Vetter
c8be052ec8
Fix segfault in new bookmark feature
...
Fix 88c36745fe
Copy paste mistake.
2020-05-22 16:20:02 +02:00
Michael Vetter
36f2569e53
Preserve Gajims minimize flag in bookmarks
...
Implement https://github.com/profanity-im/profanity/issues/1326
2020-05-22 16:18:28 +02:00
Michael Vetter
88c36745fe
Add option to add bookmark name
...
`/bookmark add|update` got `name` field.
By default localpart of JID is used (like before) but now we can set the
name ourselves.
Regards https://github.com/profanity-im/profanity/issues/697
2020-05-22 14:18:20 +02:00
Michael Vetter
fad296b79e
Display bookmark name
...
Have field in struct and display the name in `/bookmark list`.
Regards https://github.com/profanity-im/profanity/issues/697
2020-05-22 13:56:00 +02:00
Michael Vetter
e41ae21bea
Fix typing notification
...
With d1d0ad8d1a
we set a timestamp to now
for all messages upon receival. Even if the original message didn't
contain any timestamp. So we can use the timestamp of retrieval for
logging and displaying and don't get them at each of those location
where they might differ.
This means that timestamp will never be NULL.
I don't see why we would want to check for the chat state only if
timestamp isn't there.
Probably because in XEP-0085 there is not timestamp defined.
So if it thats stanza it's not there and we can parse quicker, but there
is nothing forbidden it to be there.
Related to https://github.com/profanity-im/profanity/issues/1339
2020-05-21 12:24:03 +02:00
Michael Vetter
fc5fa62951
Create call_external() helper function
2020-05-20 10:54:58 +02:00
Michael Vetter
9c853d9f46
xep-0092: make it possible to ask servers or components for software
...
This adds the new `/serversoftware` command.
```
/software user@domain.org/resource
/serversoftware domain.org
```
Fix https://github.com/profanity-im/profanity/issues/1338
2020-05-14 19:13:27 +02:00
Michael Vetter
5ec1b03cbc
_handle_carbons(): fix potential memleak
2020-04-21 17:11:04 +02:00
Michael Vetter
b9c384d6ca
_iq_id_handler_free() dont set NULL
...
No effect here.
2020-04-20 16:17:09 +02:00
Michael Vetter
9e460973fa
Fix potential memleak in stanza_create_caps_from_query_element()
...
Each of those should only occur one time. But let's make sure we only
write/alloc one time to be on the safe side.
2020-04-20 15:31:48 +02:00
DebXWoody
6268f5f0d7
OMEMO Device List only for non anonymous MUCs
...
Profanity request the OMEMO Device List for all members, also if the MUC is
anonymouse. If the user is Admin / Owner, the device list will be requtest.
Issue #1315
2020-04-17 19:53:34 +02:00
Michael Vetter
9be7d29f1b
Don't expose upload_processes
...
That's actually not good practise.
Realized this when checking for multiple symbol definition in issue
mentioned below.
Regards https://github.com/profanity-im/profanity/issues/1314
2020-04-17 10:05:09 +02:00
Michael Vetter
616250b2b4
Review logging in iq.c
2020-04-14 18:53:08 +02:00
Michael Vetter
48290d3d61
Review logging for blocking.c
2020-04-14 18:32:43 +02:00
Michael Vetter
b73606cc60
Review logging in presence.c
...
Some stuff just floods the log file. We only need this when debugging.
Others are useless without more info.
2020-04-14 18:29:15 +02:00
Michael Vetter
18c64c0580
Free timestamp correctly
...
g_date_time_add_days() actually creates a new one.
2020-04-13 10:04:37 +02:00
Michael Vetter
98200ebd43
Check if server suppors MAM
2020-04-12 00:24:00 +02:00
Michael Vetter
aedecee962
Get MAM since yesterday
...
Later we will have several options.
Getting everything since last timestamp (if none everything at all).
Getting everything since today + configure time (1 week).
Should also have a reload all command like conversations once you
cleared the history.
All MAM messages should be written into sql db.
And then probably displayed from there so that regular history works
too.
2020-04-12 00:06:36 +02:00
Michael Vetter
dd566d8d56
MAM: Correctly display incoming MAM chat message
2020-04-11 23:56:01 +02:00
Michael Vetter
180ec2b474
Add to_jid field to ProfMessage struct
...
Is usefult in many cases if we want cleaner code.
Hope this edit didn't break anything though ;-)
2020-04-11 17:11:53 +02:00
Michael Vetter
38273fef5c
First test with receiving MAM
2020-04-11 16:05:14 +02:00
Michael Vetter
f3b8cc407d
_handle_chat: return if no 'from'
...
Let's not crash :-)
2020-04-11 16:05:14 +02:00