Coder Social home page Coder Social logo

Comments (11)

kaiyou avatar kaiyou commented on April 28, 2024

After some investigation, it appears that the message is empty when leaving dovecot. There is no body send to postfix for the vacation message. Will investigate furter.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

I finally traced back the issue to the dict access to SQLite, the root cause sounds close. It could be related (even remotely) to this:

v2.2.17 2015-05-13  Timo Sirainen <[email protected]>

    * dict server wasn't properly escaping/unescaping data. Fixing this
      broke backwards compatibility with data that contains line feeds.
      This hopefully affects only very few installations. If you're using
      dict to save multiline data (Sieve scripts to SQL), you may be
      affected.

It seems indeed that special characters will confuse the proxy protocol handler, notably new-line. Suggested solutions so far:

  1. encode the string inside SQLite and decode it in Sieve (ugly) (Sieve does not seem to have complex enough string manipulation capabilities to decode the string)
  2. disable the proxy and reference the dict directly

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

I was not yet able to disable the proxy and access the dict directly from the Dovecot process running sieve scripts. Sounds like the fix is going to be even trickier than expected.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

After some more digging, it seems that despite my previous message and some warnings on the Dovecot IRC channel, the dictionary protocol is escaping data using t_str_tabescape and t_str_tabunescape.

Using strace and a debugger, I was able to confirm that the string container tabs and new lines is properly escaped by the server when sent over the proxy socket, then properly unescaped, the bug seems to be located somewhere in Dovecot. I will try and find the root cause then solve it upstream with the Dovecot team.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

Here is the current status of the work upstream : http://www.dovecot.org/list/dovecot/2016-October/105700.html

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

This was fixed in dovecot/core@4f051c3

The patch will be included in Dovecot 2.2.26. I am working on a new Alpine package for Dovecot and will try to backport the patch to 2.2.25.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

The patch was not included in 2.2.26-rc1. I will check that it is really going to be included in 2.2.26.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

2.2.26 is finally there. Waiting for Alpine, maybe I will post tonight to patchwork :

http://www.dovecot.org/list/dovecot/2016-October/105867.html

from mailu.

extremeshok avatar extremeshok commented on April 28, 2024

Most excited about those 2.

  • fts: fts_autoindex=yes was broken in 2.2.25 unless
    fts_autoindex_exclude settings existed.
  • fts-solr: Fixed searching multiple mailboxes (patch by x16a0)

. https://eXtremeSHOK.com .

On 27-Oct-16 3:11 PM, kaiyou wrote:

2.2.26 is finally there. Waiting for Alpine, maybe I will post tonight
to patchwork :

http://www.dovecot.org/list/dovecot/2016-October/105867.html


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#57 (comment), or
mute the thread
https://github.com/notifications/unsubscribe-auth/AFrm0G0Y6RD1elYPiVSw-TbqAfF_vv-Nks5q4KLwgaJpZM4J0Rbs.

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

Alpine patch is awaiting review: http://patchwork.alpinelinux.org/patch/2508/

from mailu.

kaiyou avatar kaiyou commented on April 28, 2024

The patch is out, ready for tagging 1.3 tonight.

from mailu.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.