<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
on 5.5 kamailio wiki for core it is stated that return (0) is the same as exit. but that's not true </div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
request_route {
<div><br>
</div>
<div>    if (route(POS)){</div>
<div>        xlog("POS PASS\r\n");</div>
<div>    }</div>
<div><br>
</div>
<div>    if (!route(NEG)){</div>
<div>        <span style="background-color:rgb(255, 255, 255);display:inline !important">
xlog</span>("NEG PASS\r\n");</div>
<div>    }</div>
<div><br>
</div>
<div>    if (!route(ZERO)) {</div>
<div>        <span style="background-color:rgb(255, 255, 255);display:inline !important">
xlog</span>("ZERO PASS\r\n");</div>
<div>    }</div>
<div><br>
</div>
<div>    <span style="background-color:rgb(255, 255, 255);display:inline !important">
xlog</span>("AFTER ZERO\r\n");</div>
<div>    send_reply("400","Error");</div>
<div>    return;</div>
<div>}</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>route[POS]{</div>
<div>    return 1;</div>
<div>}</div>
<div><br>
</div>
<div>route[NEG]{</div>
<div>    return -1;</div>
<div>}</div>
<div><br>
</div>
<div>route[ZERO] {</div>
<div>    return 0;</div>
}<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
for example from the config above not only <b>ZERO PASS</b> will be printed but also
<b>all the actions after route(ZERO) are still executed.</b></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
instead if i replace return 0 with exit in route[ZERO]. this work as expected.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
</body>
</html>