Hello, For my application, I need to set the expiration value in my PUBLISH request to 4294967295. This is allowable per RFC 3261, sec 20.19: “The value of this field is an integral number of seconds (in decimal) between 0 and (2**32)-1, measured from the receipt of the request.” But, there are two problems with this: 1. PJSIP uses 4294967295 (0xffffffff) to indicate an expiration value is not specified. Fair enough -- I changed PJSIP_PUBC_EXPIRATION_NOT_SPECIFIED to the less likely to be used 4294967294 (0xfffffffe). 2. However, the call chain that eventually prints the header into the message converts the pj_uint32_t into an int, then into a pj_int32_t (hdr->ivalue) and then into an unsigned long (pj_utoa). On a 64-bit machine, that last conversion
will print: “Expires: 18446744073709551615” instead of the desired: “Expires: 4294967295” Can you please add a ticket for this? Thanks, Jeff |
_______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip@xxxxxxxxxxxxxxx http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org