Zitat von "hui li" <nami.li1...@gmail.com>:

> Sorry, is yor patch still use obex_data_indication() and
> obex_transport_read() to read socket data? It seems that your modified
> custom_read() function isn`t called by the two functions. Or you use
> OBEX_CustomDataFeed() to read data? Thanks.

I reworked the patches you need to rebase if you checked out my  
for-mainline branch.
The function OBEX_HandleInput() now calls obex_work() instead of  
obex_transport_handle_input(). That does the following:

* when sending in SRM, it checks with zero timeout for input and if  
nothing is there, it calls the client/server send method.
* when not sending in SRM, it calls the usual handle input path

That handle input path is slightly modified as it now looks at how  
much data there is in the rx_msg queue and only calls handle_input if  
there is less than one _full_ packet. This gives custom transports the  
chance to call CustomDataFeed() and does not flood our rx_msg queue  
with packages so that the transport speed regulation can kick in.
It also calls the transports read() method if that data is not enough  
(for custom transports, this does nothing if not implemented).

The obex_data_indication now checks that only ABORT packets are  
consumed when you are sending in SRM.

I tested this with obexftp and it's tty custom transport in  
combination with my obexpush_atd and it works fine. That one only  
fills 500 byes per HandleInput call with a RX MTU of 1024 bytes (so  
three CustomDataFeed calls).
You can force SRM without changing other software by changing the  
initial rsp_mode value in obex.c (preferable for server and client ;))

Please try it. If you find problems, try to find out what wrong and tell me.

HS

PS: would it be possible for you to implement the L2CAP transport  
directly in OpenOBEX?


------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today
http://p.sf.net/sfu/msIE9-sfdev2dev
_______________________________________________
Openobex-users mailing list
Openobex-users@lists.sourceforge.net
http://lists.sourceforge.net/lists/listinfo/openobex-users

Reply via email to