I am trying to get external auth working. I am getting this error in the ejabberd.log:
=ERROR REPORT==== 2011-03-21 16:24:17 ===
C(<0.266.0>:extauth:135) : normal
I am seeing these errors in the erlang.log when trying to sign to the auth portal:
=CRASH REPORT==== 21-Mar-2011::17:03:22 ===
crasher:
pid: <0.382.0>
registered_name: []
exception error: bad argument
in function extauth:call_port/2
in call from ejabberd_auth_external:check_password_extauth/3
in call from ejabberd_auth:check_password_loop/2
in call from ejabberd_auth:check_password/3
in call from ejabberd_web_admin:get_auth_account/5
in call from ejabberd_web_admin:process/2
in call from ejabberd_http:process/2
in call from ejabberd_http:process_request/1
initial call: ejabberd_http:init({gen_tcp,#Port<0.425>},
[inet,captcha,http_bind,http_poll,
web_admin,
{ip,{0,0,0,0}}])
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.37.0>]
messages: []
links: [<0.259.0>,#Port<0.425>]
dictionary: [{random_seed,{10417,27969,22231}}]
trap_exit: false
status: running
heap_size: 1597
stack_size: 23
reductions: 1528
neighbours:
=SUPERVISOR REPORT==== 21-Mar-2011::17:03:22 ===
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: badarg
Offender: [{pid,<0.382.0>},
{name,undefined},
{mfa,{ejabberd_http,start_link,
[{gen_tcp,#Port<0.425>},
[inet,captcha,http_bind,http_poll,
web_admin,
{ip,{0,0,0,0}}]]}},
{restart_type,temporary},
{shutdown,brutal_kill},
{child_type,worker}]
=CRASH REPORT==== 21-Mar-2011::17:03:22 ===
crasher:
pid: <0.384.0>
registered_name: []
exception error: bad argument
in function extauth:call_port/2
in call from ejabberd_auth_external:check_password_extauth/3
in call from ejabberd_auth:check_password_loop/2
in call from ejabberd_auth:check_password/3
in call from ejabberd_web_admin:get_auth_account/5
in call from ejabberd_web_admin:process/2
in call from ejabberd_http:process/2
in call from ejabberd_http:process_request/1
initial call: ejabberd_http:init({gen_tcp,#Port<0.430>},
[inet,captcha,http_bind,http_poll,
web_admin,
{ip,{0,0,0,0}}])
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.37.0>]
messages: []
links: [<0.259.0>,#Port<0.430>]
dictionary: [{random_seed,{10417,27969,551}}]
trap_exit: false
status: running
heap_size: 1597
stack_size: 23
reductions: 841
neighbours:
=SUPERVISOR REPORT==== 21-Mar-2011::17:03:22 ===
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: badarg
Offender: [{pid,<0.384.0>},
{name,undefined},
{mfa,{ejabberd_http,start_link,
[{gen_tcp,#Port<0.430>},
web_admin,
{ip,{0,0,0,0}}]]}},
{restart_type,temporary},
{shutdown,brutal_kill},
{child_type,worker}]
Here is my bash script which is calling a Java application to the authentication. I added an echo to a file just to see if the script is ever called and as far as I can tell, the script is not being called:
#!/bin/bash
echo myscriptcalled >> ejabberdauthexec.out
java -jar ejabberauth.jar
I have verified permissions and ownership which do not appear to be the problem and I am able to successfully execute this script from the command line as ANY user on the system.
Any ideas or suggestions would be greatly appreciated.
Sincerely,
Hap
Many possible reasons: A) In
Many possible reasons:
A) In ejabberd.cfg option extath_program put the full path to the script.
B) The program must run permanently, never stop.
Both A and B are true. Any
Both A and B are true. Any other suggestions?