John,

I found a similar issue on OS X when sending data. The fix is the same as
in bind.

PTAL: https://gerrit.iotivity.org/gerrit/2153

Tested on linux & osx.

Thanks, Sakari

On 8/5/15, 18:24, "Light, John J" <john.j.light at intel.com> wrote:

>Sakari,
>
>Perhaps I should read all my mail before answering. :-)
>
>Your brute force fix doesn't work on Linux because struct sockaddr isn't
>large enough to contain a struct sockaddr_in6.
>
>I suspect the problem is really that IOS is being obsessive about the
>length arguments for bind and/or getsockname.
>
>Please try the attached patch.  It starts in CreateSocket where you
>started and replaces to the end.
>
>John
>
>-----Original Message-----
>From: Poussa, Sakari
>Sent: Wednesday, August 05, 2015 3:30 AM
>To: Poussa, Sakari; Light, John J; iotivity-dev at lists.iotivity.org
>Subject: Re: [dev] Help requested verifying C SDK samples
>
>Hi,
>
>I investigated a bit more.
>
>The ocserver (on Mac) is failing to bind (Invalid argument) in
>CACreateSocket (caipserver.c).
>
>The brute force fix was to :
>
>    //struct sockaddr_storage sa = { family };
>    struct sockaddr sa = { family };
>
>With this fix, the ocserver binds correctly to the address/port. So the
>issue is the incorrect use of sockaddr_storage on OSX which I guess is
>related to the IPv6 and CA integration.
>
>
>Sakari
>
>
>
>On 8/5/15, 10:43, "iotivity-dev-bounces at lists.iotivity.org on behalf of
>Poussa, Sakari" <iotivity-dev-bounces at lists.iotivity.org on behalf of
>sakari.poussa at intel.com> wrote:
>
>>Hi John,
>>
>>I have few items to report about the C SDK samples. I am mainly on Mac
>>but comparing the results also on Linux (Ubuntu).
>>
>>  *   The C SDK samples do not work on master or 0.9.2-RC3 (on Mac). The
>>issue seems to be the ocserver does not start to listen the sockets.
>>  *   These used to work at least on
>>(809b1b1e9be15724a6d756b403328a95894e639f) master on Jul 4. On that
>>version I can see that the ocserver start to listen the sockets
>>
>>ocserver  81531 spoussa    3u  IPv4 0x4ddee3f17b4c4495      0t0  UDP
>>10.237.68.32:6298
>>
>>ocserver  81531 spoussa    4u  IPv4 0x4ddee3f17b4483dd      0t0  UDP
>>224.0.1.187:5683
>>
>>  *   However, on master/RC3 I don?t see the ocserver on that (lsof)
>>listing.
>>
>>All of the above works on Linux. I have not applied your changeset
>>(1963). Do you suspect that to fix my issues?
>>
>>Any glues what broke the C SDK samples on Mac?
>>
>>Thanks, Sakari
>>
>>
>>From: 
>><iotivity-dev-bounces at lists.iotivity.org<mailto:iotivity-dev-bounces at li
>>sts .iotivity.org>> on behalf of "Light, John J"
>><john.j.light at intel.com<mailto:john.j.light at intel.com>>
>>Date: Monday, August 3, 2015 at 23:31
>>To: 
>>"iotivity-dev at lists.iotivity.org<mailto:iotivity-dev at 
>>lists.iotivity.org>"
>><iotivity-dev at lists.iotivity.org<mailto:iotivity-dev at lists.iotivity.org
>>>>
>>Subject: [dev] Help requested verifying C SDK samples
>>
>>A major reason IPv6 capability is declared experimental is that the
>>using it requires application changes when using the C API.  The
>>primary C API examples and tests are located in
>>
>>resource/csdk/stack/samples/linux/SimpleClientServer
>>resource/csdk/stack/samples/linux/secure
>>
>>They built as part of the IP plumbing patch, and they work fine with
>>the new plumbing and adapter, as long as only IPv4 is allowed.
>>However, the stack is designed to run in Dual-Stack mode, which give
>>preference to IPv6, so the samples didn?t work.
>>
>>I ported the samples to handle IPv6 (Change 1963), and they seem to
>>work now, but the samples have lots of options and it?s not always
>>clear whether they are working.
>>
>>I am asking for help from knowledgeable individuals to further test the
>>samples.  I assume Sachin or someone on the large security team will
>>test the secure version (second line), and I am looking for people
>>familiar with occlient, occlientbasicops, occlientcoll, and
>>occlientslow to test them.
>>
>>I made no changes to the server samples (they just work, I think).
>>
>>Applying Change 1963 will give you the new samples as well as enable
>>Dual-Stack (IPv6 and IPv4) operation.
>>
>>Thank you in advance for your assistance.  Please report problems as
>>comments to Change 1963.
>>
>>John Light
>>Intel OTC OIC Development
>>
>>_______________________________________________
>>iotivity-dev mailing list
>>iotivity-dev at lists.iotivity.org
>>https://lists.iotivity.org/mailman/listinfo/iotivity-dev
>

Reply via email to