Re: [OpenSIPS-Devel] New Transport Interface
Small typo for TCP network proto: seems that destroy_udp() is meant to be destroy_tcp(). -ovidiu On Mon, Jan 12, 2015 at 8:52 AM, Răzvan Crainea raz...@opensips.org wrote: Hi, All! You can find here[2] the APIs that are going to be deeveloped for the Transport Interface. Please take a look and let us know what you think. Any feedback is welcome! [1] http://www.opensips.org/Development/TransportInterfaceAPI Best regards, Răzvan Crainea OpenSIPS Solutions www.opensips-solutions.com On 12/19/2014 06:05 PM, Bogdan-Andrei Iancu wrote: yes, that is the next step, to work out those interfaces. Then we can start re-arranging and re-building the code. Regards, Bogdan Bogdan-Andrei Iancu OpenSIPS Founder and Developer http://www.opensips-solutions.com On 19.12.2014 17:36, Ovidiu Sas wrote: Nice! It would be good to add the API documentation. -ovidiu On Fri, Dec 19, 2014 at 7:46 AM, Răzvan Crainea raz...@opensips.org wrote: Hello, all! Whilde developing the design of the new WebSockets protocol, we observed that we can't easily use the existing TCP core, and we have to duplicate a lot of code to make it work fine. Since this is not a very good idea, we started designing how this could be done nicer and more efficient. That's how we ended up designing a new Transport Interface[1], that provides a clear separation between IP layer transport protocols (such as TCP and UDP) and higher level protocols (such as WebSocket, TLS, etc.). This interface will facilitate the development of new Transport Protocols, while reusing the existing TCP and UDP implementation. The new design can be found here[1]. Feel free to give us any feedback or thoughts about this. [1] http://www.opensips.org/Development/TransportInterface Best regards, -- Răzvan Crainea OpenSIPS Solutions www.opensips-solutions.com ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel -- VoIP Embedded, Inc. http://www.voipembedded.com ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel
Re: [OpenSIPS-Devel] New Transport Interface
Hi Razvan (and all!), On 12 Jan 2015, at 14:52, Răzvan Crainea raz...@opensips.org wrote: Hi, All! You can find here[2] the APIs that are going to be deeveloped for the Transport Interface. Please take a look and let us know what you think. Any feedback is welcome! [1] http://www.opensips.org/Development/TransportInterfaceAPI Sorry for not having participated earlier. Hopefully I can do that more now! I had a look at the API, and while the layer separation sounds good, I have some questions / concerns of different nature. Here is a brain-dump, in no particular order: - If TLS is taken out of the core it would be best to rewrite it without looking at the current code. If we want to get OpenSIPS as an official Debian package, the TLS code needs to be a separate module, with a different license (GPL with the OpenSSL exception thing), but in order to relicense it all developers have to agree, doing it from scratch would avoid this. - If TLS is a module now, has there been any thought on supporting implementations other than OpenSSL? gnuTLS and libreSSL come to mind. - I see that the send / receive API is not designed with scatter / gather I/O in mind. It might be beneficial in the long run to support sending or receiving an array of buffers, and use readv / writev underneath. - sockaddr_union is defined by OpenSIPS with no real purpose these days, since we can use sockaddr_storage for allocating space and sockaddr for passing around pointers. - At what level are the TLS settings considered? Network or transport? Either way, all init functions get void, but where will the config be taken from, if it’s different per domain? - The transport API has some inconsistencies in what parameters it takes: connect gets a sockaddr, but bind gets host and port. - Where do DNS lookups happen? If the transport API only knows about IPs and ports then all functions should take sockaddr structures and the app would do the lookup. - Any thoughts on using “connected” UDP sockets, so the kernel does the filtering for incoming traffic? I hope this helps. Cheers, -- Saúl Ibarra Corretgé AG Projects signature.asc Description: Message signed with OpenPGP using GPGMail ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel
[OpenSIPS-Devel] [OpenSIPS/opensips] b8611c: Fix handling dst_uri in cloned messages.
Branch: refs/heads/master Home: https://github.com/OpenSIPS/opensips Commit: b8611c1b2759284584e1cc4dd601c68968539e1d https://github.com/OpenSIPS/opensips/commit/b8611c1b2759284584e1cc4dd601c68968539e1d Author: Bogdan-Andrei Iancu bog...@opensips.org Date: 2015-01-13 (Tue, 13 Jan 2015) Changed paths: M modules/tm/async.c M modules/tm/t_msgbuilder.h M modules/tm/t_reply.c Log Message: --- Fix handling dst_uri in cloned messages. Thanks to Liviu for pointing out - the dst_uri, after doing a fake msg (a copy from a shm cloned msg) had the wrong dst_uri linked (one in shm mem). ___ Devel mailing list Devel@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/devel