Re: ACK fails if hostname is A/AAAA resolvable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Anthony,

Should have just been fixed in SVN trunk, please check https://trac.pjsip.org/repos/ticket/2227 for more info.

Thank you for the report and the analysis.

BR,
nanang


On Fri, Aug 30, 2019 at 10:14 AM Anthony Alba <ascanio.alba7@xxxxxxxxx> wrote:
Using PJSIP 2.9

Using all IPv4 but the hostname is AAAA resolvale.

Processing 200 OK and sending ACK fails because the stack does not try
the IPv4 address after IPv6 address is detected as
PJSIP_EUNSUPTRANSPOR

REGISTER/INVITE/BYE: all will try IPv6(fail) then IPv4 address

For INVITE processing 200 OK to send ACK it does not fall back to IPv4.
I narrowed the cause to sip_util.c:

1119         if (sent == -PJ_EPENDING) {
   1120             /* This is the initial process.
   1121              * When the process started, this function will be called by
   1122              * stateless_send_resolver_callback() with sent
argument set to
   1123              * -PJ_EPENDING.
   1124              */
   1125             cont = PJ_TRUE;
   1126         } else {
   1127             /* There are two conditions here:
   1128              * (1) Message is sent (i.e. sent > 0),
   1129              * (2) Failure (i.e. sent <= 0)
   1130              */
   1131             cont = (sent > 0) ? PJ_FALSE :
   1132
(tdata->dest_info.cur_addr<tdata->dest_info.addr.count-1);
   1133             if (stateless_data->app_cb) {
   1134                 (*stateless_data->app_cb)(stateless_data, sent, &cont);
   1135             } else {
   1136                 /* Doesn't have application callback.
   1137                  * Terminate the process.
   1138                  */
   1139                 cont = PJ_FALSE;
   1140             }
   1141         }

Sending ACK, cont is set to PJ_FALSE.

Cheers
Anthony

_______________________________________________
Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@xxxxxxxxxxxxxxx
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
_______________________________________________
Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@xxxxxxxxxxxxxxx
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux