about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
...
| * Fix segfault in group add/remove commandMichael Vetter2019-07-221-4/+0
| | | | | | | | | | Also regarding destructor. Fix https://github.com/profanity-im/profanity/issues/1159
* | Add 1154 to CHANGELOGMichael Vetter2019-07-221-1/+2
| |
* | Fix memleak in roster_change_name()Michael Vetter2019-07-221-2/+2
| |
* | Fix 3 leaks in cmd_funcsMichael Vetter2019-07-221-0/+4
| |
* | Fix several memleaks im cmd_ac.cMichael Vetter2019-07-221-0/+6
| | | | | | | | Exiting without freeing in some cases.
* | Fix memleak in roster_removeMichael Vetter2019-07-221-1/+1
| | | | | | | | strdup() is not needed here but will actually lead to a memleak.
* | Fix memory leak in roster_update()Michael Vetter2019-07-221-1/+2
| | | | | | | | current_name should not be const and should be freed.
* | Remove dead assignmentsMichael Vetter2019-07-222-2/+2
| |
* | Remove unused assignmentsMichael Vetter2019-07-222-2/+1
| |
* | Fix double initialization of loop iteratorMichael Vetter2019-07-222-3/+0
| |
* | Guard against arg being NULL in cmd_funcsMichael Vetter2019-07-221-0/+20
| | | | | | | | | | | | | | | | This should actually never happen because we have the mechanism that checks the commands. But let's do it in case we break something in that mechanism and to make clang happy. Fixes clangs: 'Argument with 'nonnull' attribute passed null'
* | Reduce scope of num in ui_print_system_msg_from_recipient()Michael Vetter2019-07-221-3/+1
| |
* | Merge pull request #1154 from optmzr/issue-1099Michael Vetter2019-07-203-47/+84
|\ \ | |/ |/| Always check for directory changes with sendfile auto completion
| * Always check for directory changes with sendfile auto completionWilliam Wennerström2019-07-203-47/+84
| | | | | | | | | | | | | | | | | | | | Instead of only checking for files when 'last_directory' has changed, do it every time. Add autocomplete_update function that updates the items while retaining last_found and search_str. Fixes #1099
* | Merge pull request #1157 from profanity-im/fix/1156-segfault-block-commandMichael Vetter2019-07-191-6/+0
|\ \ | | | | | | Fix segfault in block command
| * | Fix segfault in block commandMichael Vetter2019-07-191-6/+0
|/ / | | | | | | | | | | Another case of double free() due to new destructor. Fixes https://github.com/profanity-im/profanity/issues/1156
* | Add cmocka to brewfileMichael Vetter2019-07-181-0/+1
| |
* | Add omemo_close stub for testsMichael Vetter2019-07-181-0/+1
| |
* | Run tests in travis againMichael Vetter2019-07-181-0/+1
| | | | | | | | | | | | | | Before 3700c80ad1258885256fa963dd8a13ab84853170 we used to run the tests only one time. 3700c80ad1258885256fa963dd8a13ab84853170 removed it by accident alltogether. Now we run it with every flag combination. Might take too long.
* | Merge pull request #1155 from paulfariello/hotfix/omemo-memleaksMichael Vetter2019-07-171-0/+7
|\ \ | | | | | | Add missing stub file
| * | Add missing stub filePaul Fariello2019-07-171-0/+7
| | |
* | | Fixup for last commitMichael Vetter2019-07-121-1/+0
| | |
* | | Fix segfault in iq_{submit,cancel}_command_configMichael Vetter2019-07-121-6/+0
| | | | | | | | | | | | Taken care of by the destructor.
* | | Fix segfault in /cmd execMichael Vetter2019-07-121-0/+5
| | | | | | | | | | | | Test for correct number of arguments before using argument.
* | | Merge pull request #1150 from paulfariello/hotfix/omemo-memleaksMichael Vetter2019-07-116-5/+46
|\| | | | | | | | | | | | | | Hotfix/omemo memleaks Regards https://github.com/profanity-im/profanity/issues/1131
| * | Dirty fix libgcrypt memleakPaul Fariello2019-07-112-0/+15
| | |
| * | Enable secure memory in gcrypt initialisationPaul Fariello2019-07-111-0/+6
| | |
| * | Fix various OMEMO memleaksPaul Fariello2019-07-104-5/+25
| | |
* | | Fix some more potential double freesMichael Vetter2019-07-111-34/+0
|/ / | | | | | | Regards https://github.com/profanity-im/profanity/issues/1148
* | Fix jump depending on uninit. value in statusbarMichael Vetter2019-07-101-1/+1
| |
* | Reduce codelines in form.cMichael Vetter2019-07-101-16/+2
| | | | | | | | | | Let's use calloc instead of malloc and then setting almost all fields to NULL.
* | Fix double free in roster_process_pending_presenceMichael Vetter2019-07-101-1/+0
| | | | | | | | This is taken care of now in the destructor _pendingPresence_free().
* | Add destructor for roster_pending_presenceMichael Vetter2019-07-091-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix: ``` ==18682== 408 bytes in 17 blocks are definitely lost in loss record 3,279 of 3,632 ==18682== at 0x483677F: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==18682== by 0x42F602: roster_update_presence (roster_list.c:129) ==18682== by 0x448AA3: sv_ev_contact_online (server_events.c:906) ==18682== by 0x43D2BA: _available_handler (presence.c:674) ==18682== by 0x43C81B: _presence_handler (presence.c:398) ==18682== by 0x5AF118E: handler_fire_stanza (handler.c:124) ==18682== by 0x5AEDBDA: _handle_stream_stanza (conn.c:1253) ==18682== by 0x5AFA43E: _end_element (parser_expat.c:190) ==18682== by 0x6818AA4: doContent (xmlparse.c:2977) ==18682== by 0x681A3AB: contentProcessor (xmlparse.c:2552) ==18682== by 0x681D7EB: XML_ParseBuffer (xmlparse.c:1988) ==18682== by 0x681D7EB: XML_ParseBuffer (xmlparse.c:1957) ==18682== by 0x5AF0A63: xmpp_run_once (event.c:255) ==18682== by 0x432E5D: connection_check_events (connection.c:104) ==18682== by 0x4323B3: session_process_events (session.c:255) ==18682== by 0x42C097: prof_run (profanity.c:128) ==18682== by 0x4B25B9: main (main.c:172) ```
* | Merge pull request #1149 from profanity-im/fix/1148-segfaultMichael Vetter2019-07-092-20/+6
|\ \ | |/ |/| Fix double free regarding iq handlers
| * Fix double free in room id handlerMichael Vetter2019-07-091-6/+1
| | | | | | | | | | Free is done in destructor now. Regards https://github.com/profanity-im/profanity/issues/1148
| * Fix double free in omemo_start_device_session_handle_bundle()Michael Vetter2019-07-081-0/+1
| | | | | | | | | | | | | | | | | | omemo_key_free() was called to free the key. It free the key->data too. But in same cases this was not set yet. So we need to set the data to NULL (or use calloc) at initialization so that omemo_key_free() only frees it if it was actually allocated. Regards https://github.com/profanity-im/profanity/issues/1148
| * Fix double free regarding iq handlersMichael Vetter2019-07-081-14/+4
|/
* Merge pull request #1146 from profanity-im/fix/omemoleaks-autocomplMichael Vetter2019-07-045-27/+72
|\ | | | | Fix several OMEMO related leaks
| * Free iq_id_handlers correctlyMichael Vetter2019-07-041-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so far only the key part was freed. We also need to free the actual handler. Fix: ``` ==21171== 1,128 bytes in 47 blocks are definitely lost in loss record 3,476 of 3,670 ==21171== at 0x483677F: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==21171== by 0x434248: iq_id_handler_add (iq.c:265) ==21171== by 0x4B122E: omemo_devicelist_request (omemo.c:46) ==21171== by 0x4AC411: omemo_start_session (omemo.c:409) ==21171== by 0x4AC37C: omemo_start_sessions (omemo.c:396) ==21171== by 0x447881: sv_ev_roster_received (server_events.c:189) ==21171== by 0x444019: roster_result_handler (roster.c:312) ==21171== by 0x433FC2: _iq_handler (iq.c:202) ==21171== by 0x5AF118E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==21171== by 0x5AEDBDA: ??? (in /usr/lib64/libmesode.so.0.0.0) ==21171== by 0x5AFA43E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==21171== by 0x6818AA4: ??? (in /usr/lib64/libexpat.so.1.6.8) ==21171== by 0x681A3AB: ??? (in /usr/lib64/libexpat.so.1.6.8) ==21171== by 0x681D7EB: XML_ParseBuffer (in /usr/lib64/libexpat.so.1.6.8) ==21171== by 0x5AF0A63: xmpp_run_once (in /usr/lib64/libmesode.so.0.0.0) ==21171== by 0x432E5D: connection_check_events (connection.c:104) ==21171== by 0x4323B3: session_process_events (session.c:255) ==21171== by 0x42C097: prof_run (profanity.c:128) ==21171== by 0x4B2627: main (main.c:172) ```
| * Free key on error in omemo_start_device_session_handle_bundle()Michael Vetter2019-07-041-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix: ``` ==20561== 32 bytes in 1 blocks are definitely lost in loss record 1,467 of 3,678 ==20561== at 0x483677F: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==20561== by 0x4B16C9: omemo_start_device_session_handle_bundle (omemo.c:167) ==20561== by 0x43405E: _iq_handler (iq.c:214) ==20561== by 0x5AF118E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==20561== by 0x5AEDBDA: ??? (in /usr/lib64/libmesode.so.0.0.0) ==20561== by 0x5AFA43E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==20561== by 0x6818AA4: ??? (in /usr/lib64/libexpat.so.1.6.8) ==20561== by 0x681A3AB: ??? (in /usr/lib64/libexpat.so.1.6.8) ==20561== by 0x681D7EB: XML_ParseBuffer (in /usr/lib64/libexpat.so.1.6.8) ==20561== by 0x5AF0A63: xmpp_run_once (in /usr/lib64/libmesode.so.0.0.0) ==20561== by 0x432E5D: connection_check_events (connection.c:104) ==20561== by 0x4323B3: session_process_events (session.c:255) ==20561== by 0x42C097: prof_run (profanity.c:128) ==20561== by 0x4B260D: main (main.c:172) ```
| * Rework omemo_start_device_session_handle_bundle exitMichael Vetter2019-07-041-24/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some conditions we just returned without freeing allocated variables. Should fix following valgrind reported leak: ``` ==17941== 19 bytes in 1 blocks are definitely lost in loss record 613 of 3,674 ==17941== at 0x483677F: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==17941== by 0x5BB0DAA: strdup (strdup.c:42) ==17941== by 0x4B1592: omemo_start_device_session_handle_bundle (omemo.c:126) ==17941== by 0x43405E: _iq_handler (iq.c:214) ==17941== by 0x5AF118E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==17941== by 0x5AEDBDA: ??? (in /usr/lib64/libmesode.so.0.0.0) ==17941== by 0x5AFA43E: ??? (in /usr/lib64/libmesode.so.0.0.0) ==17941== by 0x6818AA4: ??? (in /usr/lib64/libexpat.so.1.6.8) ==17941== by 0x681A3AB: ??? (in /usr/lib64/libexpat.so.1.6.8) ==17941== by 0x681D7EB: XML_ParseBuffer (in /usr/lib64/libexpat.so.1.6.8) ==17941== by 0x5AF0A63: xmpp_run_once (in /usr/lib64/libmesode.so.0.0.0) ==17941== by 0x432E5D: connection_check_events (connection.c:104) ==17941== by 0x4323B3: session_process_events (session.c:255) ==17941== by 0x42C097: prof_run (profanity.c:128) ==17941== by 0x4B2610: main (main.c:172) ```
| * Free omemo_ctx.device_list_handlerMichael Vetter2019-07-041-0/+1
| |
| * Dont initialize omemo autocompleter twiceMichael Vetter2019-07-041-2/+0
| | | | | | | | | | We already do this in omemo_init() no need to do it again in omemo_on_connect().
| * Add omemo_close functionMichael Vetter2019-07-043-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We call omemo_init() when starting profanity and should have an omemo_close() at exit. For now we free the fingerprint autocompleter in there. Fixes valgrind: ``` ==13226== 24 bytes in 1 blocks are definitely lost in loss record 2,855 of 6,958 ==13226== at 0x483677F: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==13226== by 0x48AD39: autocomplete_new (autocomplete.c:57) ==13226== by 0x4AB89F: omemo_init (omemo.c:127) ==13226== by 0x42C283: _init (profanity.c:206) ==13226== by 0x42BFF3: prof_run (profanity.c:98) ==13226== by 0x4B25E6: main (main.c:172) ``` Regards https://github.com/profanity-im/profanity/issues/1131
* | Merge pull request #1147 from paulfariello/hotfix/fix-private-message-handlingMichael Vetter2019-07-041-3/+3
|\ \ | |/ |/| | | Fix plaintext private message handling Regards #1144
| * Fix plaintext private message handlingPaul Fariello2019-07-041-3/+3
|/
* Expand suppressiosn fileMichael Vetter2019-07-041-0/+1161
| | | | Using glib and python suppressions to filter out more false positives.
* Use correct jid variableMichael Vetter2019-07-031-1/+1
|
* Define goto out in _private_chat_handler()Michael Vetter2019-07-031-0/+1
|
* Set plain message in _private_chat_handlerMichael Vetter2019-07-031-0/+7
| | | | | | In case that plain is NULL we need to copy over from body. Fix https://github.com/profanity-im/profanity/issues/1144