[Live-devel] multi-threaded connect() and EBADF (Ross Finlayson)

Janus, Karl karl.janus at siemens.com
Tue Jun 23 10:35:49 PDT 2015


I setup a test outside of my usage of Live555 and have yet to reproduce the EBADF issue. This test led me to more closely examine my derived UsageEnvironment::getErrno() method.  I noticed I might have been over-eager in my error checking and was evaluating both 'errno' as well as WSAGetLastError().  Now that my derived UsageEnvironment::getErrno() returns only WSAGetLastError(), the issue is completely gone in all of my regression tests.  With this change I no longer need to override the RTSPClient::connectToServer() method.  In any case, thank you for pointing me in the right direction and I apologize for any 'API Change Request' abuse I may have incurred.

-karl

> > I can 'remedy' this problem by making RTSPClient::connectToServer()
> > virtual and using makeSocketBlocking() with an arbitrary timeout and
> > then makeSocketNonBlocking() after successful return from
> > RTSPClient::connectToServer().  I understand that this probably
> > violates the license agreement
>
> No, modifying the supplied code does not violate the LGPL license,
> *provided that* you distribute your modifications along with your
> product (and, of course, comply with the other terms of the LGPL); see
>       http://live555.com/liveMedia/faq.html#copyright-and-license
> <http://live555.com/liveMedia/faq.html#copyright-and-license>
>
> However?
>
> > I ask: Is there a way that live555 could be modified by making
> RTSPClient::connectToServer a virtual method?
>
> OK, in the current (just released) version of the ?LIVE555 Streaming
> Media? code (version 2015.06.21), I have changed this member function
> to be virtual.
>
> I encourage you, however, to first try to track down the actual cause
> of this bug, rather than simply trying to ?work around? it.  The bug
> may well end up being something other than a bug in your Windows
> libraries, and/or may be masking a more serious problem somewhere.
>
> Ross Finlayson
> Live Networks, Inc.
> http://www.live555.com/
>


This message and any attachments are solely for the use of intended recipients. The information contained herein may include trade secrets, protected health or personal information, privileged or otherwise confidential information. Unauthorized review, forwarding, printing, copying, distributing, or using such information is strictly prohibited and may be unlawful. If you are not an intended recipient, you are hereby notified that you received this email in error, and that any review, dissemination, distribution or copying of this email and any attachment is strictly prohibited. If you have received this email in error, please contact the sender and delete the message and any attachment from your system. Thank you for your cooperation



More information about the live-devel mailing list