[OpenSIPS-Users] [Release] Planing 1.8.1 minor release
Saúl Ibarra Corretgé
saul at ag-projects.com
Tue Aug 14 10:29:37 CEST 2012
On Aug 13, 2012, at 9:55 PM, Saúl Ibarra Corretgé wrote:
> Hi Rudy,
> On Aug 13, 2012, at 8:19 PM, Rudy wrote:
>> Great work on all the improvements. There is a patch I submitted a
>> while back for media proxy. I explained this to Vlad that there could
>> be other scripts / modules effected. Basically, once you call
>> strip_body() on a message, internally you are still able to access
>> that body (in some cases an SDP). The get_body() function should not
>> return anything if strip_body() was called. My patch fixes this
>> problem only in mediaproxy by checking lumps for deleted body. A more
>> elegant solution would be to fix opensips internally as described
>> above (ie: get_body() should fail after strip_body() being called) .
>> It would be great if we can get this fix, or a more proper one into 1.8.1 .
> I talked about this with Vlad at ClueCon and there doesn't seem to be a better approach given the limitations of the lump system. I think we can get this into 1.8.1 after a final look.
After sleeping over it, I don't think this is such a good idea, because it doesn't work in all cases. If you use the separated functions like this it will not work:
Any other module that also operates on the message body suffers from this, and I'd rather not add tens of workarounds here-and-there.
The proper solution would of course be to get rid of the lumps :-), but since that is unlikely to happen soon, I suggest we reconsider having a apply_message_changes function, which would apply all the lumps immediately, so the next function that operates on the message would find it changed already. Example:
This function is already implemented in Kamailio and a while ago I started porting it but I didn't finish it. It should be pretty straightforward to finish it, so if we settle on this approach I could finish it. However, being a new feature it would only make it to 1.9 version.
Saúl Ibarra Corretgé
More information about the Users