FW: postlogin script

Aki Tuomi aki.tuomi at dovecot.fi
Wed Dec 14 11:35:48 UTC 2016



On 14.12.2016 05:58, Michael Fox wrote:
> No response seen yet.  Trying again.
>
> Surely someone knows how the postlogin scripts work and can answer these
> questions easily...  Anyone? 
>
> Thanks,
> Michael
>
>
> -----Original Message-----
> From: dovecot [mailto:dovecot-bounces at dovecot.org] On Behalf Of Michael Fox
> Sent: Sunday, December 11, 2016 8:48 AM
> To: Dovecot Mailing List <dovecot at dovecot.org>
> Subject: postlogin script
>
> I'm using the postlogin service, following the examples in the wiki.  But I
> can't find any documentation on the behavior (what's allowed/not allowed) of
> the script-login binary.  So, some questions:
>
>  
>
> Question 1:
>
> The examples show the following at the end of the post-login.sh script:
> exec "$@"
>
> My understanding is that this would exec each of the command line arguments
> to the post-login.sh script.  But, there are no arguments sent to the
> post-login.sh script in the examples.  So what is this line supposed to do?
>
>  
>
> Question 2:
>
> One of the examples shows exporting some environmental variables, followed
> by the above exec line:
>
>     export MAIL=maildir:/tmp/test
>
>     export USERDB_KEYS="$USERDB_KEYS mail"
>
>     exec "$@"
>
> Now, I'm really confused.  Can someone explain step-by-step why this does
> anything at all?
>
>  
>
> Question 3:
>
> I'd like to be able to pass some information to the post-login.sh script,
> such as the service (%s), as a positional parameter.  
>
> For example:  executable = script-login /path/post-login.sh %Ls
>
> Or even more explicitly:  executable = script-login /path/post-login.sh imap
>
> But it appears that the script-login binary is expecting only script names
> to be passed to it so that it can handle more than one script.  Is there a
> way to pass arguments to the different scripts?
>
>  
>
> Thanks,
>
> Michael
>
>  
>
>  
>
>  
>
>  
>
>  
Hi!

You need to use executable = script-login -- /path/post-login.sh -a -r -g -s

note the double-dash. it tells getopt to stop processing arguments.

Aki


More information about the dovecot mailing list