| 1332 | } |
| 1333 | |
| 1334 | static inline int t_relay_inerr2scripterr(void) |
| 1335 | { |
| 1336 | switch (ser_error) { |
| 1337 | case E_BAD_URI: |
| 1338 | case E_BAD_REQ: |
| 1339 | case E_BAD_TO: |
| 1340 | case E_INVALID_PARAMS: |
| 1341 | /* bad message */ |
| 1342 | return -2; |
| 1343 | case E_NO_DESTINATION: |
| 1344 | /* no available destination */ |
| 1345 | return -3; |
| 1346 | case E_BAD_ADDRESS: |
| 1347 | /* bad destination */ |
| 1348 | return -4; |
| 1349 | case E_IP_BLOCKED: |
| 1350 | /* destination filtered */ |
| 1351 | return -5; |
| 1352 | case E_NO_SOCKET: |
| 1353 | case E_SEND: |
| 1354 | /* send failed */ |
| 1355 | return -6; |
| 1356 | default: |
| 1357 | /* generic internal error */ |
| 1358 | return -1; |
| 1359 | } |
| 1360 | } |
| 1361 | |
| 1362 | |
| 1363 | static int w_t_relay( struct sip_msg *p_msg , void *flags, struct proxy_l *proxy) |