1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-11-03 19:37:16 -05:00
Commit Graph

86 Commits

Author SHA1 Message Date
Michael Vetter
25dbebab17 log: don't log dt
Use another name.
2020-04-20 15:48:01 +02:00
Michael Vetter
5a42883c27 log: Dont shadow logp
Let's use another name.
2020-04-20 15:46:27 +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
3524a53c7c Add type field to ProfMessage
The mucuser boolean is not now needed anymore.
2020-04-06 19:15:02 +02:00
Michael Vetter
0942d98c61 Remove chat_log_get_previous()
We now dont get the log files from the text files via chat_log_get_previous() anymore.
We use the sql backend via log_database_get_previous_chat().

So far it just has the same behaviour like chat_log_get_previous(),
except that in _chatwin_history() we don't pass the sender to
win_print_history() which should be fixed in a commit soon.

And log_database_get_previous_chat() can later easily be expanded to fix
https://github.com/profanity-im/profanity/issues/205.
2020-04-06 14:42:52 +02:00
Michael Vetter
a4b53550ca Rename PROF_MSG_ENC_PLAIN to PROF_MSG_ENC_NONE 2020-04-06 10:50:20 +02:00
Michael Vetter
c08d0e9ce8 Fix errors in log.c 2020-02-22 09:27:04 +01:00
Michael Vetter
55f49f1259 get_log_file_location () should return const char*
Make clear that result should never be freed.
2020-02-21 21:19:54 +01:00
Michael Vetter
75cfe38808 Allow setting custom log file via -f FILENAME
`profanity -f TEST` will use `~/.local/share/profanity/logs/TEST.log` as
the log file.
2020-02-21 21:10:00 +01:00
Michael Vetter
46fd7150e5 Add vim modeline 2019-11-13 12:11:05 +01:00
Michael Vetter
8c8c18c6fd Actually log MUC PM messages
If I'm not mistaken MUC PMs have not been logged at all if there was no
other client sending carbons.
This should add MUC PM logging functionality.

We still need to make sure carbons log to the same file.

Regards https://github.com/profanity-im/profanity/issues/1214
2019-10-28 23:36:42 +01:00
Michael Vetter
40d9dcae87 Properly display chatwin history
So far if one had enabled `/history` and did `/msg somenick` the history
was loaded from file and displayed like this:

```
04-04-17 15:23 - 3/4/2017:
01-01-00 10:30 - me: ....
01-01-00 10:31 - somebody: ....
01-01-00 10:32 - somebody: ....
```

So the first line contained the actual date. But the date used in each
line was always 01-01-2000. This date was for some reason hardcoded.

This commit now actually uses that date to build the proper GDateTime
instead of just printing it.

Fix https://github.com/profanity-im/profanity/issues/922
2019-10-21 15:26:40 +02:00
Michael Vetter
b3ed213668 Improve MUC 1:1 logging
If we get a private message from a user in a MUC profanity shows this
like:
`profanity@roomsASDF.dismail.de/Martin: Hi`

This was so far logged at:
`~/.local/share/profanity/chatlogs/my-account-at-server/profanity_at_rooms.dismail.de/2019_09_04.log` as:

```
10:48:13 - profanity@rooms.dismail.de: Hi
```

So the nickname was not saved anywhere. This is due to us not knowing
whether we got a regular message from user@server.org/resource or a MUC
PM from room@server.org/user.

We now check for `<x xmlns='http://jabber.org/protocol/muc#user' />` and
add the resourcepart to the logging if we get it.

The file will be created at
`~/.local/share/profanity/chatlogs/my-account-at-server/profanity_at_rooms.dismail.de_nick` and look like:

```
23:59:43 - nick: Hi
```

Fix https://github.com/profanity-im/profanity/issues/1184
2019-10-07 00:05:37 +02:00
Dmitry Podgorny
3ecb5424ae log: set nonblocking mode for stderr
Glib can print error messages to stderr and blocking write freezes
Profanity if the buffer is full. Move stderr to nonblocking mode
in hope that glib will skip printing on EWOULDBLOCK error. In this
case we lose some error messages, but Profanity continues working.
2019-09-13 11:48:31 +00:00
Paul Fariello
f831f65737 Rename prof_message_t into ProfMessage 2019-06-20 14:30:45 +02:00
Paul Fariello
44d16e9141 Add prof_message_t to wrap all message attributes
Probably missing copy of body to plain in carbon and privmessage.
Only covers the incoming message path because goal is OMEMO decryption
of untrusted message.
Cover some of the log functions but not all.
2019-06-20 14:30:42 +02:00
Michael Vetter
40b72ffe55 Add myself to copyright
Like discussed with James.
2019-06-17 10:44:08 +02:00
Michael Vetter
bb4dd47a01 Iterate logfiles until 100 are reached
Fix https://github.com/profanity-im/profanity/issues/519
2019-06-07 23:48:44 +02:00
Paul Fariello
4e1ffa6bdb Log and print outgoing encrypted message 2019-04-10 17:12:31 +02:00
Paul Fariello
0fb27dc496 Add OMEMO message encryption and decryption 2019-04-10 16:03:50 +02:00
Michael Vetter
706af9a900 Update copyright to include 2019 2019-01-22 11:31:45 +01:00
Michael Vetter
64d5f938fd Fix gcc8 error about strncpy
With gcc8 we get the following error when stringop-truncation is on:

```
In function ‘_rotate_log_file’,
    inlined from ‘log_msg.part.2’ at src/log.c:201:17:
src/log.c:231:5: error: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation]
     strncpy(log_file_new, log_file, len);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/log.c: In function ‘log_msg.part.2’:
src/log.c:228:18: note: length computed here
     size_t len = strlen(log_file);
                  ^~~~~~~~~~~~~~~~
```

Using memcpy instead of strncpy.
2018-07-06 11:31:20 +02:00
James Booth
250e972b7a Update copyright 2018-01-21 15:00:02 +00:00
James Booth
b0a989a17f Recreate chat log when removed
fixes #210
2017-06-13 23:22:58 +01:00
James Booth
68a3daedb9 Update Copyright 2017-01-28 17:24:22 +00:00
James Booth
ae003e62fb Remove copied char* in groupchat_log_chat 2016-07-26 00:40:29 +01:00
James Booth
d5d04756ce Fix memory leaks 2016-07-25 22:23:54 +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
0a57c4de78 Tidy headers 2016-07-24 15:43:51 +01:00
James Booth
e8fc80f5c1 Update GPL link in headers 2016-07-24 01:14:49 +01:00
James Booth
d1c71e98f4 Move connection fulljid function 2016-05-06 01:12:54 +01:00
James Booth
88f423afea Rename jabber_ functions 2016-05-06 00:53:03 +01:00
James Booth
e53e94f1e2 Updated copyright 2016-02-14 22:54:46 +00:00
James Booth
dd11334b06 Applied coding style to src/ 2015-10-26 00:52:33 +00:00
James Booth
b266e4d035 Pass delay timestamp to all incoming chat events 2015-09-08 20:18:31 +01:00
James Booth
dea10ecfdc Dereference timestamp on chat logging 2015-08-09 01:24:15 +01:00
James Booth
dd206ef637 WIP fix for #516, needs memory cleanup 2015-06-29 23:48:41 +01:00
Dmitry Podgorny
e831410669 log: Introduced stderr log handler
This handler redirects stderr output to a pipe and gathers logs from the
read end.

The handler is called from main loop, therefore, if a function prints logs
to stderr they will be put to log file only after function returns.
2015-06-23 20:52:04 +00:00
James Booth
3d2f999efb Added PGP logging preferences 2015-06-21 21:42:58 +01:00
James Booth
41724218c0 Use null check convention in log.c 2015-05-04 23:28:34 +01:00
James Booth
8944a3b5bb Move common chat logging code to log.c 2015-03-15 23:19:00 +00:00
James Booth
b3be26a214 Updated copyright 2015-02-10 23:16:09 +00:00
James Booth
22b92c7514 Used g_hash_table_destroy to free logs 2015-02-10 19:53:34 +00:00
James Booth
bb3f1b0909 Set file permissions for logs 2014-10-18 21:41:39 +01:00
James Booth
f9737251a6 Added license exemption for OpenSSL to source headers 2014-08-24 20:57:39 +01:00
James Booth
186cac34de Fixed memleak in chat log history 2014-06-27 00:38:53 +01:00
James Booth
d6e92f62dc Fixed cppcheck warnings 2014-04-26 00:36:36 +01:00