Muchas gracias por responder.
Os adjunto esa parte del openser.cfg, con las líneas numeradas:
148 149 if (uri=~"^sip:[0-1]*@*") { 150 rewritehost("192.168.10.2"); 151 if ($fU == "44") { 152 rewriteport("5068"); 153 }; 154 route(1); 155 return; 156 }; 157
Y la salida del /var/log/messages al intentar arrancar openser:
Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,11-13): syntax error Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,11-13): bad command (!!!attention: from v1.0.0+ use 'return' instead of 'break'!!!) Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,11-13): bad command (!!!attention: from v1.0.0+ use 'return' instead of 'break'!!!) Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,15-16): bad command (!!!attention: from v1.0.0+ use 'return' instead of 'break'!!!) Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,16-17): bad command (!!!attention: from v1.0.0+ use 'return' instead of 'break'!!!) Jul 11 11:17:58 QOS-VPN1 openser: parse error (151,18-19): bad command (!!!attention: from v1.0.0+ use 'return' instead of 'break'!!!) Jul 11 11:17:58 QOS-VPN1 openser: parse error (164,3-4): syntax error Jul 11 11:17:58 QOS-VPN1 openser: parse error (164,3-4):
La línea 164 que aparece como error al final corresponde al cierre "};" del condicional "if (uri==myself) {".
El problema está en el "$fU". He probado a sustituirlo directamente por "uri", sin sentido práctico pero simplemente para evitar el error de sintaxis, y efectivamente arranca bien Openser sin errores.
Saludos
Iñaki Baz Castillo escribió:
El Jueves, 10 de Julio de 2008, Elena-Ramona Modroiu escribió:
Pon el puerto sin comillas:
rewriteport(5068);
http://www.openser.org/dokuwiki/doku.php/core-cookbook:1.3.x#rewriteport_ setport
Parece un error en el ejemplo de dokuwiki. El parametro de rewriteport()
tiene que ser STRING, cfg.y: | SET_PORT LPAREN STRING RPAREN { mk_action2( $$, SET_PORT_T, STRING_ST,
0, $3, 0); }
| SET_PORT error { $$=0; yyerror("missing '(' or ')' ?"); } | SET_PORT LPAREN error RPAREN { $$=0; yyerror("bad argument, " "string expected"); }
Cierto, y comprobado. He actualizado el wiki (1.2, 1.3, devel). Entonces, ¿qué fallaba?
if ($fU == "44") { rewriteport("5068"); };
Aquí todo está bien. Por favor José, pega el error que sale.
Saludos.