Subject: Washington Issue 14 - Errors when parsing

From: Brian Rosen <[email-masked]>
Date: Mon, 15 Nov 1999 15:59:08 -0500

A number of issues were raised in the Washington meeting that
were "send to the list".  This is one of these issues, with the
problem and my suggested fix.

Problem
There is some confusion in what error messages are appropriate
when discovering errors in parsing messages.

Proposed Solution:

If the transactionID cannot be reliably determined:
        Megaco/1.0 foo.baz.com Error=403{"Syntax Error in Transaction"}

If the end of a transaction can not be reliably determined:
        If one or more Actions can be parsed, process them
        and then send Error=403{"Syntax Error in Transaction"} as the last
        action reply for the transaction

        If no Actions can be parsed, send
                Reply=<transactionId>{Error=403{"Syntax Error in
Transaction"}}

If the contextID of an action cannot be reliably determined:
        Send Error=422{"Syntax Error in Action"} as the
        Action reply
If the end of an action cannot be reliably determined:
        If one or more Actions can be parsed, process them
        and then send 422 - Syntax Error in Action as the last
        action for the transaction.

        If no Actions can be parsed, send
                Reply=<transactionID>{Error=422{"Syntax Error in Action"}}

If the terminationID cannot be reliably determined:
        Send Error=442{"Syntax Error in Command"} as the
        Command reply, as in:
        Transaction=<transactionId>{Context=<contextID>{
                Error=442......

If the end of a command cannot be reliably determined:
        Transaction=<transactionId>{Context=<contextID>{
                Add{Error=442{"SyntaxError in Transaction"}}}}

Brian

---

From: Harpreet Singh Anand <[email-masked]>
Date: Wed, 17 Nov 1999 18:14:26 +0530

Hello Brian,

1. Should the error messages be sent if there is a syntax error in
TransactionReply ?

2. If yes, then what should be the handling on receiving error message for a
TransactionReply ?

3. If there is a semantic error in the TransactionReply, say the
TransactionReply does not have all the command responses or say if the
termination Id in the reply does not match the termination id in the command
(considering the case when termination id is always sent in the reply), then
what should the receiver of TransactionReply do ?

I feel on receiving a erroneous TransactionReply, the receiver should reject the
reply (without sending any response message) and behave as if it did not receive
any reply. That is, it would retransmit the Transaction after timeout.

Please comment.

Regards,
Harpreet

_________________________________
Harpreet Singh Anand
Ficon Technology
E-mail :  mailto:[email-masked]
Web    :  http://www.ficon-tech.com