about summary refs log tree commit diff stats
path: root/src/event/server_events.c
Commit message (Collapse)AuthorAgeFilesLines
* Profani-tty has rebornDaniel Santos2023-07-011-6/+6
|
* Merge branch 'master' into cleanup/gchar-charMichael Vetter2023-05-111-1/+1
|\
| * fix "window `NULL` issue" (hopefully)Steffen Jaeckel2023-05-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were multiple reports where after a reconnect the window of the MUC that was last opened, was empty. `muc_join()` creates an instance of a MUC, `presence_join_room()` works with this instance. Therefore the instance has to exist before working on it. I'm not sure if this really fixes the issue, but at least it didn't happen anymore after I applied this modification. I can't remember how I stumbled over this, either while looking at debug logs or while looking at Valgrind output while a reconnect happened, but something went wrong. Then I came to the conclusion that this may fix the issue and for now it did ... maybe it comes back, then my RCA was wrong. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | Cleanup: gchar as gchar instead of charJohn Hernandez2023-05-041-1/+1
|/ | | | | | | | Use gchar instead of char in most of the cases where gchar is intended. Reason: improve compatibility and stability. Issue #1819 Minor refactoring.
* Add logging consistencyJohn Hernandez2023-04-181-1/+2
| | | | | | | Since MUC private messages are not logged by design, part where this logging happening is removed to add consistency. Add explanation in comment.
* Fix empty window after reconnectMarcoPolo-PasTonMolo2023-04-021-1/+1
| | | | | | | | Sometimes after a reconnect the current window would get cleared. This was a deliberate change to fix the profanity window looking all garbled up after providing the passphrase for a gpg key using pinentry-curses. Fixes https://github.com/profanity-im/profanity/issues/1556
* Fix PGPJohn Hernandez2023-03-311-4/+3
| | | | Fix of PGP and potentially other encryption methods by calling correct function that would initiate them in case if someone writes.
* Update copyright yearMichael Vetter2023-01-101-1/+1
|
* Merge MAM improvements from #1724Michael Vetter2022-10-211-0/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think this PR already solves and improves the MAM situation a lot. What's @MarcoPolo-PasTonMolo still wanted to do in this branch is: * MAM for mucs * Check if url and quotes autocompletion works fine * Check if the api still works fine * Resolve conflicts Conflicts are solved with this commit. MAM for mucs can be another feature PR. The rest we can check while being on master. And more people can help testing.
| * Handle late deliveryMarcoPolo-PasTonMolo2022-08-201-1/+1
| |
| * Handle MAM when chatwin gets created from incoming messageMarcoPolo-PasTonMolo2022-07-101-0/+6
| |
* | Add vCard supportMarouane L2022-10-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Only nicknames, photos, birthdays, addresses, telephone numbers, emails, JIDs, titles, roles, notes, and URLs are supported Due to the synopsis array not having enough space, `/vcard photo open-self` and `/vcard photo save-self` are not documented properly in the synopsis section of the `/vcard` command, but they are documented in the arguments section Fixed memory leak in vcard autocomplete (thanks to debXwoody)
* | ox: handle empty message->plainMichael Vetter2022-07-041-0/+8
| | | | | | | | | | | | In case we dont have plain but have body, copy this (like in _sv_ev_incoming_pgp). In case we have neither, return.
* | Split log.c into log.c and chatlog.cMichael Vetter2022-06-281-0/+1
|/
* Update copyright yearMichael Vetter2022-05-091-1/+1
|
* Add support for offline MUC notificationsStefan Ott2022-04-231-0/+28
|
* add profanity-specific CAfileSteffen Jaeckel2022-03-221-0/+3
| | | | | | | | The profanity-internal mechanism to allow connecting to a server isn't easily portable to cURL. Therefor introduce a profanity-specific CAfile which is managed individually and will be configured in libcurl calls. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* a tad more `const`-correctnessSteffen Jaeckel2022-03-221-1/+1
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* Remove banned muc member from member listMichael Vetter2022-02-021-0/+4
| | | | | | | If I'm understing everything right the member should be removed here. muc_members_update() seems to have been writen for the same purpose. Fix https://github.com/profanity-im/profanity/issues/1594
* auto-formatSteffen Jaeckel2022-02-011-1/+1
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* Reduce copy-paste in sv_ev_roster_received()Dmitry Podgorny2021-07-171-11/+5
|
* Fix memory leak in accounts_get_login_status()Dmitry Podgorny2021-07-171-1/+2
|
* Restore last status string when connectingThorben Günther2021-07-011-3/+5
|
* event: make log_database_get_previous_chat saferMichael Vetter2021-03-251-2/+4
|
* OMEMO - Removed start session after roster receivedStefan2021-03-091-4/+0
| | | | | Reduce the request during startup of profanity Removed omemo_start_sessions from sv_ev_roster_received
* Prevent segfault in sv_ev_incoming_message()Michael Vetter2021-03-051-1/+3
| | | | | | | | | | | | | | | Regards https://github.com/profanity-im/profanity/issues/1488 Actually I would have loved to see the stanza that caused the segfault since I'm not entirely sure whether this actually means that we do something wrong earlier on. Right now I don't know why the to_jid should be empty. Let's prevent the segfault for now and see whether we get further bugreports later. Segfaulting issue got introduced with dd566d8d561099bbfc81b2fab22318bbad0cf3da.
* Update copyrightMichael Vetter2021-01-081-1/+1
|
* Log incoming carbons if they are no MUCPMMichael Vetter2020-12-091-4/+9
| | | | Regards https://github.com/profanity-im/profanity/pull/1446
* Fix chatlogs for outgoing carbonsMichael Vetter2020-12-081-10/+10
| | | | | | Doesn't make sense to log if plain is not set in all cases. Regards https://github.com/profanity-im/profanity/issues/1439
* Pass window to functions so we dont have to call twiceMichael Vetter2020-07-091-1/+1
|
* Apply coding styleMichael Vetter2020-07-071-179/+176
|
* Revert "Apply coding style"Michael Vetter2020-07-071-187/+190
| | | | | | This reverts commit 9b55f2dec0ea27a9ce4856e303425e12f866cea2. Sorting the includes creates some problems.
* Apply coding styleMichael Vetter2020-07-071-190/+187
| | | | Regards https://github.com/profanity-im/profanity/issues/1396
* Plain chat messages not workingDebXWoody2020-07-061-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Plain chat messages not working for non-carbon + no OTR support. On master we did some clean-up. The problem is at https://github.com/profanity-im/profanity/blob/0.9.patch/src/event/server_events.c#L625 (0.9.0). The implementation looks like: - HAVE_LIBOTR is set - _sv_ev_incoming_otr - HAVE_LIBOTR is not set - _sv_ev_incoming_plain I think the `_sv_ev_incoming_otr` can handle otr and plain, because I didn't find a `_sv_ev_incoming_plain` if `HAVE_LIBOTR` is set. On master for 0.10.0 the implementation is much better: https://github.com/profanity-im/profanity/blob/master/src/event/server_events.c#L623 But, we just call `_sv_ev_incoming_otr` independent of `HAVE_LIBOTR`. Unfortunately, `_sv_ev_incoming_otr` is doing nothing if `HAVE_LIBOTR` is not set: https://github.com/profanity-im/profanity/blob/master/src/event/server_events.c#L538 I did some more clean-up at sv_ev_incoming_message and changed the implementation of `_sv_ev_incoming_otr`. ``` static void _sv_ev_incoming_otr(ProfChatWin *chatwin, gboolean new_win, ProfMessage *message) { // OTR or plain plain } ``` The caller do not take care of `HAVE_LIBOTR`, call `_sv_ev_incoming_plain` if you are sure it's a plain message or call `_sv_ev_incoming_otr`. `_sv_ev_incoming_otr` can be used for otr / plain or for plain only.
* Remove prefs_free_string()Michael Vetter2020-07-021-5/+5
| | | | | It just does a free. Related to b580b9ef119045f142fa4baa9689a1c5ce8864ef
* And ifdefs around new OX functionsMichael Vetter2020-06-301-1/+1
| | | | | Fix for some build cases introduced in 2c94ee5a88f64332a3f41f41a4d314fc52200e31 Fix https://github.com/profanity-im/profanity/issues/1376
* Feature request - XEP-0373: OpenPGP for XMPP (OX)DebXWoody2020-06-291-2/+22
| | | | | | | | | Basic implementation of XEP-0373: OpenPGP for XMPP. https://xmpp.org/extensions/xep-0373.html Command /ox Issue: #1331
* Clean-up task: clean up feature definesDebXWoody2020-06-141-201/+8
|
* Fix offline roster contactsMichael Vetter2020-06-021-1/+2
| | | | | | | | | | | | | | | | | Fix https://github.com/profanity-im/profanity/issues/1280 p_contact_set_presence() is triggered in (roster_process_pending_presence) to set the presence to online after the roster is displayed. This happened to me _every time_ with one certain account on my server. But not even once with other accounts on my server. I don't understand why that is the case, but AFAIK the code should be like it is in this PR anyways. roster_process_pending_presence() was added there in 973a05d15a9843f2e8f6dff598f2161367885994 to fix https://github.com/profanity-im/profanity/issues/1050
* Merge pull request #1344 from DebXWoody/bugfix/1327Michael Vetter2020-05-281-2/+1
|\ | | | | Bugfix: Status with PGP shows offline in titlebar
| * Bugfix: Status with PGP shows offline in titlebarDebXWoody2020-05-231-2/+1
| | | | | | | | | | | | | | | | There is code to redraw the ui, because the user may enter a passphase for the private key. There was also a ui_init, which shouldn't be called, because it will set the status to the initial state, which is 'offline' and 'no tls'. Issue: #1327
* | Fix carbon loggingMichael Vetter2020-05-271-6/+4
| | | | | | | | Regards https://github.com/profanity-im/profanity/issues/1342
* | Add and use connection_get_barejid()Michael Vetter2020-05-251-3/+3
| | | | | | | | Instead of connection_get_fulljid() and then creating a Jid from it.
* | Add bookmark ignore functionality for multiple accountsMichael Vetter2020-05-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | ``` cat ~/.local/share/profanity/bookmark_ignore [jubalh@iodoru.org] profanity@rooms.dismail.de=true [testuser@domain.org] testr@rooms.domain.org=true ``` Regards https://github.com/profanity-im/profanity/issues/1115
* | PoC for bookmark ignoreMichael Vetter2020-05-241-0/+6
|/ | | | | | | | | | ``` ~/.local/share/profanity % cat bookmark_ignore [ignore] profanity@rooms.dismail.de= ``` Regards https://github.com/profanity-im/profanity/issues/1115
* Log all carbon copied messagesMichael Vetter2020-05-221-0/+1
| | | | | | | So far we only had the logging in sv_ev_incoming_carbon() not sv_ev_outgoing_carbon(). Regards https://github.com/profanity-im/profanity/issues/1342
* Add option to add bookmark nameMichael Vetter2020-05-221-1/+1
| | | | | | | | `/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
* MAM: Correctly display incoming MAM chat messageMichael Vetter2020-04-111-5/+19
|
* Add to_jid field to ProfMessage structMichael Vetter2020-04-111-33/+35
| | | | | Is usefult in many cases if we want cleaner code. Hope this edit didn't break anything though ;-)
* Log after displaying the messageMichael Vetter2020-04-081-6/+6
| | | | | | | | Otherwise we print the freshly received message to the window twice. Once when receiving (and immediately printing), then logging it, and then again when we print the last 10 log entries. Fix https://github.com/profanity-im/profanity/issues/1305