Open suuuehgi opened 6 years ago
I suspect that this is a large message, that isn't fully downloaded. You have to fully download the message (i.e., select the "Download complete message" button at the bottom) before you'll see the complete headers.
Indeed! Now the full header appears -- but also the embedded content! This is a real no-go! When I just want to get the header, I don't want it do execute possibly malicious stuff.
We don't "execute content" under any circumstances. We don't download remote content unless you ask us to.
So for me it's kind of low priority to implement this kind of feature, but it could be done potentially. (I'm not sure how exactly IMAP works in practice here).
We'd want a new FetchProfile - FULL_HEADER
.
Thank you for your reply! Maybe I was unclear. Afaik k9 doesn't execute content in terms of binaries but k9 does open and therefore executes (or reads) embedded html content (like malicious images). I never ever want my phone to do so and afaik there is no other way to get to the plaintext header.
K-9 does not execute HTML content.
It passes the raw string data to Android WebView. WebView renders the HTML but does not fetch remote content, unless told to (it's network connection is disabled). We don't tell it to fetch remote content (by enabling it's network connection) until you click that button, regardless of whether we have the full message or not.
We also remove all scripts using a HTML cleaner tool.
Thank you for your answer! But anyway, the HTML-content (in this case images) is being displayed in it's full glory as soon as I click on "Download complete message".
So, in this case, to read the full header, I have to click "Download complete message" and WebView then renders everything, right? Hum. :-(
Would be also great to be able to show (partial) content of some headers always (if header is available). Like the score or the tests of header "X-Spam-Status".
This is a five years old problem that is still awaiting for a solution.
When K9 "fetches" messages up to a user-specified amount of bytes, it counts the header size as part of the total. If a messages is bigger than the specified amount, then K9 shows the "download complete message" button to download both the rest of the message and the rest of the header.
The approach is not efficient: to see the full header, K9 downloads the whole message, possibly including heavy attachments or inline graphics.
It has been proposed, several times, that when the user hits the "show headers" button, K9 should display the full header as per user request, and thus K9 should download it in full before displaying it. This is more efficient, in terms of bandwidth, than downloading the whole message, and less inconvenient, in terms of coding, than having to enhance K9's GUI to warn the user that the headers are incomplete and that yet another button needs to be pressed to download the rest of it.
Expectead behavior
Print complete header when pressing
Show headers
. I don't care about highlighting, plaintext is okay but print the complete header.Actual behavior
k9 is not showing the full header. It appears as if just some special/known(?) parts of the header are chosen.
Example
This is a classical spam-header -- hence I leave the senders information.
k9
Actually / Expected
Environment
K-9 Mail version: 5.208
Android version: 7.1.2
Account type (IMAP, POP3, WebDAV/Exchange): IMAP