Hello,
I see. Sorry, but we can't keep the unstable branch always working since it is our development playground.
I started to commit the db changes on 24th, so you can try to check out version from 23rd.
Jan.
On 27-10 00:53, Jac Barben wrote:
-------- Original Message -------- Subject: nathelper with force_rtp_proxy and a working mysql Date: Mon, 27 Oct 2003 00:45:38 -0700 From: Jac Barben jbarben@claritytel.com To: Jan Janak jan@iptel.org
Jan:
Thanks for your last reply... I hope you didn't spend to much time on my last message... I since found that issue on my own.
Jan, I've been playing with the published 0.8.11 per your suggestion and found that force_rtp_proxy is not part of the release.
I've been monkeying all weekend with the latest developments from the CVS... but have been unable to get it all to work together.
Right now I'm stuck on an apparent database issue:
Oct 27 00:22:19 sip2 /usr/local/sbin/ser[31731]: INFO: signal 15 received Oct 27 00:23:08 sip2 /usr/local/sbin/ser[31738]: mod_init(): Can't bind database module Oct 27 00:23:08 sip2 /usr/local/sbin/ser[31738]: init_mod(): Error while initializing module usrloc Oct 27 00:34:26 sip2 /usr/local/sbin/ser[31772]: mod_init(): Can't bind database module Oct 27 00:34:26 sip2 /usr/local/sbin/ser[31772]: init_mod(): Error while initializing module usrloc "/var/log/messages" 88L, 7929C
Any suggestions on a version of the code I could try with all elements working? I saw on the web some reference to a developer who'd used a "diff" file against the nathelper.c for the released version of 0.8.11... but I was unable to find it. I'd really like to try it all. What should I do next?
J
# # $Id: ser.cfg,v 1.21.2.1 2003/07/30 16:46:18 andrei Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
#debug=3 # debug level (cmd line: -dddddddddd) #fork=yes #log_stderror=no # (cmd line: -E)
/* Uncomment these lines to enter debugging mode debug=7 fork=no log_stderror=yes */
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) #port=5060 #children=4 fifo="/tmp/ser_fifo" alias="claritycolorado.com"
# ------------------ module loading ----------------------------------
loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/nathelper.so" loadmodule "/usr/local/lib/ser/modules/textops.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 2) modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("rr", "enable_full_lr", 1) modparam("nathelper", "natping_interval", 10)
# ------------------------- request routing logic -------------------
# main routing logic
route{ # initial sanity checks -- messages with # max_forwards==0, or excessively long requests if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; }; if (msg:len >= max_len ) { sl_send_reply("513", "Message too big"); break; };
# Enable some NAT traversal help if (search("@192.*")) { setflag(1); force_rport(); fix_nated_contact(); };
# we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; };
if (method == "INVITE") { if (isflagset(1)) { fix_nated_sdp("3"); force_rtp_proxy(); }; t_on_reply("1"); };
# if the request is for other domain use UsrLoc # (in case, it does not work, use the following command # with proper names and addresses in it) if (uri==myself) { if (method=="REGISTER") { if (!www_authorize("claritycolorado.com", "subscriber")) { www_challenge("claritycolorado.com", "0"); break; };
save("location"); break; }; # These would be destinations dialed from the # ATA devices bound for the Vega if (uri=~"^sip:303" || uri=~"^sip:720" || uri=~"^sip:213417" || uri=~"^sip:86") { t_relay_to_udp("64.140.77.59", "5060"); break; }; if (uri=~"^sip:1") { t_relay_to_udp("64.140.77.59", "5060"); break; }; # Force routes to Cisco # These would be numbers dialed from the Vega # or another ATA device if (uri=~"^sip:011") { if (uri=~"^sip:011") { strip(3); }; prefix("2826"); t_relay_to_udp("209.170.94.124", "5060"); break; }; if (uri=~"^sip:9011") { strip(4); prefix("2826"); t_relay_to_udp("209.170.94.124", "5060"); break; }; if (uri=~"^sip:91") { strip(1); prefix("2826"); t_relay_to_udp("209.170.94.124", "5060"); break; }; if (uri=~"^sip:81") { strip(1); t_relay_to_udp("198.79.3.246", "5060"); break; }; # These would be our IPBX numbers dialed from the Vega # or another ATA device if (uri=~"^sip:4729") { strip(4); }; if (uri=~"^sip:4728") { strip(4); }; # native SIP destinations are handled using our USRLOC DB if (!lookup("location")) { sl_send_reply("404", "Not Found"); break; };
}; # forward to current uri now; use stateful forwarding; that # works reliably even if we forward from TCP to UDP if (!t_relay()) { sl_reply_error(); }; }
onreply_route[1] { if (status=~"2[0-9][0-9]" && search("@192.*")) { fix_nated_contact(); fix_nated_sdp("3"); force_rtp_proxy(); }; }
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers