<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    I am seeing a crash within the latest ims modules using the example
    cfg scripts. It also happened in 4.1<br>
    <br>
    1) The s-cscf receives a request from an application server and runs
    'assign_server_unreg' (cfg line 368) because the intended
    destination is not registered.<br>
    2) The HSS returns an error '5012: Unable to comply' and the
    suspended transaction is resumed into the UNREG_SAR_REPLY route
    (cxdx_sar.c:290)<br>
    3) The coredump shows that the AVP lists are nonsensical, so the
    action to get $avp(s:saa_return_code) causes a crash.<br>
    <br>
    Do the avp lists need to be re-initialised from the suspended
    transaction, like in the 'success/done' section (cxdx_sar.c:252)?<br>
    Maybe someone who is more familiar with this code can shine some
    light on this?<br>
    <br>
    Also in this scenario I can't see a code path that will send a
    response back to the application server e.g. '480 Temporarily
    Unavailable' - Should this be done in the cfg before calling
    assign_server_unreg?<br>
    <br>
    Regards,<br>
    Hugh<br>
    <br>
    Backtrace:<br>
    <blockquote><small><tt>(gdb) bt</tt></small><br>
      <small><tt>#0  0x000000000053dc89 in match_by_name
          (avp=0x303630363a6d6f63, id=116, name=0x7ffff29895f8) at
          usr_avp.c:391</tt></small><br>
      <small><tt>#1  0x000000000053e411 in search_next_avp
          (s=0x7ffff29895f0, val=0x7ffff2989630) at usr_avp.c:507</tt></small><br>
      <small><tt>#2  0x000000000053e120 in search_avp (ident=...,
          val=0x7ffff2989630, state=0x7ffff29895f0) at usr_avp.c:475</tt></small><br>
      <small><tt>#3  0x000000000053de09 in search_first_avp (flags=1,
          name=..., val=0x7ffff2989630, s=0x7ffff29895f0) at
          usr_avp.c:427</tt></small><br>
      <small><tt>#4  0x00007fa8de2f5626 in pv_get_avp
          (msg=0x7ffff298a030, param=0x7fa8de86b898, res=0x7ffff2989760)
          at pv_core.c:1475</tt></small><br>
      <small><tt>#5  0x0000000000499270 in pv_get_spec_value
          (msg=0x7ffff298a030, sp=0x7fa8de86b880, value=0x7ffff2989760)
          at pvapi.c:1266</tt></small><br>
      <small><tt>#6  0x00000000004c5f03 in rval_get_int
          (h=0x7ffff2989ef0, msg=0x7ffff298a030, i=0x7ffff2989d58,
          rv=0x7fa8de86b878, cache=0x0) at rvalue.c:978</tt></small><br>
      <small><tt>#7  0x00000000004c89f5 in rval_expr_eval_int
          (h=0x7ffff2989ef0, msg=0x7ffff298a030, res=0x7ffff2989d58,
          rve=0x7fa8de86b870) at rvalue.c:1918</tt></small><br>
      <small><tt>#8  0x0000000000420648 in do_action (h=0x7ffff2989ef0,
          a=0x7fa8de86eaa8, msg=0x7ffff298a030) at action.c:1219</tt></small><br>
      <small><tt>#9  0x0000000000422878 in run_actions
          (h=0x7ffff2989ef0, a=0x7fa8de86aa30, msg=0x7ffff298a030) at
          action.c:1599</tt></small><br>
      <small><tt>#10 0x0000000000423017 in run_top_route
          (a=0x7fa8de86aa30, msg=0x7ffff298a030, c=0x0) at action.c:1685</tt></small><br>
      <small><tt>#11 0x00007fa8de59eae3 in t_continue (hash_index=15710,
          label=170389234, route=0x7fa8de86aa30) at t_suspend.c:245</tt></small><br>
      <small><tt>#12 0x00007fa8da1ebc98 in async_cdp_callback
          (is_timeout=0, param=0x7fa8d5c68f40, saa=0x0, elapsed_msecs=1)
          at cxdx_sar.c:290</tt></small><br>
      <small><tt>#13 0x00007fa8db23cacb in api_callback
          (p=0x7fa8d5c24d40, msg=0x7fa8d5c5aca8, ptr=0x0) at
          api_process.c:115</tt></small><br>
      <small><tt>#14 0x00007fa8db27ad87 in worker_process (id=2) at
          worker.c:330</tt></small><br>
      <small><tt>#15 0x00007fa8db257aea in diameter_peer_start
          (blocking=0) at diameter_peer.c:309</tt></small><br>
      <small><tt>#16 0x00007fa8db25a02b in cdp_child_init (rank=0) at
          mod.c:237</tt></small><br>
      <small><tt>#17 0x00000000004f7ec2 in init_mod_child
          (m=0x7fa8de841158, rank=0) at sr_module.c:924</tt></small><br>
      <small><tt>#18 0x00000000004f7d65 in init_mod_child
          (m=0x7fa8de841d00, rank=0) at sr_module.c:921</tt></small><br>
      <small><tt>#19 0x00000000004f7d65 in init_mod_child
          (m=0x7fa8de8420a8, rank=0) at sr_module.c:921</tt></small><br>
      <small><tt>#20 0x00000000004f7d65 in init_mod_child
          (m=0x7fa8de842458, rank=0) at sr_module.c:921</tt></small><br>
      <small><tt>#21 0x00000000004f7d65 in init_mod_child
          (m=0x7fa8de842ae8, rank=0) at sr_module.c:921</tt></small><br>
      <small><tt>#22 0x00000000004f7d65 in init_mod_child
          (m=0x7fa8de842f60, rank=0) at sr_module.c:921</tt></small><br>
      <small><tt>#23 0x00000000004f8048 in init_child (rank=0) at
          sr_module.c:948</tt></small><br>
      <small><tt>#24 0x000000000046d57c in main_loop () at main.c:1694</tt></small><br>
      <small><tt>#25 0x000000000047030b in main (argc=13,
          argv=0x7ffff298af78) at main.c:2533</tt></small><br>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Hugh Waite
Principal Design Engineer
Crocodile RCS Ltd.</pre>
  </body>
</html>