Hi Francisco,

> I think I found a bug in the implementation of the compressor state
> logic in bidirectional mode.
> 
> According to RFC3095,  paragraph 5.4.1.1.1, when the compressor is in
> Second Order (SO) state receives a STATIC-NACK it shall go back to IR
> state.
> 
> However in the implementation in the function decide_state() defined
> in c_generic.c the compressor goes back to First Order (FO) state and
> not IR.
> 
> Is my understanding correct?

The feedback logic is not handled by the decide_state() function but by
the c_generic_feedback() function. In the c_generic_feedback() 
function, the following logic is present :

        switch(feedback->acktype)
        {
                ...
                case STATIC_NACK:
                        rohc_debugf(2, "static nack\n");
                        change_state(context, IR);
                        break;
                ...
        }

The above code is called for a ROHC compressor if the associated ROHC
decompressor decodes some valid feedback bytes sent by the ROHC
compressor at the other side of the link.

Regards,

Didier Barvaux
Viveris Technologies
http://www.tech.viveris.com/opensource/

_______________________________________________
Mailing list: https://launchpad.net/~rohc
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~rohc
More help   : https://help.launchpad.net/ListHelp

Reply via email to