I am using the external authentication option to easily integrate with the user base in my existing application. However, seeing how the script is written, I am concerned about the infinite loop that waits for input from ejabberd. It seems that the script is a blocking operation, effectively creating a blocking thread.
Will this affect performance of a minimal server?
Does ejabberd run the script differently than say Python runs the script in Python?
Why didn't we have external auth be that the script is invoked every time Ejabberd needs to use it instead of an infinite loop?
Please enlighten me!
Thanks
Right, the extauth script
Right, the extauth script processes auth requests sequentially, which means that only one auth is processed at a time.
You can use this option to run several scripts in parallel: extauth_instances
The script is spawned in a
The script is spawned in a new process so the infinite loop won't hurt performance of the ejabberd process.
Spawning a new process for every login however would hurt performance since creating and destroying processes takes time.