rendered paste bodyroute{
if(!mf_process_maxfwd_header("10")){
sl_send_reply("483", "Too Many Hops");
return;
}
if(msg:len >= max_len){
sl_send_reply("513", "Message too big");
return;
}
force_rport();
if(is_method("NOTIFY")){
sl_send_reply("200", "Ok");
return;
}
if(is_method("SUBSCRIBE|PUBLISH")){
sl_send_reply("200", "Ok");
return;
}
# -- Enable Accounting -- #
setflag(2);
if(nat_uac_test("3")){
if(is_method("REGISTER") || !is_present_hf("Record-Route")){
fix_nated_register();
} else {
fix_nated_contact();
}
force_rtp_proxy();
setbflag(5);
}
if(!is_method("REGISTER")){
record_route();
}
if(is_method("BYE|CANCEL")){
unforce_rtp_proxy();
}
if(loose_route()){
if(!is_present_hf("P-hint")){
append_hf("P-hint: rr-enforced\r\n");
}
route(1);
return;
}