On 2016-12-05 04:38, Stephan Bosch wrote:> Op 5-12-2016 om 13:28 schreef MRob: >> RFC6785 says imap.user and imap.email environment variables should be >> made available but I can't access them no matter what I try. Are they >> not implemented because vnd.dovecot.environment already provides the >> username? (which does work for me) >> >> If imap.user and imap.email are there, can you provide an example how >> to access them so I can see what I did wrong? > > That should work. > > Do you have an example script demonstrating what your trying to do?Trying to access as a variable: \${imap.user} Also tried: if environment :matches "imap.user" "*" { set "username" "${1}"; } Also tried prefixing with "env." or removing "imap." Result is always empty string (dumped with debug_log) Script is run during COPY operations, newest tarball releases installed for dovecot and pigeonhole.
Op 5-12-2016 om 14:32 schreef MRob:> On 2016-12-05 04:38, Stephan Bosch wrote: >> Op 5-12-2016 om 13:28 schreef MRob: >>> RFC6785 says imap.user and imap.email environment variables should >>> be made available but I can't access them no matter what I try. Are >>> they not implemented because vnd.dovecot.environment already >>> provides the username? (which does work for me) >>> >>> If imap.user and imap.email are there, can you provide an example >>> how to access them so I can see what I did wrong? >> >> That should work. >> >> Do you have an example script demonstrating what your trying to do? > > Trying to access as a variable: > > \${imap.user} > > Also tried: > > if environment :matches "imap.user" "*" { > set "username" "${1}"; > } > > Also tried prefixing with "env." or removing "imap." > > Result is always empty string (dumped with debug_log) > > Script is run during COPY operations, newest tarball releases > installed for dovecot and pigeonhole.Could you show me your full script? I am mainly interested in the require statements involved. Regards, Stephan.
On 2016-12-05 06:13, Stephan Bosch wrote:> Op 5-12-2016 om 14:32 schreef MRob: >> On 2016-12-05 04:38, Stephan Bosch wrote: >>> Op 5-12-2016 om 13:28 schreef MRob: >>>> RFC6785 says imap.user and imap.email environment variables should >>>> be made available but I can't access them no matter what I try. Are >>>> they not implemented because vnd.dovecot.environment already >>>> provides the username? (which does work for me) >>>> >>>> If imap.user and imap.email are there, can you provide an example >>>> how to access them so I can see what I did wrong? >>> >>> That should work. >>> >>> Do you have an example script demonstrating what your trying to do? >> >> Trying to access as a variable: >> >> \${imap.user} >> >> Also tried: >> >> if environment :matches "imap.user" "*" { >> set "username" "${1}"; >> } >> >> Also tried prefixing with "env." or removing "imap." >> >> Result is always empty string (dumped with debug_log) >> >> Script is run during COPY operations, newest tarball releases >> installed for dovecot and pigeonhole. > > Could you show me your full script? I am mainly interested in the > require statements involved.I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve