+exim4 (4.92-8+deb10u6~hcoop1) unstable; urgency=medium
+
+ * HCoop build
+
+ -- Clinton Ebadi <clinton@unknownlamer.org> Sat, 07 Aug 2021 14:56:12 -0400
+
exim4 (4.92-8+deb10u6) buster-security; urgency=high
* Fix several security vulnerabilities reported by Qualys and add related
-- Andreas Metzler <ametzler@debian.org> Tue, 18 Nov 2014 19:28:20 +0100
+exim4 (4.84-8+hcoop4) unstable; urgency=medium
+
+ * Missed another chown that needs skipping
+
+ -- Clinton Ebadi <clinton@unknownlamer.org> Thu, 14 May 2015 01:35:09 -0400
+
+exim4 (4.84-8+hcoop3) unstable; urgency=medium
+
+ * Patch the right thing.
+
+ -- Clinton Ebadi <clinton@unknownlamer.org> Thu, 14 May 2015 00:34:14 -0400
+
+exim4 (4.84-8+hcoop2) unstable; urgency=medium
+
+ * Change message in chown failure for sanity check
+
+ -- Clinton Ebadi <clinton@unknownlamer.org> Wed, 13 May 2015 23:47:18 -0400
+
+exim4 (4.84-8+hcoop1) unstable; urgency=medium
+
+ * Relax chown requirement for delivery into afs
+
+ -- Clinton Ebadi <clinton@unknownlamer.org> Wed, 13 May 2015 23:26:54 -0400
+
exim4 (4.84-8) unstable; urgency=medium
* Pull 83_Remove-limit-on-remove_headers-item-size.-Bug-1533.patch and
--- /dev/null
+--- a/src/transports/appendfile.c
++++ b/src/transports/appendfile.c
+@@ -2613,13 +2613,24 @@
+ /* Why are these here? Put in because they are present in the non-maildir
+ directory case above. */
+
+- if(Uchown(filename, uid, gid) || Uchmod(filename, mode))
+- {
+- addr->basic_errno = errno;
+- addr->message = string_sprintf("while setting perms on maildir %s",
+- filename);
+- return FALSE;
+- }
++ /* Ignore failed chown if check_owner is disabled. */
++ if(Uchown(filename, uid, gid) && ob->check_owner)
++ {
++ addr->basic_errno = errno;
++ addr->message = string_sprintf("while setting owner on maildir %s",
++ filename);
++ addr->transport_return = FAIL;
++ goto RETURN;
++ }
++
++ if(Uchmod(filename, mode))
++ {
++ addr->basic_errno = errno;
++ addr->message = string_sprintf("while setting chmod on maildir %s",
++ filename);
++ addr->transport_return = FAIL;
++ goto RETURN;
++ }
+ }
+
+ #endif /* SUPPORT_MAILDIR */
+@@ -2772,12 +2783,21 @@
+ /* In all cases of writing to a new file, ensure that the file which is
+ going to be renamed has the correct ownership and mode. */
+
+- if(Uchown(filename, uid, gid) || Uchmod(filename, mode))
++ /* Ignore failed chown if check_owner is disabled. */
++ if(Uchown(filename, uid, gid) && ob->check_owner)
+ {
+- addr->basic_errno = errno;
+- addr->message = string_sprintf("while setting perms on file %s",
+- filename);
+- return FALSE;
++ addr->basic_errno = errno;
++ addr->message = string_sprintf("while setting owner on file before write %s",
++ filename);
++ return FALSE;
++ }
++
++ if(Uchmod(filename, mode))
++ {
++ addr->basic_errno = errno;
++ addr->message = string_sprintf("while setting chmod on file before write %s",
++ filename);
++ return FALSE;
+ }
+ }
+