A SIP message (with valid content-type but an empty body) is sent to SailFIN.
When such message is received in the server, SailFIN checks the message body
length and since it is empty
then the received content-type information is discarded and never forwarded to
the SIP application interested in
to read its content. Using the getContentType () (
NULL is returned. THIS IS THE PROBLEM!
According to RFC 3261 (SIP: Session Initiation Protocol):
The Content-Type header field indicates the media type of the message-body sent
to the recipient. The
â€œmedia-typeâ€� element is defined in [H3.7]. The Content-Type header field MUST be
present if the body is
not empty. If the body is empty, and a Content-Type header field is present, it
indicates that the body of the
specific type has zero length (for example, an empty audio file).
From the above information extracted from a SIP standard specification, there is
no indication tha the content-type
shall be discarded or ignored if the body is empty.
We have seen also other specifications (ie JSR281) used by another SIP
applications and fully compliant with SIP standards and this problem does not occur.
Required solution: SailFIN shall be compliant with RFC3261. It shall enable the
SIP client/application to read the
Content-type information even if the message body is empty.