ser.cfg 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. debug=9 # debug level (cmd line: -dddddddddd)
  2. check_via=1 # (cmd. line: -v)
  3. dns=on # (cmd. line: -r)
  4. rev_dns=yes # (cmd. line: -R)
  5. fork=no # (cmd. line: -D)
  6. fork=yes
  7. log_stderror=yes # (cmd line: -E)
  8. fifo=/tmp/ser_fifo
  9. # for more info: sip_router -h
  10. route{
  11. if false and forward("mobile69") { log("forwarded ok\n"); break; }
  12. else log("error forwarding\n");
  13. if false log("if\n")
  14. else log("else\n");
  15. if { log("test\n"); break; log("test2\n"); } log ("if {}");
  16. if (src_ip=~'(dorian)|(ekina)|(terix)' & method=~'^inv')
  17. forward(centauri.fokus.gmd.de);
  18. if src_ip=~"^192\.168\.[0-9]{1,3}\.[0-9]{1,3}$" {
  19. log(1,"msg. from a private network\n");
  20. route(1);
  21. log(1, "after route(1)\n");
  22. break;
  23. };
  24. if src_ip==0.0.0.0/0 {
  25. setuserpass("andrei:test");
  26. log(1, " test msg\n"); forward(192.168.46.55);
  27. setuser("foo");sethostport("bar.com:6000");
  28. forward(192.168.46.69);drop;
  29. };
  30. log("default route[0]\n");
  31. }
  32. route[1]{
  33. if src_ip==192.168.46.61 { log("possible loop, dropping\n"); drop; };
  34. if (src_ip==192.168.46.0/24) {
  35. log("routing with rt2\n");route(2); log("we're back\n");
  36. break;
  37. };
  38. if src_ip==0.0.0.0/0 { log(1, "we'll drop this one too\n"); drop; };
  39. log("default route[1]\n");
  40. }
  41. route[2]{
  42. if (method=~'^ACK' and uri=~'.*fokus') forward("fox.iptel.org");
  43. if ! method=~'^INV' forward(193.175.135.179); /* dorian */
  44. if method=~'.' { log("spying...\n"); send(dorian,8000);/* raw sip packet */
  45. forward("fox.iptel.org");
  46. };
  47. log("default route[2]\n");
  48. }