aboutsummaryrefslogtreecommitdiffstats
path: root/src/config.cpp
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-02 17:41:39 +0200
committerDanilo M. <danix@danix.xyz>2026-08-02 17:41:39 +0200
commit8ecd5a8e83380f543b856ff28226a8e15fd7dc96 (patch)
tree1201e7311e36ba80db2aafe0d182d9b260f3ad61 /src/config.cpp
parent485e06b796603ef760576748fbd96bc177d5fa49 (diff)
downloadqtmaildir-8ecd5a8e83380f543b856ff28226a8e15fd7dc96.tar.gz
qtmaildir-8ecd5a8e83380f543b856ff28226a8e15fd7dc96.zip
docs: scope the document-load exemption to an exact URL
The interceptor previously trusted the whole qtmaildir: scheme, so a hostile message body referencing qtmaildir://anything would have been allowed. That made the interceptor's correctness depend on the scheme handler in a different, later task. It now trusts only the exact base URL passed to setHtml() and fails closed when none is set. Records the resulting obligation on MessageView to call setDocumentUrl() with that same URL. Also corrects the attachment path guard to a separator-aware comparison and notes that it is unreachable defence-in-depth: safeFilename() runs first, so no caller-supplied name can reach it. A test driving saveTo() expecting refusal cannot pass; test safeFilename() instead. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'src/config.cpp')
0 files changed, 0 insertions, 0 deletions