Sadeek Kheer | 1 Apr 2009 08:26
Picon

Memory Problem

Dear All,
Good Day.

I am using "Sofia-SIP 1.12.10" in unimrcp server (http://www.unimrcp.org/) and when I stress on the server it crashes. I debug many times and the system crash inside "libsofia_sip_ua.dll" due to memory corruption. I ran insure++ to find the error and I got the attached repeort with some overrun memory errors. This report is produced from the whole unimrcp server which use libsofia_sip_ua.dll.

Could you help us to fix these problems?

Thanks in advance
SK


[sip_basic.c:2615] **WRITE_OVERFLOW**
>>   MSG_STRING_DUP(b, v->v_host, o->v_host);

  Writing overflows memory: <argument 1>

          bbbbbbbbbbb
          | 68 | 16 |              2147483631               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x012339e4 thru 0x812339e2 (2147483647 bytes)
   To block (b) : 0x012339a0 thru 0x012339f3 (84 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1865
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                 sip_via_dup_one()  sip_basic.c, 2615
               msg_header_dup_as()  msg_header_copy.c, 283
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1865
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:2617] **READ_OVERFLOW**
>>   MSG_STRING_DUP(b, v->v_comment, o->v_comment);

  Reading overflows memory: <argument 2>

          bbbbb
          | 4 |              2147483643               |
          rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x012335a8 thru 0x812335a6 (2147483647 bytes)
   From block (b) : 0x012335a8 thru 0x012335ab (4 bytes)
                   block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                       su_strdup()  su_strdup.c, 55
             tport_alloc_primary()  tport.c, 642
                    tport_listen()  tport.c, 730
               tport_bind_server()  tport.c, 1654
                     tport_tbind()  tport.c, 1491
             nta_agent_add_tport()  nta.c, 1690
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                 sip_via_dup_one()  sip_basic.c, 2617
               msg_header_dup_as()  msg_header_copy.c, 283
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1865
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:2617] **WRITE_OVERFLOW**
>>   MSG_STRING_DUP(b, v->v_comment, o->v_comment);

  Writing overflows memory: <argument 1>

          bbbbbbbbbb
          | 80 | 4 |              2147483643               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x012339f0 thru 0x812339ee (2147483647 bytes)
   To block (b) : 0x012339a0 thru 0x012339f3 (84 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1865
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                 sip_via_dup_one()  sip_basic.c, 2617
               msg_header_dup_as()  msg_header_copy.c, 283
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1865
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:2615] **READ_OVERFLOW**
>>   MSG_STRING_DUP(b, v->v_host, o->v_host);

  Reading overflows memory: <argument 2>

          bbbbbbbbbbb
          | 68 | 16 |              2147483631               |
               rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x01233b04 thru 0x81233b02 (2147483647 bytes)
   From block (b) : 0x01233ac0 thru 0x01233b13 (84 bytes)
                   block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                     sip_via_dup()  sip_protos.h, 714
                  agent_init_via()  nta.c, 1867
             nta_agent_add_tport()  nta.c, 1710
        nua_stack_init_transport()  nua_register.c, 1150
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                 sip_via_dup_one()  sip_basic.c, 2615
               msg_header_dup_as()  msg_header_copy.c, 283
                     sip_via_dup()  sip_protos.h, 714
       nua_registration_from_via()  nua_register.c, 1369
    nua_stack_init_registrations()  nua_register.c, 1261
        nua_stack_init_transport()  nua_register.c, 1162
                  nua_stack_init()  nua_stack.c, 204
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:854] **WRITE_OVERFLOW**
>>     MSG_STRING_DUP(b, *d_display, display);

  Writing overflows memory: <argument 1>

          bbbbbbbbbb
          | 92 | 1 |              2147483646               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x01234234 thru 0x81234232 (2147483647 bytes)
   To block (b) : 0x012341d8 thru 0x01234234 (93 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                    sip_from_dup()  sip_protos.h, 1904
              nua_stack_set_from()  nua_params.c, 240
                  nua_stack_init()  nua_stack.c, 209
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
               sip_name_addr_dup()  sip_basic.c, 854
                sip_addr_dup_one()  sip_basic.c, 930
               msg_header_dup_as()  msg_header_copy.c, 283
                    sip_from_dup()  sip_protos.h, 1904
              nua_stack_set_from()  nua_params.c, 240
                  nua_stack_init()  nua_stack.c, 209
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()


[msg_parser_util.c:534] **READ_OVERFLOW**
>>     MSG_STRING_DUP(b, pp[i], s[i]);

  Reading overflows memory: <argument 2>

          bbbbbbbbbbb
          | 32 | 37 |              2147483610               |
               rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x012300b8 thru 0x812300b6 (2147483647 bytes)
   From block (b) : 0x01230098 thru 0x012300dc (69 bytes)
                   block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
                 msg_header_make()  msg_header_make.c, 86
                  sip_allow_make()  sip_protos.h, 7925
          nua_stack_set_defaults()  nua_params.c, 182
                  nua_stack_init()  nua_stack.c, 178
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                  msg_params_dup()  msg_parser_util.c, 534
                msg_list_dup_one()  msg_generic.c, 191
               msg_header_dup_as()  msg_header_copy.c, 283
                 nhp_merge_lists()  nua_params.c, 1052
                    nhp_set_tags()  nua_params.c, 919
            nua_stack_set_params()  nua_params.c, 516
                nua_stack_signal()  nua_stack.c, 576
       su_base_port_execute_msgs()  su_base_port.c, 276
            su_base_port_getmsgs()  su_base_port.c, 198
                su_base_port_run()  su_base_port.c, 331
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[msg_parser_util.c:534] **WRITE_OVERFLOW**
>>     MSG_STRING_DUP(b, pp[i], s[i]);

  Writing overflows memory: <argument 1>

          bbbbbbbbbbb
          | 64 | 34 |              2147483613               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x01234590 thru 0x8123458e (2147483647 bytes)
   To block (b) : 0x01234550 thru 0x012345b1 (98 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                 nhp_merge_lists()  nua_params.c, 1052
                    nhp_set_tags()  nua_params.c, 919
            nua_stack_set_params()  nua_params.c, 516
                nua_stack_signal()  nua_stack.c, 576
       su_base_port_execute_msgs()  su_base_port.c, 276
            su_base_port_getmsgs()  su_base_port.c, 198
                su_base_port_run()  su_base_port.c, 331
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
                  msg_params_dup()  msg_parser_util.c, 534
                msg_list_dup_one()  msg_generic.c, 191
               msg_header_dup_as()  msg_header_copy.c, 283
                 nhp_merge_lists()  nua_params.c, 1052
                    nhp_set_tags()  nua_params.c, 919
            nua_stack_set_params()  nua_params.c, 516
                nua_stack_signal()  nua_stack.c, 576
       su_base_port_execute_msgs()  su_base_port.c, 276
            su_base_port_getmsgs()  su_base_port.c, 198
                su_base_port_run()  su_base_port.c, 331
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[msg_mime.c:1129] **READ_OVERFLOW**
>>     MSG_STRING_DUP(b, ac->ac_type, o->ac_type);

  Reading overflows memory: <argument 2>

          bbbbbbbbbbb
          | 40 | 16 |              2147483631               |
               rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x01230438 thru 0x81230436 (2147483647 bytes)
   From block (b) : 0x01230410 thru 0x01230447 (56 bytes)
                   block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
                 msg_header_make()  msg_header_make.c, 86
                 sip_accept_make()  sip_protos.h, 7211
                  nua_stack_init()  nua_stack.c, 184
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
              msg_accept_dup_one()  msg_mime.c, 1129
              msg_header_add_dup()  msg_parser.c, 2570
                     sip_add_dup()  sip_header.c, 119
         nua_session_server_init()  nua_session.c, 1894
          nua_invite_server_init()  nua_session.c, 1828
       nua_stack_process_request()  nua_stack.c, 1383
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[msg_mime.c:1129] **WRITE_OVERFLOW**
>>     MSG_STRING_DUP(b, ac->ac_type, o->ac_type);

  Writing overflows memory: <argument 1>

          bbbbbbbbbbb
          | 40 | 16 |              2147483631               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x01238bc8 thru 0x81238bc6 (2147483647 bytes)
   To block (b) : 0x01238ba0 thru 0x01238bd7 (56 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
              msg_header_add_dup()  msg_parser.c, 2567
                     sip_add_dup()  sip_header.c, 119
         nua_session_server_init()  nua_session.c, 1894
          nua_invite_server_init()  nua_session.c, 1828
       nua_stack_process_request()  nua_stack.c, 1383
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
              msg_accept_dup_one()  msg_mime.c, 1129
              msg_header_add_dup()  msg_parser.c, 2570
                     sip_add_dup()  sip_header.c, 119
         nua_session_server_init()  nua_session.c, 1894
          nua_invite_server_init()  nua_session.c, 1828
       nua_stack_process_request()  nua_stack.c, 1383
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[msg_generic.c:106] **READ_OVERFLOW**
>>   MSG_STRING_DUP(b, dst->sh_generic->g_string, src->sh_generic->g_string);

  Reading overflows memory: <argument 2>

          bbbbbbbbbbbbb
          | 316 | 562 |              2147483085               |
                rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x0123715c thru 0x8123715a (2147483647 bytes)
   From block (b) : 0x01237020 thru 0x0123738d (878 bytes)
                   block allocated at su_alloc.c, 1249
                         realloc()  (interface)
                      su_realloc()  su_alloc.c, 1249
                  msg_buf_commit()  msg_parser.c, 218
                 msg_recv_commit()  msg_parser.c, 551
                tport_recv_dgram()  tport_type_udp.c, 348
                 tport_recv_data()  tport.c, 2821
                tport_recv_event()  tport.c, 2835
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
             msg_generic_dup_one()  msg_generic.c, 106
               msg_header_dup_as()  msg_header_copy.c, 283
              sip_user_agent_dup()  sip_protos.h, 6664
      nua_dialog_store_peer_info()  nua_dialog.c, 172
       nua_stack_incoming_handle()  nua_stack.c, 1043
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[msg_generic.c:106] **WRITE_OVERFLOW**
>>   MSG_STRING_DUP(b, dst->sh_generic->g_string, src->sh_generic->g_string);

  Writing overflows memory: <argument 1>

          bbbbbbbbbbb
          | 28 | 17 |              2147483630               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x0123944c thru 0x8123944a (2147483647 bytes)
   To block (b) : 0x01239430 thru 0x0123945c (45 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
              sip_user_agent_dup()  sip_protos.h, 6664
      nua_dialog_store_peer_info()  nua_dialog.c, 172
       nua_stack_incoming_handle()  nua_stack.c, 1043
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
             msg_generic_dup_one()  msg_generic.c, 106
               msg_header_dup_as()  msg_header_copy.c, 283
              sip_user_agent_dup()  sip_protos.h, 6664
      nua_dialog_store_peer_info()  nua_dialog.c, 172
       nua_stack_incoming_handle()  nua_stack.c, 1043
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:1099] **READ_OVERFLOW**
>>   MSG_STRING_DUP(b, i->i_id, o->i_id);

  Reading overflows memory: <argument 2>

          bbbbbbbbbbbbb
          | 209 | 669 |              2147482978               |
                rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

   Reading    (r) : 0x012370f1 thru 0x812370ef (2147483647 bytes)
   From block (b) : 0x01237020 thru 0x0123738d (878 bytes)
                   block allocated at su_alloc.c, 1249
                         realloc()  (interface)
                      su_realloc()  su_alloc.c, 1249
                  msg_buf_commit()  msg_parser.c, 218
                 msg_recv_commit()  msg_parser.c, 551
                tport_recv_dgram()  tport_type_udp.c, 348
                 tport_recv_data()  tport.c, 2821
                tport_recv_event()  tport.c, 2835
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
             sip_call_id_dup_one()  sip_basic.c, 1099
               msg_header_dup_as()  msg_header_copy.c, 283
                 sip_call_id_dup()  sip_protos.h, 2380
                 nta_leg_tcreate()  nta.c, 3644
       nua_stack_incoming_handle()  nua_stack.c, 1050
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()


[sip_basic.c:1099] **WRITE_OVERFLOW**
>>   MSG_STRING_DUP(b, i->i_id, o->i_id);

  Writing overflows memory: <argument 1>

          bbbbbbbbbbb
          | 32 | 37 |              2147483610               |
               wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

   Writing  (w) : 0x01239808 thru 0x81239806 (2147483647 bytes)
   To block (b) : 0x012397e8 thru 0x0123982c (69 bytes)
                 block allocated at su_alloc.c, 482
                          malloc()  (interface)
                       sub_alloc()  su_alloc.c, 482
                        su_alloc()  su_alloc.c, 763
                msg_header_alloc()  msg_parser.c, 2299
               msg_header_dup_as()  msg_header_copy.c, 277
                 sip_call_id_dup()  sip_protos.h, 2380
                 nta_leg_tcreate()  nta.c, 3644
       nua_stack_incoming_handle()  nua_stack.c, 1050
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()

  Stack trace where the error occurred:
                        _memccpy()  (interface)
             sip_call_id_dup_one()  sip_basic.c, 1099
               msg_header_dup_as()  msg_header_copy.c, 283
                 sip_call_id_dup()  sip_protos.h, 2380
                 nta_leg_tcreate()  nta.c, 3644
       nua_stack_incoming_handle()  nua_stack.c, 1050
       nua_stack_process_request()  nua_stack.c, 1389
               incoming_callback()  nta.c, 4738
                        leg_recv()  nta.c, 4055
              agent_recv_request()  nta.c, 2437
              agent_recv_message()  nta.c, 2205
              tport_base_deliver()  tport.c, 3010
                   tport_deliver()  tport.c, 2999
                     tport_parse()  tport.c, 2916
                tport_recv_event()  tport.c, 2858
               tport_base_wakeup()  tport.c, 2760
                tport_wakeup_pri()  tport.c, 2723
     su_wsevent_port_wait_events()  su_win32_port.c, 605
                su_base_port_run()  su_base_port.c, 342
                     su_port_run()  su_port.h, 310
                     su_root_run()  su_root.c, 684
      su_pthread_port_clone_main()  su_pthread_port.c, 321
       pthreadVC2.dll 0x006b1e05()



************************* INSURE SUMMARY ************************ v7.0.8 **
*   Program      : unimrcpserver                                          *
*   Arguments    : Not available                                          *
*   Directory    : \unimrcp-0.5.0\Debug\bin            *
*   Compiled on  : Not available                                          *
*   Run on       : Mar 27, 2009  17:24:01                                 *
*   Elapsed time : 00:00:49                                               *
*   Malloc HWM   : 630643 bytes (615K)                                    *
***************************************************************************

PROBLEM SUMMARY - by type
===============

          Problem                Reported      Suppressed
          -------------------------------------------------
          FREE_NULL                    0               32
          READ_OVERFLOW                6              110
          RETURN_FAILURE               0               32
          WRITE_OVERFLOW               7              118
          -------------------------------------------------
          TOTAL                       13              292
          -------------------------------------------------

PROBLEM SUMMARY - by location
===============

FREE_NULL: Freeing null pointer, 1 unique occurrence
        32 at su_alloc.c, 827

READ_OVERFLOW: Reading overflows memory, 6 unique occurrences
         4 at msg_generic.c, 106
         2 at msg_mime.c, 1129
       101 at msg_parser_util.c, 534
         1 at sip_basic.c, 1099
         2 at sip_basic.c, 2615
         6 at sip_basic.c, 2617

RETURN_FAILURE: Function returned an error, 23 unique occurrences
         1 at crtlib.c, 555
         1 at crtlib.c, 556
         1 at demo_synth_engine.c, 370
         1 at heapinit.c, 87
         1 at nta.c, 423
         1 at nua_common.c, 135
         1 at nua_params.c, 160
         1 at sres.c, 2150
         1 at sres.c, 2175
         1 at sres.c, 2181
         1 at sres.c, 2204
         1 at su_log.c, 152
         9 at su_log.c, 157
         1 at su_port.c, 171
         1 at tidtable.c, 362
         1 at tidtable.c, 365
         1 at tidtable.c, 368
         1 at tidtable.c, 371
         1 at time.c, 44
         2 at tport_logging.c, 98
         1 at tport_logging.c, 105
         1 at tport_logging.c, 107
         1 at user.cpp, 81

WRITE_OVERFLOW: Writing overflows memory, 7 unique occurrences
         4 at msg_generic.c, 106
         2 at msg_mime.c, 1129
       101 at msg_parser_util.c, 534
         5 at sip_basic.c, 854
         1 at sip_basic.c, 1099
         6 at sip_basic.c, 2615
         6 at sip_basic.c, 2617



************************* INSURE SUMMARY ************************ v7.0.8 **
*   Program      : unimrcpserver                                          *
*   Arguments    : Not available                                          *
*   Directory    : unimrcp-0.5.0\Debug\bin            *
*   Compiled on  : Not available                                          *
*   Run on       : Mar 27, 2009  17:24:01                                 *
*   Elapsed time : 00:00:49                                               *
*   Malloc HWM   : 630643 bytes (615K)                                    *
***************************************************************************

MEMORY LEAK SUMMARY
===================

70 outstanding memory references for 22309 bytes (21K).

Leaks detected at exit
----------------------
      1064 bytes      2 chunks allocated at crtlib.c, 434
                     _calloc_dbg()  (interface)
                   __CRTDLL_INIT()  crtlib.c, 434
                    _CRTDLL_INIT()  crtlib.c, 214


Outstanding allocated memory
----------------------------
      4096 bytes 1 chunk allocated at _getbuf.c, 58
                     _malloc_dbg()  (interface)
                         _getbuf()  _getbuf.c, 58
                         _filbuf()  _filbuf.c, 125
                 _fread_nolock_s()  fread.c, 268
                         fread_s()  fread.c, 109
                           fread()  fread.c, 303
                           fread()  (interface)
          demo_synth_stream_read()  demo_synth_engine.c, 370
              mpf_bridge_process()  mpf_bridge.c, 24
             mpf_context_process()  mpf_context.c, 112
                 mpf_engine_main()  mpf_engine.c, 263
                   mm_timer_proc()  mpf_timer.c, 85
            WINMM.dll 0x76b454e3()

      4096 bytes 1 chunk allocated at _sftbuf.c, 91
                     _malloc_dbg()  (interface)
                          _stbuf()  _sftbuf.c, 91
                          printf()  printf.c, 61
                            main()  main.c, 139

      4096 bytes 1 chunk allocated at _sftbuf.c, 91
                     _malloc_dbg()  (interface)
                          _stbuf()  _sftbuf.c, 91
                 vfprintf_helper()  vfprintf.c, 68
                        vfprintf()  vfprintf.c, 117
                        vfprintf()  (interface)
                  default_logger()  su_default_log.c, 46
                        su_vllog()  su_log.c, 137
                      su_debug_3()  su_debug.h, 130
             sres_parse_win32_ip()  sres.c, 1970
          sres_parse_resolv_conf()  sres.c, 2160
              sres_update_config()  sres.c, 1933
            sres_resolver_update()  sres.c, 1887
      sres_resolver_new_internal()  sres.c, 766
 sres_resolver_new_with_cache_va()  sres.c, 699
    sres_resolver_new_with_cache()  sres.c, 659
            sres_resolver_create()  sresolv.c, 119
                nta_agent_create()  nta.c, 487
                  nua_stack_init()  nua_stack.c, 194
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()

      3591 bytes     55 chunks allocated at stdenvp.c, 127
                     _calloc_dbg()  (interface)
                        _setenvp()  stdenvp.c, 127
                   __CRTDLL_INIT()  crtlib.c, 336
                    _CRTDLL_INIT()  crtlib.c, 214

      2048 bytes 1 chunk allocated at _file.c, 134
                     _calloc_dbg()  (interface)
                     __initstdio()  _file.c, 134
                     _initterm_e()  crt0dat.c, 905
                          _cinit()  crt0dat.c, 283
                   __CRTDLL_INIT()  crtlib.c, 336
                    _CRTDLL_INIT()  crtlib.c, 214

      1792 bytes 1 chunk allocated at ioinit.c, 137
                     _calloc_dbg()  (interface)
                         _ioinit()  ioinit.c, 137
                   __CRTDLL_INIT()  crtlib.c, 305
                    _CRTDLL_INIT()  crtlib.c, 214

       544 bytes 1 chunk allocated at mbctype.c, 593
                     _malloc_dbg()  (interface)
                        _setmbcp()  mbctype.c, 593
                  __initmbctable()  mbctype.c, 846
                   __CRTDLL_INIT()  crtlib.c, 325
                    _CRTDLL_INIT()  crtlib.c, 214

       532 bytes 1 chunk allocated at tidtable.c, 428
                     _calloc_dbg()  (interface)
                         _mtinit()  tidtable.c, 428
                   __CRTDLL_INIT()  crtlib.c, 294
                    _CRTDLL_INIT()  crtlib.c, 214

       224 bytes 1 chunk allocated at stdenvp.c, 117
                     _calloc_dbg()  (interface)
                        _setenvp()  stdenvp.c, 117
                   __CRTDLL_INIT()  crtlib.c, 336
                    _CRTDLL_INIT()  crtlib.c, 214

       128 bytes 1 chunk allocated at onexit.c, 208
                     _calloc_dbg()  (interface)
                    __onexitinit()  onexit.c, 208
                     _initterm_e()  crt0dat.c, 905
                          _cinit()  crt0dat.c, 283
                   __CRTDLL_INIT()  crtlib.c, 336
                    _CRTDLL_INIT()  crtlib.c, 214

        26 bytes 1 chunk allocated at stdargv.c, 140
                     _malloc_dbg()  (interface)
                        _setargv()  stdargv.c, 140
                   __getmainargs()  crtlib.c, 158
                    pre_cpp_init()  crtexe.c, 341
                       _initterm()  crt0dat.c, 854
               __tmainCRTStartup()  crtexe.c, 512
                  mainCRTStartup()  crtexe.c, 413

        24 bytes 1 chunk allocated at mlock.c, 279
                     _malloc_dbg()  (interface)
                  _mtinitlocknum()  mlock.c, 279
                   _alloc_osfhnd()  osfinfo.c, 58
                  _tsopen_nolock()  open.c, 385
                   _sopen_helper()  open.c, 170
                        _sopen_s()  open.c, 910
                       _openfile()  _open.c, 253
                         _fsopen()  fopen.c, 85
                           fopen()  fopen.c, 124
                           fopen()  (interface)
               apt_log_file_open()  apt_log.c, 75
                            main()  main.c, 182

        24 bytes 1 chunk allocated at mlock.c, 279
                     _malloc_dbg()  (interface)
                  _mtinitlocknum()  mlock.c, 279
                      _getstream()  stream.c, 71
                         _fsopen()  fopen.c, 61
                           fopen()  fopen.c, 124
                           fopen()  (interface)
               apt_log_file_open()  apt_log.c, 75
                            main()  main.c, 182

        24 bytes 1 chunk allocated at mlock.c, 279
                     _malloc_dbg()  (interface)
                  _mtinitlocknum()  mlock.c, 279
                      _getstream()  stream.c, 71
                         _fsopen()  fopen.c, 61
                           fopen()  fopen.c, 124
                           fopen()  (interface)
          sres_parse_resolv_conf()  sres.c, 2150
              sres_update_config()  sres.c, 1933
            sres_resolver_update()  sres.c, 1887
      sres_resolver_new_internal()  sres.c, 766
 sres_resolver_new_with_cache_va()  sres.c, 699
    sres_resolver_new_with_cache()  sres.c, 659
            sres_resolver_create()  sresolv.c, 119
                nta_agent_create()  nta.c, 487
                  nua_stack_init()  nua_stack.c, 194
      su_pthread_port_clone_main()  su_pthread_port.c, 318
       pthreadVC2.dll 0x006b1e05()



------------------------------------------------------------------------------
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
Björn Stenborg | 2 Apr 2009 14:56
Favicon

DNS resolver retry interval

Hi!

 

While trying to configure the resolver retries I ran into something interesting. As I understand it, the following definition in sres.h should decide how long we wait for the first DNS query:

  /** Initial retry interval in seconds. */

  SRES_RETRY_INTERVAL = 1,

The only place where this definition is used is in sres_parse_config:

  /* Default values */

  c->c_opt.ndots = 1;

  c->c_opt.check_names = 1;

  c->c_opt.timeout = SRES_RETRY_INTERVAL;

This timeout struct member is only used in one other place, namely in sres_parse_options:

    else if (MATCH("timeout:")) c->c_opt.timeout = n;

So we can configure it but it’s never used!?  What really determines the length of the timeout seems to be the following line in sres_resolver_timer:

      /* Exponential backoff */

      retry_time = q->q_timestamp + ((time_t)1 << q->q_retry_count);

As I understand it the initial retry interval is really hardcoded to 1 second. I believe that this should be replaced by:

      /* Exponential backoff */

      retry_time = q->q_timestamp + ((time_t)res->res_config->c_opt.timeout << q->q_retry_count);

 

Or am I missing something?

 

Best regards,

 

Björn Stenborg

 

------------------------------------------------------------------------------
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
Bernhard Suttner | 3 Apr 2009 14:47

P-Asserted Header in RINGING

Hi  <at>  all,

my nua application has to do something if it receives a P-Asserted Header in 
the 180 Ringing and/or in the 181 Call Is Being Forwarded. The problem is, 
that it is not possible to get the header value of the SIP struct (using 
sip_p_asserted_identity), because the SIP pointer is NULL.:

void event_callback(nua_event_t event,  
int status,  
char const *phrase,  
nua_t *nua, sofia_profile_t *profile,
nua_handle_t *nh,
NULL,
sip_t const *sip,
tagi_t tags[])

So, If the event_callback does receive a "nua_i_invite" I get the P-asserted 
header, but in a "nua_i_state" not, because sip_t const *sip is NULL. 

Does somebody has a solution for this problem? Or is it maybe a bug in the 
sofia-sip? BTW: I am using 1.12.9.

Best regards,
Bernhard Suttner

------------------------------------------------------------------------------
Inca Rose | 3 Apr 2009 23:23
Picon

How sofia select the IP for Via and Contact on a multi home device

HI;
I found something very strange the other day.
There are 2 IP on the device, Sofia sends the message from IP 1 but
fill the Via and COntact with IP 2.
The problem is that IP 2 is not connected to anything.
Why this happens ?

Where to look for the code to understand what is going on behind the scenes?

Thanks
Inca

------------------------------------------------------------------------------
Aleksander Morgado | 7 Apr 2009 16:12
Picon

Avoid sending 100 Trying?

Is there any way in sofia-sip to avoid the automatic sending of the 100 TRYING reply to an INVITE nta_incoming_t?

I've got a UAC which doesn't seem to like it, which is quite annoying...

Cheers,
-Aleksander

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
jonathan augenstine | 7 Apr 2009 16:25
Picon

Re: Avoid sending 100 Trying?

I encountered the same exact issue.  There is not a straightforward way to disable this, although I do understand it is possible.  However, I was informed that even the nta interface will send a 100 automatically if the response to the INVITE takes too long.  I found the easiest solution was to modify the UAC scenario to accept the 100 message.


Jonathan

On Tue, Apr 7, 2009 at 7:12 AM, Aleksander Morgado <sofia-sip-devel-Dvg4H30XQSRVIjRurl1/8g@public.gmane.org> wrote:
Is there any way in sofia-sip to avoid the automatic sending of the 100 TRYING reply to an INVITE nta_incoming_t?

I've got a UAC which doesn't seem to like it, which is quite annoying...

Cheers,
-Aleksander

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel


------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
Inca Rose | 7 Apr 2009 19:41
Picon

Change the transport after calling nua_create

Hi;
It is possible to change the current transport ( ip + port ) after 
calling nua_create ?

the scenario is for example a computer on wifi that can receivie a new 
IP form the Access point
or it can just move to another trusted AP and get a new IP.

What will be the procedure to change the IP in the current NUA ?
Do i need to destroy the current nua and create a new one with the new IP?

Thanks
Inca R

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
gilles Djomo Sawa | 8 Apr 2009 03:38
Picon
Favicon

help!!!

I tried to understand something:
code:
typedef struct application
{
    su_home_t* home[1];
    nua_t* nua;
    su_root_t* root;
...
}

main(..)
{
    application appl[1] = {{{{sizeof(appl)}}}};
...
...}
 Problem: 'unsigned int' cannot be converted in'su_root_t *' Where is the mistake?
"LE PRINCIPE LE PLUS PROFOND
 DE LA NATURE HUMAINE,C'EST LA
 SOIF D'ETRE APPRECIE"
Gilles  Ezechiel Djomo Sawa
Kastanienweg 31
52074 Aachen
 
Tel:+492418796838 (home)
      +4917661006847(mobile)


------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
Jean Dumercq | 8 Apr 2009 09:06
Picon

Re: how to send a=sendrecv in sdp offer?

Hi, thanks for your response.
When I put the flag "sdp_f_mode_always" in sdp_print(), all works fine the mode attribute is well printed. But when I use it in sdp_parse() the program shut down. I haven't analysed the problem because I don't need to use this attribute anymore (optional now). I work with sofia-sip 12.8, I will try with a newer version. Thanks

2009/3/26 Jarod Neuner <j.neuner-a6+nJXpfjY9GuQopDwbDVAC/G2K4zDHf@public.gmane.org>
sendrecv is the default when the mode is omitted, so if you can, file a
bug report with your vendor.

If that isn't an option, you could hack the sdp_print() attribute
'sdp_f_mode_always' into soa.c and get the same result.


On Thu, 2009-03-26 at 04:07 -0500, Jean Dumercq wrote:
> Hello everybody,
> I have a problem when sending an sdp offer/response. I have to send
> the attribute a=sendrecv. I create an sdp session with:
> ------------------------------------------------------------------------------
>     char const dummy_sdp_session[] =
>         "v=0\n"
>         "m=audio 5010 RTP/AVP 0\n"
>         "a=rtpmap:0 X-PTT-PCMA/8000\n"
>         "a=sendrecv\n"
>         ;
>
>     sdp_parser_t * parser = sdp_parse (appl->home, dummy_sdp_session,
> sizeof(dummy_sdp_session), sdp_f_config);
>     sdp_session_t * local_sdp_session = sdp_session (parser);
> ------------------------------------------------------------------------------
>
> But when I send the session, the sip stack/parser? seems to suppress
> this attribute. Someone has an idea?
> Many thanks in advance.
>
> Jean


------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@...
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel
SourceForge.net | 9 Apr 2009 11:51
Picon
Favicon

[ sofia-sip-Bugs-2412241 ] Registration to Ekiga.net fails

Bugs item #2412241, was opened at 2008-12-09 18:06
Message generated for change (Comment added) made by riot69
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=756076&aid=2412241&group_id=143636

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Pekka Pessi (ppessi)
Assigned to: Pekka Pessi (ppessi)
Summary: Registration to Ekiga.net fails

Initial Comment:
The Ekiga.net checks during registration that both the Via and Contact headers contain a public IP
address. The registation fails with 606 if the Via header contains a NATted address from the private
address space.

----------------------------------------------------------------------

Comment By: Andre Klapper (riot69)
Date: 2009-04-09 09:51

Message:
Maemo downstream ticket: https://bugs.maemo.org/show_bug.cgi?id=4259

----------------------------------------------------------------------

Comment By: Mikhail Zabaluev (mzabaluev)
Date: 2009-03-03 18:49

Message:
It shouldn't be an interop problem to put the public transport address in
the client's Via. When the binding breaks, the proxy should signal it with
rport and received which will be different from the address in Via.

----------------------------------------------------------------------

Comment By: Mikhail Zabaluev (mzabaluev)
Date: 2008-12-10 13:17

Message:
>The UA application must take care of the contact address by:
>-Using some kind of STUN mechanism
>- Learning from the REGISTER response ( checking the Via parameters ) and
reusing a new REGISTER

Sure, we do the latter, but the ekiga.net proxy rejects this REGISTER with
606 Not Acceptable.

----------------------------------------------------------------------

Comment By: Inca Rose (incarose)
Date: 2008-12-09 19:48

Message:
Why do you think this is a sofia-sip problem ?
There is nothing wrong whit that.
Ekiga SIP server will end up sending the response to the udp-src address
ignoring the Via host address.

The UA application must take care of the contact address by:
-Using some kind of STUN mechanism
- Learning from the REGISTER response ( checking the Via parameters ) and
reusing a new REGISTER
- or not taking care at all and failing to get incoming calls.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=756076&aid=2412241&group_id=143636

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com

Gmane