[Live-devel] Socket creation issue with android-ndk-r15c and above.
Kuldeep More
kuldeep.more at intelli-vision.com
Sun Feb 25 23:45:56 PST 2018
Hello Ross,
Which specific piece of the code that implements the
“setupDatagramSocket()” function (lines 96 to 175 of
“groupsock/GroupsockHelper.cpp” is failing, and why. Remember, You Have
Complete Source Code.
I got the line which was causing the issue actually it is not the line it
is code block
#if defined(__WIN32__) || defined(_WIN32)
// Windoze doesn't properly handle SO_REUSEPORT or IP_MULTICAST_LOOP
#else
#ifdef SO_REUSEPORT
if (setsockopt(newSocket, SOL_SOCKET, SO_REUSEPORT,
(const char*)&reuseFlag, sizeof reuseFlag) < 0) {
socketErr(env, "setsockopt(SO_REUSEPORT) error: ");
closeSocket(newSocket);
return -1;
}
#endif
>From this code I was getting error no *92* and error string
*Protocol not available.*The setsockopt was causing the above issue.
If you look at the code above which is in condition compilation.
Also in the whole code we have not defined SO_REUSEPORT still it was
executing and giving error *setsockopt(SO_REUSEPORT) error: Protocol not
available.*
I don't understand why the above code is executing.
For try out I have commented the above code and guess what I am able to see
steaming on my device which was previously not able to steam.
If you know why this happening please let me know.
Thanks and regards,
Kuldeep More
On Fri, Feb 23, 2018 at 7:11 PM, Ross Finlayson <finlayson at live555.com>
wrote:
>
>
> > On Feb 23, 2018, at 10:36 PM, Kuldeep More <kuldeep.more at intelli-vision.
> com> wrote:
> >
> > Hello Ross,
> >
> > Why is your call to “setupDatagramSocket()” failing?
> >
> > Now I have added some extra logs in “setupDatagramSocket()”.
> > From the logs socket error number I am getting is 92 and error string is
> Protocol not available.
>
> No, what I meant was:
> Which specific piece of the code that implements the
> “setupDatagramSocket()” function (lines 96 to 175 of
> “groupsock/GroupsockHelper.cpp” is failing, and why. Remember, You Have
> Complete Source Code.
>
>
> > Also found that on some devices it is working fine. But on some devices
> it is not working.
>
> By default, the server uses the network interface that’s used for IP
> multicast routing - i.e., the one that has a route for 224.0.0.0/4. (The
> reason for this is that it uses IP multicast to detect its own IP address.)
>
> So, the easiest way to choose a particular network interface is to
> reconfigure your host so that it uses that network interface for IP
> multicast routing. You should be able to do this by running (as root):
> route add 224.0.0.0/4 ip-address-for-that-nic
>
> Ross Finlayson
> Live Networks, Inc.
> http://www.live555.com/
>
>
> _______________________________________________
> live-devel mailing list
> live-devel at lists.live555.com
> http://lists.live555.com/mailman/listinfo/live-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20180226/ba6bbbec/attachment.html>
More information about the live-devel
mailing list