<span>I </span>apologize, I copy n&#39; paste the wrong config file to my email.<br><br>Below my signature is the correct openser.cfg with the load of mysql.so and the db_mode set.<br><br>It does crash openser. But this time I managed to have some more indication in the log file:<br>
[...]<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27620]: CRITICAL:core:receive_fd: EOF on 11<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27582]: INFO:core:handle_sigs: child process 27586 exited by a signal 4<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27582]: INFO:core:handle_sigs: core was generated<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27582]: INFO:core:handle_sigs: terminating due to SIGCHLD<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27606]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27609]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27617]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27620]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27615]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27613]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27588]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27590]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27596]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27611]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27592]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27598]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27600]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27602]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27604]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27594]: INFO:core:sig_usr: signal 15 received<br>
Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27595]: INFO:core:sig_usr: signal 15 received<br>Apr 16 15:00:41 vpngw /usr/local/sbin/openser[27619]: INFO:core:sig_usr: signal 15 received<br><br>Regards,<br>Pascal<br><br><br>
#<br># $Id: openser.cfg 3542 2008-01-16 15:00:34Z miconda $<br>#<br># OpenSER basic configuration script<br>#&nbsp;&nbsp;&nbsp;&nbsp; by Anca Vamanu &lt;<a href="mailto:anca@voice-system.ro">anca@voice-system.ro</a>&gt;<br>#<br># Please refer to the Core CookBook at <a href="http://www.openser.org/dokuwiki/doku.php">http://www.openser.org/dokuwiki/doku.php</a><br>
# for a explanation of possible statements, functions and parameters.<br>#<br><br><br>####### Global Parameters #########<br><br>debug=3<br>log_stderror=no<br>log_facility=LOG_LOCAL0<br><br>fork=yes<br>children=4<br><br>/* uncomment the following lines to enable debugging */<br>
#debug=6<br>#fork=no<br>#log_stderror=yes<br><br>/* uncomment the next line to disable TCP (default on) */<br>#disable_tcp=yes<br><br>/* uncomment the next line to enable the auto temporary blacklisting of <br>&nbsp;&nbsp; not available destinations (default disabled) */<br>
#disable_dns_blacklist=no<br><br>/* uncomment the next line to enable IPv6 lookup after IPv4 dns <br>&nbsp;&nbsp; lookup failures (default disabled) */<br>#dns_try_ipv6=yes<br><br>/* uncomment the next line to disable the auto discovery of local aliases<br>
&nbsp;&nbsp; based on revers DNS on IPs (default on) */<br>#auto_aliases=no<br><br>/* uncomment the following lines to enable TLS support&nbsp; (default off) */<br>#disable_tls = no<br>#listen = tls:your_IP:5061<br>#tls_verify_server = 1<br>
#tls_verify_client = 1<br>#tls_require_client_certificate = 0<br>#tls_method = TLSv1<br>#tls_certificate = &quot;/usr/local/etc/openser/tls/user/user-cert.pem&quot;<br>#tls_private_key = &quot;/usr/local/etc/openser/tls/user/user-privkey.pem&quot;<br>
#tls_ca_list = &quot;/usr/local/etc/openser/tls/user/user-calist.pem&quot;<br><br><br>port=5060<br><br>/* uncomment and configure the following line if you want openser to <br>&nbsp;&nbsp; bind on a specific interface/port/proto (default bind on all available) */<br>
#listen=udp:<a href="http://192.168.1.2:5060">192.168.1.2:5060</a><br><br>alias=<a href="http://ptt.domain.net">ptt.domain.net</a><br><br>####### Modules Section ########<br><br>#set module path<br>mpath=&quot;/usr/local/lib/openser/modules/&quot;<br>
<br>/* uncomment next line for MySQL DB support */<br>loadmodule &quot;mysql.so&quot;<br>loadmodule &quot;sl.so&quot;<br>loadmodule &quot;tm.so&quot;<br>loadmodule &quot;rr.so&quot;<br>loadmodule &quot;maxfwd.so&quot;<br>
loadmodule &quot;usrloc.so&quot;<br>loadmodule &quot;registrar.so&quot;<br>loadmodule &quot;textops.so&quot;<br>loadmodule &quot;mi_fifo.so&quot;<br>loadmodule &quot;uri_db.so&quot;<br>loadmodule &quot;uri.so&quot;<br>loadmodule &quot;xlog.so&quot;<br>
loadmodule &quot;acc.so&quot;<br>/* uncomment next lines for MySQL based authentication support <br>&nbsp;&nbsp; NOTE: a DB (like mysql) module must be also loaded */<br>#loadmodule &quot;auth.so&quot;<br>#loadmodule &quot;auth_db.so&quot;<br>
/* uncomment next line for aliases support<br>&nbsp;&nbsp; NOTE: a DB (like mysql) module must be also loaded */<br>#loadmodule &quot;alias_db.so&quot;<br>/* uncomment next line for multi-domain support<br>&nbsp;&nbsp; NOTE: a DB (like mysql) module must be also loaded<br>
&nbsp;&nbsp; NOTE: be sure and enable multi-domain support in all used modules<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (see &quot;multi-module params&quot; section ) */<br>#loadmodule &quot;domain.so&quot;<br>/* uncomment the next two lines for presence server support<br>
&nbsp;&nbsp; NOTE: a DB (like mysql) module must be also loaded */<br>#loadmodule &quot;presence.so&quot;<br>#loadmodule &quot;presence_xml.so&quot;<br><br><br># ----------------- setting module-specific parameters ---------------<br>
<br><br># ----- mi_fifo params -----<br>modparam(&quot;mi_fifo&quot;, &quot;fifo_name&quot;, &quot;/tmp/openser_fifo&quot;)<br><br><br># ----- rr params -----<br># add value to ;lr param to cope with most of the UAs<br>modparam(&quot;rr&quot;, &quot;enable_full_lr&quot;, 1)<br>
# do not append from tag to the RR (no need for this script)<br>modparam(&quot;rr&quot;, &quot;append_fromtag&quot;, 0)<br><br><br># ----- rr params -----<br>modparam(&quot;registrar&quot;, &quot;method_filtering&quot;, 1)<br>
/* uncomment the next line to disable parallel forking via location */<br># modparam(&quot;registrar&quot;, &quot;append_branches&quot;, 0)<br>/* uncomment the next line not to allow more than 10 contacts per AOR */<br>#modparam(&quot;registrar&quot;, &quot;max_contacts&quot;, 10)<br>
<br><br># ----- uri_db params -----<br>/* by default we disable the DB support in the module as we do not need it<br>&nbsp;&nbsp; in this configuration */<br>modparam(&quot;uri_db&quot;, &quot;use_uri_table&quot;, 0)<br>modparam(&quot;uri_db&quot;, &quot;db_url&quot;, &quot;&quot;)<br>
<br><br># ----- acc params -----<br>/* what sepcial events should be accounted ? */<br>modparam(&quot;acc&quot;, &quot;early_media&quot;, 1)<br>modparam(&quot;acc&quot;, &quot;report_ack&quot;, 1)<br>modparam(&quot;acc&quot;, &quot;report_cancels&quot;, 1)<br>
/* by default ww do not adjust the direct of the sequential requests.<br>&nbsp;&nbsp; if you enable this parameter, be sure the enable &quot;append_fromtag&quot;<br>&nbsp;&nbsp; in &quot;rr&quot; module */<br>modparam(&quot;acc&quot;, &quot;detect_direction&quot;, 0)<br>
/* account triggers (flags) */<br>modparam(&quot;acc&quot;, &quot;failed_transaction_flag&quot;, 3)<br>modparam(&quot;acc&quot;, &quot;log_flag&quot;, 1)<br>modparam(&quot;acc&quot;, &quot;log_missed_flag&quot;, 2)<br>/* uncomment the following lines to enable DB accounting also */<br>
modparam(&quot;acc&quot;, &quot;db_flag&quot;, 1)<br>modparam(&quot;acc&quot;, &quot;db_missed_flag&quot;, 2)<br><br><br># ----- usrloc params -----<br>#modparam(&quot;usrloc&quot;, &quot;db_mode&quot;,&nbsp;&nbsp; 0)<br>modparam(&quot;usrloc&quot;, &quot;db_mode&quot;,&nbsp;&nbsp; 1)<br>
modparam(&quot;usrloc&quot;, &quot;db_url&quot;, &quot;mysql://openser:openserrw@localhost/openser&quot;)<br><br># ----- auth_db params -----<br>/* uncomment the following lines if you want to enable the DB based<br>&nbsp;&nbsp; authentication */<br>
#modparam(&quot;auth_db&quot;, &quot;calculate_ha1&quot;, yes)<br>#modparam(&quot;auth_db&quot;, &quot;password_column&quot;, &quot;password&quot;)<br>#modparam(&quot;auth_db&quot;, &quot;db_url&quot;,<br>#&nbsp;&nbsp;&nbsp; &quot;mysql://<a href="http://openser:openserrw@192.168.1.3/openser_1_3">openser:openserrw@192.168.1.3/openser_1_3</a>&quot;)<br>
#modparam(&quot;auth_db&quot;, &quot;load_credentials&quot;, &quot;&quot;)<br><br><br># ----- alias_db params -----<br>/* uncomment the following lines if you want to enable the DB based<br>&nbsp;&nbsp; aliases */<br>#modparam(&quot;alias_db&quot;, &quot;db_url&quot;,<br>
#&nbsp;&nbsp;&nbsp; &quot;mysql://<a href="http://openser:openserrw@192.168.1.3/openser_1_3">openser:openserrw@192.168.1.3/openser_1_3</a>&quot;)<br><br><br># ----- domain params -----<br>/* uncomment the following lines to enable multi-domain detection<br>
&nbsp;&nbsp; support */<br>#modparam(&quot;domain&quot;, &quot;db_url&quot;,<br>#&nbsp;&nbsp;&nbsp; &quot;mysql://<a href="http://openser:openserrw@192.168.1.3/openser_1_3">openser:openserrw@192.168.1.3/openser_1_3</a>&quot;)<br>#modparam(&quot;domain&quot;, &quot;db_mode&quot;, 1)&nbsp;&nbsp; # Use caching<br>
<br><br># ----- multi-module params -----<br>/* uncomment the following line if you want to enable multi-domain support<br>&nbsp;&nbsp; in the modules (dafault off) */<br>#modparam(&quot;alias_db|auth_db|usrloc|uri_db&quot;, &quot;use_domain&quot;, 1)<br>
<br><br># ----- presence params -----<br>/* uncomment the following lines if you want to enable presence */<br>#modparam(&quot;presence|presence_xml&quot;, &quot;db_url&quot;,<br>#&nbsp;&nbsp;&nbsp; &quot;mysql://<a href="http://openser:openserrw@192.168.1.3/openser_1_3">openser:openserrw@192.168.1.3/openser_1_3</a>&quot;)<br>
#modparam(&quot;presence_xml&quot;, &quot;force_active&quot;, 1)<br>#modparam(&quot;presence&quot;, &quot;server_address&quot;, &quot;sip:<a href="http://192.168.1.2:5060">192.168.1.2:5060</a>&quot;)<br><br><br>####### Routing Logic ########<br>
<br><br># main request routing logic<br><br>route{<br><br>&nbsp;&nbsp;&nbsp; if (!mf_process_maxfwd_header(&quot;10&quot;)) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;483&quot;,&quot;Too Many Hops&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; if (has_totag()) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # sequential request withing a dialog should<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # take the path determined by record-routing<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (loose_route()) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (is_method(&quot;BYE&quot;)) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; setflag(1); # do accouting ...<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; setflag(3); # ... even if the transaction fails<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; route(1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; } else {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; /* uncomment the following lines if you want to enable presence */<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##if (is_method(&quot;SUBSCRIBE&quot;) &amp;&amp; $rd == &quot;your.server.ip.address&quot;) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; # in-dialog subscribe requests<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; route(2);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if ( is_method(&quot;ACK&quot;) ) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if ( t_check_trans() ) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # non loose-route, but stateful ACK; must be an ACK after a 487 or e.g. 404 from upstream server<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_relay();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; } else {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # ACK without matching transaction ... ignore and discard.\n&quot;);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;404&quot;,&quot;Not here&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; #initial requests<br><br>&nbsp;&nbsp;&nbsp; # CANCEL processing<br>
&nbsp;&nbsp;&nbsp; if (is_method(&quot;CANCEL&quot;))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (t_check_trans())<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_relay();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; t_check_trans();<br><br>&nbsp;&nbsp;&nbsp; # authenticate if from local subscriber (uncomment to enable auth)<br>
&nbsp;&nbsp;&nbsp; ##if (!(method==&quot;REGISTER&quot;) &amp;&amp; from_uri==myself)<br>&nbsp;&nbsp;&nbsp; ##{<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; if (!proxy_authorize(&quot;&quot;, &quot;subscriber&quot;)) {<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; proxy_challenge(&quot;&quot;, &quot;0&quot;);<br>
&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; if (!check_from()) {<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;403&quot;,&quot;Forbidden auth ID&quot;);<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; ##<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; consume_credentials();<br>
&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; # caller authenticated<br>&nbsp;&nbsp;&nbsp; ##}<br><br>&nbsp;&nbsp;&nbsp; # record routing<br>&nbsp;&nbsp;&nbsp; if (!is_method(&quot;REGISTER|MESSAGE&quot;))<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; record_route();<br><br>&nbsp;&nbsp;&nbsp; # account only INVITEs<br>&nbsp;&nbsp;&nbsp; if (is_method(&quot;INVITE&quot;)) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; setflag(1); # do accouting<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; if (!uri==myself)<br>&nbsp;&nbsp;&nbsp; /* replace with following line if multi-domain support is used */<br>&nbsp;&nbsp;&nbsp; ##if (!is_uri_host_local())<br>&nbsp;&nbsp;&nbsp; {<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; append_hf(&quot;P-hint: outbound\r\n&quot;);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # if you have some interdomain connections via TLS<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##if($rd==&quot;<a href="http://tls_domain1.net">tls_domain1.net</a>&quot;) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; t_relay(&quot;tls:<a href="http://domain1.net">domain1.net</a>&quot;);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##} else if($rd==&quot;<a href="http://tls_domain2.net">tls_domain2.net</a>&quot;) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; t_relay(&quot;tls:<a href="http://domain2.net">domain2.net</a>&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; route(1);<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; # requests for my domain<br><br>&nbsp;&nbsp;&nbsp; /* uncomment this if you want to enable presence server <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; and comment the next &#39;if&#39; block<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; NOTE: uncomment also the definition of route[2] from&nbsp; below */<br>
&nbsp;&nbsp;&nbsp; ##if( is_method(&quot;PUBLISH|SUBSCRIBE&quot;))<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; route(2);<br><br>&nbsp;&nbsp;&nbsp; if (is_method(&quot;PUBLISH&quot;))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;503&quot;, &quot;Service Unavailable&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>
&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br><br>&nbsp;&nbsp;&nbsp; if (is_method(&quot;REGISTER&quot;))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # authenticate the REGISTER requests (uncomment to enable auth)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##if (!www_authorize(&quot;&quot;, &quot;subscriber&quot;))<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##{<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; www_challenge(&quot;&quot;, &quot;0&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##}<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##if (!check_to()) <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; sl_send_reply(&quot;403&quot;,&quot;Forbidden auth ID&quot;);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ##}<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (!save(&quot;location&quot;))<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_reply_error();<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; if ($rU==NULL) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # request with no Username in RURI<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;484&quot;,&quot;Address Incomplete&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; # apply DB based aliases (uncomment to enable)<br>&nbsp;&nbsp;&nbsp; ##alias_db_lookup(&quot;dbaliases&quot;);<br><br>&nbsp;&nbsp;&nbsp; if (!lookup(&quot;location&quot;)) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; switch ($retcode) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case -1:<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case -3:<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_newtran();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_reply(&quot;404&quot;, &quot;Not Found&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case -2:<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_send_reply(&quot;405&quot;, &quot;Method Not Allowed&quot;);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; # when routing via usrloc, log the missed calls also<br>&nbsp;&nbsp;&nbsp; setflag(2);<br><br>&nbsp;&nbsp;&nbsp; route(1);<br>
}<br><br><br>route[1] {<br>&nbsp; xlog(&quot;L_WARN&quot;, &quot;Routing block 1. Method [$rm], request URI [$ru]\n&quot;);<br><br>&nbsp;&nbsp;&nbsp; # send it out now; use stateful forwarding as it works reliably<br>&nbsp;&nbsp;&nbsp; # even for UDP2TCP<br>
&nbsp;&nbsp;&nbsp; if (!t_relay()) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sl_reply_error();<br>&nbsp;&nbsp;&nbsp; };<br>&nbsp;&nbsp;&nbsp; exit;<br><br>}<br><br><br># Presence route<br>/* uncomment the whole following route for enabling presence<br>&nbsp;&nbsp; NOTE: do not forget to enable the call of this route from the main<br>
&nbsp;&nbsp;&nbsp;&nbsp; route */<br>##route[2]<br>##{<br>##&nbsp;&nbsp;&nbsp; if (!t_newtran())<br>##&nbsp;&nbsp;&nbsp; {<br>##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sl_reply_error();<br>##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>##&nbsp;&nbsp;&nbsp; };<br>##<br>##&nbsp;&nbsp;&nbsp; if(is_method(&quot;PUBLISH&quot;))<br>##&nbsp;&nbsp;&nbsp; {<br>##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; handle_publish();<br>
##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_release();<br>##&nbsp;&nbsp;&nbsp; }<br>##&nbsp;&nbsp;&nbsp; else<br>##&nbsp;&nbsp;&nbsp; if( is_method(&quot;SUBSCRIBE&quot;))<br>##&nbsp;&nbsp;&nbsp; {<br>##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; handle_subscribe();<br>##&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; t_release();<br>##&nbsp;&nbsp;&nbsp; }<br>##<br>##&nbsp;&nbsp;&nbsp; exit;<br>##}<br><br><br>branch_route[2] {<br>
&nbsp;&nbsp;&nbsp; xlog(&quot;new branch at $ru\n&quot;);<br>}<br><br><br>onreply_route[2] {<br>&nbsp;&nbsp;&nbsp; xlog(&quot;incoming reply\n&quot;);<br>}<br><br><br>failure_route[1] {<br>&nbsp;&nbsp;&nbsp; if (t_was_cancelled()) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; }<br><br>
&nbsp;&nbsp;&nbsp; # uncomment the following lines if you want to block client <br>&nbsp;&nbsp;&nbsp; # redirect based on 3xx replies.<br>&nbsp;&nbsp;&nbsp; ##if (t_check_status(&quot;3[0-9][0-9]&quot;)) {<br>&nbsp;&nbsp;&nbsp; ##t_reply(&quot;404&quot;,&quot;Not found&quot;);<br>
&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; exit;<br>&nbsp;&nbsp;&nbsp; ##}<br><br>&nbsp;&nbsp;&nbsp; # uncomment the following lines if you want to redirect the failed <br>&nbsp;&nbsp;&nbsp; # calls to a different new destination<br>&nbsp;&nbsp;&nbsp; ##if (t_check_status(&quot;486|408&quot;)) {<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; sethostport(&quot;<a href="http://192.168.2.100:5060">192.168.2.100:5060</a>&quot;);<br>
&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; append_branch();<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; # do not set the missed call flag again<br>&nbsp;&nbsp;&nbsp; ##&nbsp;&nbsp;&nbsp; t_relay();<br>&nbsp;&nbsp;&nbsp; ##}<br>}<br><br><br><div class="gmail_quote">On Wed, Apr 16, 2008 at 2:01 PM, Henning Westerholt &lt;<a href="mailto:henning.westerholt@1und1.de">henning.westerholt@1und1.de</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">On Wednesday 16 April 2008, Pascal Maugeri wrote:<br>
&gt; I&#39;ve got a weird problem I do not manage to solve alone.<br>
&gt;<br>
&gt; I&#39;m using v1.3.0 with mysql.so and and usrloc.so, on redhat enterprise v4.<br>
&gt;<br>
&gt; When there is a permanent user location in the database (added previously<br>
&gt; with openserctl ul add), the server does not start:<br>
&gt; - there is no log about any error,<br>
&gt; - after starting the server, there is no running openser process<br>
&gt;<br>
&gt; Is it a server bug or should I activate/configure something else ?<br>
&gt;<br>
&gt; Below my signature is my configuration file.<br>
<br>
</div>Hi Pascal,<br>
<br>
looking to the config file it seems that you don&#39;t load the database driver at<br>
all. Perhaps you commented this out for debugging? Without a database driver<br>
the usrloc module will not load if you specify a db_mode that needs a db<br>
connection.<br>
<br>
Cheers,<br>
<font color="#888888"><br>
Henning<br>
</font></blockquote></div><br>