[OpenSIPS-Users] B2BUA/Top Hiding in 1.7 trunk

Jock McKechnie jock.mckechnie at gmail.com
Wed Oct 26 20:48:17 CEST 2011


Has something broken B2B/top hiding in trunk or is the config sample
presented on the Tutorials page not actually current for v1.7? I've
taken the sample and changed it to force the calls to a specific host,
implement top hiding, and I've also changed it to use db_mode 0 so I
don't need the DB back-end, but elsewise it's complete, however I get
debugging errors about "failed to create new b2b server instance" and,
even more entertainingly, when the call I'm trying to build tears down
OpenSIP shuts itself down.

Config and lv3 debug as follows. Is it v1.7 trunk, or am I missing
something that the changes above have fundamentally broken in the
tutorial sample?

Thank you!!
 - Jock

[OpenSIP is up and running here & then receives a call]
Oct 21 09:33:50 mediab2bua1 /usr/sbin/opensips[2635]:
INFO:core:buf_init: initializing...
Oct 21 09:33:50 mediab2bua1 /usr/sbin/opensips[2635]: b2b_reply
(B2B.58.6764724)
Oct 21 09:33:50 mediab2bua1 /usr/sbin/opensips[2636]:
ERROR:b2b_logic:create_top_hiding_entities: failed to create new b2b
server instance
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2637]:
ERROR:b2b_logic:create_top_hiding_entities: failed to create new b2b
server instance
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2638]:
ERROR:b2b_entities:b2b_send_reply: Tm transaction not saved!
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2630]:
INFO:core:handle_sigs: child process 2638 exited by a signal 11
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2630]:
INFO:core:handle_sigs: core was not generated
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2630]:
INFO:core:handle_sigs: terminating due to SIGCHLD
Oct 21 09:33:51 mediab2bua1 /usr/sbin/opensips[2641]:
INFO:core:sig_usr: signal 15 received



# Debugging mode:
debug=3
memlog= 6
fork=yes
auto_aliases=no
log_stderror=no

disable_dns_blacklist=yes

listen=192.168.9.9:5060
# alias=OSIPS_REALM
#port=OSIPS_PORT

sip_warning=0
#server_header="SRV_SIGNATURE"
#user_agent_header="PP_USER_AGENT"

#mhomed=yes
#memlog=2
check_via=no
dns=off
rev_dns=off
children=8
disable_tcp=yes
log_facility=LOG_LOCAL7
# for more info: opensips -h

# ------------------ module loading ----------------------------------

mpath="/usr/lib/opensips/modules"

loadmodule "textops.so"
loadmodule "maxfwd.so"
loadmodule "rr.so"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "signaling.so"
loadmodule "b2b_entities.so"
loadmodule "b2b_logic.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "mi_fifo.so"
loadmodule "dialog.so"


# ----------------- setting module-specific parameters ---------------
modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")


modparam("tm", "pass_provisional_replies", 1)

modparam("b2b_logic", "db_mode", 0)
modparam("b2b_entities", "db_mode", 0)
modparam("b2b_entities", "script_req_route", "b2b_request")
modparam("b2b_entities", "script_reply_route", "b2b_reply")

route[b2b_request] {
  xlog("b2b_request ($ci)\n");
}


route[b2b_reply] {
  xlog("b2b_reply ($ci)\n");
}


route {
  if (!mf_process_maxfwd_header("10")) {
    sl_send_reply("483","Too Many Hops");
    exit;
  };

  if (msg:len >= 2380 ) {
    sl_send_reply("513", "Message too big");
    exit;
  };

  if (!method=="REGISTER")
    record_route();

  # subsequent messages withing a dialog should take the
  # path determined by record-routing
  if (loose_route()) {
    # mark routing logic in request
    append_hf("P-hint: rr-enforced\r\n");
    route(1);
  };

  if(is_method("INVITE") && !(src_ip == "192.168.9.9" && src_port
==5060)) /* skip Invite messages generated by the B2BUA*/
  {
    # DO NOT call t_newtran() on this request -> it will result in the
transaction never being deleted
    rewritehost("192.168.10.10");
    b2b_init_request("top hiding");
    exit; # do not forward this request, another one will be generated
  };

  route(1);
}


route[1] {
  # send it out now; use stateful forwarding as it works reliably
  # even for UDP2TCP

  if (!t_relay()) {
    sl_reply_error();
  };
  exit;
}



More information about the Users mailing list