Hi everyone,<br>Ive tried the chat room and the mailing list with no luck, so I&#39;m hoping someone out there will be able to help me.<br><br>Im using gentoo linux, 2.6 kernel, x86 arch, on a Xen slice.&nbsp; I can get ejabberd installed, and running, but once I try to use MySQL for my user registry, everything breaks.&nbsp; Users cannot log in (clients say &quot;Not Authorized&quot;), I cannot create users via ejabberct; (says:&nbsp; User already exists at node), and creating an account from an XMPP client results in &quot;409:&nbsp; Conflict.&quot;
<br><br>As I mentioned I followed the HowTo pretty closely, and got ejabberd working using the internal db pretty easily.&nbsp; i just set the {hosts} directive, and replace all references to ./ssl.pem to /etc/jabber/ssl.pem, because ejabberd wont work without the full path there.
<br><br>Then I proceed directly to the Native MySQL HowTo, and make the few changes it suggests there. <br><br>I&#39;ve enabled my sql logs, and I can see that ejabberd never communicates with the MySQL service.<br><br>In addition, as per a suggestion, I added some debugging output to ejabberd_auth_odbc.erl:
<br><br>try_register(User, Server, Password) -&gt;<br>&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;Lets start with the function try_register with ~n User: ~p, Server: ~p, Password: ~p&quot;, [User, Server, Password]),<br>&nbsp;&nbsp;&nbsp; case jlib:nodeprep(User) of
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; error -&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;Error: invalid JID; with user: ~p&quot;, [User]),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {error, invalid_jid};<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LUser -&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;OK, nodeprep returns LUser: ~p&quot;, [LUser]),
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Username = ejabberd_odbc:escape(LUser),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pass = ejabberd_odbc:escape(Password),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LServer = jlib:nameprep(Server),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;So, let&#39;s call add_user with ~n LServer: ~p, Username: ~p, Pass: ~p&quot;, [LServer, Username, Pass]),
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case catch odbc_queries:add_user(LServer, Username, Pass) of<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {updated, 1} -&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;Success creating the account!!&quot;, []),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {atomic, ok};
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _ -&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ?INFO_MSG(&quot;Error creating the account :(&nbsp; Maybe the account already exists ~n Result: ~p&quot;, []),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {atomic, exists}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end<br>&nbsp;&nbsp;&nbsp; end.
<br>...but i never see anything pop up in ejabberd.log, so this leads me to believe that not only is ejabberd not communicating with the MySQL server, but that it doesn&#39;t even know its supposed to try, as this code is never being called.&nbsp; Either that, or I&#39;m looking in the wrong place for the debug output.&nbsp; (DISCLAIMER:&nbsp; I am no erlang expert)
<br><br>Here is the dif between the ejabberd.cfg.example and my completed ejabberd.cfg upon completion of the tutorial when everything should be working:<br><font size="2"><br>&lt; {auth_method, internal}.<br>&gt; % {auth_method, internal}.
<br><br>&lt; %{auth_method, odbc}.<br>&lt; %{odbc_server, &quot;DSN=ejabberd;UID=ejabberd;PWD=ejabberd&quot;}.<br><br>&gt; {auth_method, odbc}.<br>&gt; {odbc_server, {mysql, &quot;localhost&quot;, &quot;FQDN_XMPP&quot;, &quot;ejabberd&quot;, &quot;secret&quot;}}.
<br><br>&lt; {hosts, [&quot;localhost&quot;]}.<br>&gt; {hosts, [&quot;FQDN.com&quot;]}.<br><br>&lt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; starttls, {certfile, &quot;./ssl.pem&quot;}]},<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; starttls, {certfile, &quot;/etc/jabber/ssl.pem&quot;}]},
<br><br>&lt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tls, {certfile, &quot;./ssl.pem&quot;}]},<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tls, {certfile, &quot;/etc/jabber/ssl.pem&quot;}]},<br><br>&lt; {s2s_certfile, &quot;./ssl.pem&quot;}.<br>
&gt; {s2s_certfile, &quot;/etc/jabber/ssl.pem&quot;}.<br><br>&lt;&nbsp;&nbsp; {mod_roster,&nbsp;&nbsp;&nbsp;&nbsp; []},<br>&gt;&nbsp;&nbsp; {mod_roster_odbc,&nbsp;&nbsp;&nbsp;&nbsp; []},<br><br>&lt;&nbsp;&nbsp; {mod_vcard,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; []},<br>&gt;&nbsp;&nbsp; {mod_vcard_odbc,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; []},<br><br></font><font size="2">
&lt;&nbsp;&nbsp; {mod_offline,&nbsp;&nbsp;&nbsp; []},</font><br><font size="2">&gt;&nbsp;&nbsp; {mod_offline_odbc,&nbsp;&nbsp;&nbsp; []},<br><br>&lt;&nbsp;&nbsp; {mod_last,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; []},<br>&gt;&nbsp;&nbsp; {mod_last_odbc,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; []},<br><br>Any help is much appreciate,<br>-Ryan<br></font>