diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2020-11-15 11:26:58 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2020-11-15 11:26:58 +0200 |
commit | 4b1f10d710b1586da5324a67d42cb19452e5ead8 (patch) | |
tree | 5139ad44a8616256c80eeacec394a47ef2611f75 /libmailutils | |
parent | 8a566e1efceb79a25deab29a4e63fb10487cb931 (diff) | |
download | mailutils-4b1f10d710b1586da5324a67d42cb19452e5ead8.tar.gz mailutils-4b1f10d710b1586da5324a67d42cb19452e5ead8.tar.bz2 |
Implement the MU_ATTRIBUTE_FORWARDED attribute flag.
* include/mailutils/attribute.h (MU_ATTRIBUTE_FORWARDED): New constant.
(mu_attribute_is_forwarded, mu_attribute_set_forwarded)
(mu_attribute_unset_forwarded): New prototypes.
(MU_STATUS_BUF_SIZE): Update definition.
* libmailutils/mailbox/attribute.c (mu_attribute_is_forwarded)
(mu_attribute_set_forwarded)
(mu_attribute_unset_forwarded): New functions.
* libproto/maildir/mbox.c (info_map): Implement the 'P' flag.
Diffstat (limited to 'libmailutils')
-rw-r--r-- | libmailutils/mailbox/attribute.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/libmailutils/mailbox/attribute.c b/libmailutils/mailbox/attribute.c index 28ad368d7..475a71024 100644 --- a/libmailutils/mailbox/attribute.c +++ b/libmailutils/mailbox/attribute.c @@ -240,6 +240,12 @@ mu_attribute_set_recent (mu_attribute_t attr) } int +mu_attribute_set_forwarded (mu_attribute_t attr) +{ + return mu_attribute_set_flags (attr, MU_ATTRIBUTE_FORWARDED); +} + +int mu_attribute_is_userflag (mu_attribute_t attr, int flag) { if (attr == NULL) @@ -311,6 +317,15 @@ mu_attribute_is_recent (mu_attribute_t attr) } int +mu_attribute_is_forwarded (mu_attribute_t attr) +{ + int flags = 0; + if (mu_attribute_get_flags (attr, &flags) == 0) + return flags & MU_ATTRIBUTE_FORWARDED; + return 0; +} + +int mu_attribute_unset_userflag (mu_attribute_t attr, int flag) { if (attr == NULL) @@ -362,6 +377,12 @@ mu_attribute_unset_recent (mu_attribute_t attr) } int +mu_attribute_unset_forwarded (mu_attribute_t attr) +{ + return mu_attribute_unset_flags (attr, MU_ATTRIBUTE_FORWARDED); +} + +int mu_attribute_is_equal (mu_attribute_t attr, mu_attribute_t attr2) { int flags2 = 0, flags = 0; @@ -401,6 +422,7 @@ static struct flagtrans flagtrans[] = { { MU_ATTRIBUTE_DRAFT, 'd' }, { MU_ATTRIBUTE_SEEN, 'O' }, { MU_ATTRIBUTE_READ, 'R' }, + { MU_ATTRIBUTE_FORWARDED, 'P' }, { 0 } }; |