balsa MDN reply patches (long, sorry...)
- From: Albrecht Dreß <albrecht dress arcormail de>
- To: balsa-Liste <balsa-list gnome org>
- Subject: balsa MDN reply patches (long, sorry...)
- Date: Fri, 16 Mar 2001 15:29:32 +0100
Hi all,
during the last days I had time to almost finish my patches to enable
the Message Disposition Notification (MDN) reply feature in balsa I
announced ~3 months ago. There are still a few smaller problems
remaining (see below), but I attach a first version of the patches
(against 1.1.2) and a description of what I did to this mail. As it
changes the configure script (see below), be sure to run
aclocal -I macros/ && autoheader && automake && autoconf before make.
*** Please send me your comments! ***
Thanks for your help,
Yours,
Albrecht.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
How MDN Requests are handled
----------------------------
I tried to follow rfc-2298 as much as possible. When a message is
displayed for the first time (unread flag set), I check if there is a
disposition-notification-to header line. In this case I check if the
header looks "clean" (the user is in the To or Cc list, and the
disposition-notification-to address is equal to the return-path, the
sender or the from address. Otherwise the header is considered to be
suspicious. The user can define the MDN reply action for these two
cases separately as "Never" (the request is ignored), "Ask me" (a
dialog is popped up to ask the user if the reply shall be sent or
not), and "Always" (the reply is sent without confirmation). The
defaults are "Ask me" for clean and "Never" for suspicious
requests. The reply message consists of two parts, an informational
text, and a message/disposition-notification part according to part 3
of rfc-2298.
This whole stuff can be disabled using a configure option, e.g. if
replying to MDN requests breaks the security policy of your site.
Changes for the MDN reply stuff
-------------------------------
* added a new config option `--enable-mdn-reply' which def's or
undef's BALSA_MDN_REPLY. Most other changes are protected by
#ifdef/#endif, so the normal code should still work. This makes it
possible to disable all changes, e.g. if they violate the security
policy.
Files affected: acconfig.h, configure.in
* changed libmutt/parse.c to enable detection of the
disposition-notification-to header line (not protected by
BALSA_MDN_REPLY)
* changed libbalsa/mailbox.c to copy a disposition-notification-to
header line into the message structure (not protected by
BALSA_MDN_REPLY)
* changed libbalsa/body.[hc] to enable setting a mime type of a
buffer's body explicitly (protected)
* changed libbalsa/send.c to set a mutt_body's mime type to different
values than text/plain (protected)
* changed src/balsa-app.h to add a new "tristate" data type and two
fields in the balsa_app structure to define the reaction when a MDN
request is received (protected)
* changed src/pref-manager.c to add widgets for changing these two
values (protected)
* changed src/save-restore.c to save and restore these two values
(protected)
* added a lot of changes to src/balsa-message.c which handle incoming
MDN requests, create a reply and send it (protected)
Remaining Problems/Questions
----------------------------
* If I understand rfc-2298 correctly, the reply's Content-Type should
be multipart/report, but balsa (or libmutt?) always generates
multipart/mixed. No idea how I could fix this without too many
changes, and I also have no idea how I could add the option
"report-type=disposition-notification" to this line. I guess it will
not break the functionality, though.
* I would like to set the charset in the reply correctly, but
different from the normal send operation I have no idea what the
user selected the last time (and this might be incorrect). As a
simple solution I could use gnome_i18n_get_language() to find the
correct charset in the locales array of src/sendmsg-window.c (and
use find_locale_index_by_locale), but then there would be bigger
changes. Currently I use ISO-8859-1, but do you have an idea to
improve this?
* Translations of the new messages/texts. I could produce them for
german, shall I send them to the list?
___oooOOOooo___
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Albrecht Dreß - Monschauer Straße 22 - D-53121 Bonn (Germany)
Phone (+49) 228 6199571 - E-Mail albrecht.dress@arcormail.de
_________________________________________________________________________
balsa-1.1.2-MDN-diff.gz
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]