iotivity.git
17 months ago[IOT-2899][ES] Notifying collection's observers. 55/23355/1
Senthil Kumar G S [Mon, 20 Nov 2017 06:40:09 +0000 (12:10 +0530)]
[IOT-2899][ES] Notifying collection's observers.

When there is an update in the properties of child resources
(WifiConf, CloudConf) of collection(EasySetup),
a notification should be sent to EasySetup's observers.

Change-Id: I9d4d4ab0b0f7e21995d29376819e014c90408d9c
Signed-off-by: Senthil Kumar G S <senthil.gs@samsung.com>
17 months agoFix arm64-v8a build errors 35/23235/2
George Nash [Wed, 15 Nov 2017 23:21:57 +0000 (15:21 -0800)]
Fix arm64-v8a build errors

Change-Id: Iecff451094731616bbab6b680954e0ec333a61a3
Signed-off-by: George Nash <george.nash@intel.com>
17 months agoignore: android ouput files 07/23207/2
Philippe Coval [Wed, 15 Nov 2017 11:57:13 +0000 (12:57 +0100)]
ignore: android ouput files

Change-Id: Ie54313a0437c8bdffe2d0c6484524a1fc6775f7d
Bug: https://jira.iotivity.org/browse/IOT-1745
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
17 months agoRevert "[IOT-2761] Multiple CAs allowed" 29/23229/1
Nathan Heldt-Sheller [Wed, 15 Nov 2017 17:56:05 +0000 (09:56 -0800)]
Revert "[IOT-2761] Multiple CAs allowed"

This reverts commit 7f9d8c71fadc2eb8968e953f78e3b4afce262c52.

22967 caused a regression in the CTT; we'll fix and re-submit
after regression testing.

Change-Id: Ie06cf59b6463072c54b23c61d322bdb7f09cc22f
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
17 months agotizen: Ship resource_directory in main subpackage 33/23133/2
Philippe Coval [Fri, 10 Nov 2017 08:16:56 +0000 (09:16 +0100)]
tizen: Ship resource_directory in main subpackage

It's part of resource, not service.

Bug: https://jira.iotivity.org/browse/IOT-524
Origin: https://gerrit.iotivity.org/gerrit/#/c/23131/
Change-Id: I502591a8db1c48bc21d9dd0b768c46efb353b6c3
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
17 months agobuild: Add linux_full for MOT, RA and SECURED 85/23185/4
Philippe Coval [Wed, 19 Jul 2017 09:34:09 +0000 (11:34 +0200)]
build: Add linux_full for MOT, RA and SECURED

More features could be turned on later

Bug: https://jira.iotivity.org/browse/IOT-2241
Change-Id: Ie58e4f4f54ab08e2f0a7f7273e4e9943f9389534
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21539
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
Reviewed-by: George Nash <george.nash@intel.com>
Reviewed-by: Alex Kelley <alexke@microsoft.com>
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Mats Wichmann <mats@linux.com>
17 months ago[IOT-2815][IOT-2844] 67/22967/20
Oleksandr Dmytrenko [Mon, 23 Oct 2017 14:37:09 +0000 (17:37 +0300)]
[IOT-2815][IOT-2844]

provisioningclient set rowneruuid for all the SVRs

Change-Id: I46df6479aeb313955639df32b7e73c52b14691e0
Signed-off-by: Oleksandr Dmytrenko <o.dmytrenko@samsung.com>
17 months ago[IOT-2761] Multiple CAs allowed 87/22987/4
Oleksii Beketov [Thu, 2 Nov 2017 12:33:38 +0000 (14:33 +0200)]
[IOT-2761] Multiple CAs allowed

Allow to parse all CA certificates when SVR DB
contains more than one root CA.

Change-Id: Ie82632b459a9a064a90ff14e100e4db9ab60492d
Signed-off-by: Oleksii Beketov <ol.beketov@samsung.com>
17 months agoPrepare for scons3: change prints and more 09/22809/4
Mats Wichmann [Thu, 28 Sep 2017 12:51:47 +0000 (06:51 -0600)]
Prepare for scons3: change prints and more

A previous change updated all the scons scripts:

https://gerrit.iotivity.org/gerrit/#/c/22525/

This change picks up the semi-external scripts that are called
by the build, and thus are run in the scons context and need updating.

Print statements are surrounded with parens so they look like function
calls.  This is an scons3 syntax requirement even if still using Python 2.

The old exception format "except FooErr, err" is no longer supported
in Python 3; since the Python 3 format "except FooErr as err" has been
available since Python 2.6, there is no problem switching these and it
makes sense to remove one way things could fail if Py3 is used.

A few comparisons which used <> are changed to the preferred != form.

Reformatted Builder call without changing it, and added a comment in the
forked version to help explain why there are two copies of UnpackAll.py.

With these changes, a full build completes successfully using scons3.0.

Change-Id: Ia8df28d12c6504d6466dcf793779535d1ad3aa8b
Signed-off-by: Mats Wichmann <mats@linux.com>
(cherry picked from commit b34da4aa281cfdf94e6bcbe2e6709773c1ed9de7)

17 months agoDelete links lazily when TTL is reached. 09/22709/6
Habib Virji [Tue, 3 Oct 2017 16:28:50 +0000 (17:28 +0100)]
Delete links lazily when TTL is reached.

Add ttl parameter to RD client APIs.

Bug: https://jira.iotivity.org/browse/IOT-1935
Change-Id: Ic189cebebbcf8127bea1d127dd11a116e09743bb
Signed-off-by: Habib Virji <habib.virji@samsung.com>
Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
17 months ago/pstat Resource CBOR fix 89/23089/7
Nathan Heldt-Sheller [Mon, 6 Nov 2017 12:51:58 +0000 (04:51 -0800)]
/pstat Resource CBOR fix

Fix for a binary->CBOR marshaling case, where payload
is to contain "dos", but not "p".  This in in turns causes
the next Property to be incorrectly placed inside the "dos"
CBOR map (and then skipped over by the CBOR->binary
un-marshaling code).

Also improved logging.

Change-Id: Ib28fc1e30fdaf1e639afa940ee2626ba14e77584
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
17 months agoCherry Pick change to enable building with SCons3 03/23103/2
Ibrahim Esmat [Tue, 19 Sep 2017 23:41:18 +0000 (17:41 -0600)]
Cherry Pick change to enable building with SCons3

Cherry Pick Mats change from master to enable building with SCons 3.0
in 1.3-rel branch. This change and the change in review
https://gerrit.iotivity.org/gerrit/#/c/22809 will be needed to merge
together.

With these 2 changes merged to 1.3-rel, you can successfully build
IoTivity with SCons 3.0. Which will also allow you to build the
UWP versions of the libraries needed for UWP Apps.

Change in master:
Prepare for scons3: change prints and others

In preparation for scons3, recently released, modify remaining print
statements by surrounding them with parens so they look like function
calls. That takes care of the scons3 syntax requirement.

The remaining instances of the sequence "print FOO; Exit(1)" were
changed to "msg = FOO; Exit(msg)" - this helps with the change by
not even using the print statement, and by giving the message to
the output function, it is sent to the error stream rather than
the output stream.

Calls to dictionary keys() and values() are now wrapped in list(),
on Python 3 these return special objects, not the expected list.
That's harmless to Python 2 usage.

The old exception format "except FooErr, err" is no longer supported;
since the Python 3 format "except FooErr as err" has been available
since Python 2.6, there is no problem switching these.

Some instances of using the commands module in extlibs changes to use
subprocess module. Change is transparent.

A couple of instances of filter(lambda ...)) were changes to
a python list comprehension, this is considered preferred for
Python 3 (change was suggested by a conversion tool)

Note on print() change:

  When running with Python2, the print statement is still used. That
  has a bit of an impact: print(a) is just prints the argument, but
  print(a, b, c) is interpreted as printing a tuple (a, b, c), so we
  could see:

  >>> print "This", "is", "a", "test"
  This is a test
  >>> print("This", "is", "a", "test")
  ('This', 'is', 'a', 'test')

  The second is not pretty.  You can make Python2 code use the function
  instead of the statement:

  >>> from __future__ import print_function
  >>> print("This", "is", "a", "test")
  This is a test

  but that's a pain, so the small number of existing prints which
  used a comma as argument separators were updated to use addition,
  so now we're concatenating a string to produce one arg instead
  of supplying multiple "arguments" that would be misinterpreted
  as a tuple in print().  It's fine to add the import statement
  if it's needed.

Change-Id: Idac00e1389b79ee65da4a2eb6ef3246551b66843
Signed-off-by: Mats Wichmann <mats@linux.com>
Signed-off-by: Ibrahim Esmat <iesmat@microsoft.com>
17 months ago[IOT-2874] Do not drop CON duplicated requests 95/23095/4
Veeraj Khokale [Tue, 7 Nov 2017 05:20:44 +0000 (10:50 +0530)]
[IOT-2874] Do not drop CON duplicated requests

According to COAP spec section 4.5, confirmable duplicated
requests should not be silently dropped, instead they need
to be acknowledged every time. Therefore check if message
is confirmable before dropping it.

Change-Id: Ie7a49da9f7869fc11f679054fe8dd5c78684eb53
Signed-off-by: Veeraj Khokale <veeraj.sk@samsung.com>
17 months ago[IOT-2618] Fix filter check for interface query 33/23033/3 1.3.1-RC5
Srikrishna Gurugubelli [Fri, 27 Oct 2017 17:30:43 +0000 (10:30 -0700)]
[IOT-2618] Fix filter check for interface query

Introspection resource was not checking for interface filter properly
resulting in missing mandatory properties expected on baseline interface
query.

Signed-off-by: Srikrishna Gurugubelli <srikguru@microsoft.com>
Change-Id: I920d4a1ecc4442e34fc1de8633291de6f341a123
Bug: https://jira.iotivity.org/browse/IOT-2618

17 months ago[IOT-2879][ES] Handling read-only properties. 85/23085/5
Senthil Kumar G S [Fri, 3 Nov 2017 11:28:22 +0000 (16:58 +0530)]
[IOT-2879][ES] Handling read-only properties.

If a post request comes with read-only properties,
OC_EH_BAD_REQUEST(400) will be sent.

Change-Id: I26cd3f8f7c24f8d197a39ac96a27c80018d62f2a
Signed-off-by: Senthil Kumar G S <senthil.gs@samsung.com>
17 months agoManufacturer certificate based OTM fix 73/23073/3
Oleksii Beketov [Tue, 31 Oct 2017 12:27:23 +0000 (14:27 +0200)]
Manufacturer certificate based OTM fix

Improper callbacks registration removed.
Manufacturer certificate related info and ciphers
callbacks are already set in StartOwnershipTransfer.

Change-Id: Id1cb14cb31e4325d17961737fa87e0224735235a
Signed-off-by: Oleksii Beketov <ol.beketov@samsung.com>
17 months agoFix a build problem on recent linux host 31/23031/4
Mats Wichmann [Fri, 27 Oct 2017 12:42:21 +0000 (06:42 -0600)]
Fix a build problem on recent linux host

Provisioning unittest will not link when pointed at
connectivity_abstraction_insternal due to dependency of other libs on
connectivity_abstraction.  Leads to this error:

/bin/ld: out/linux/x86_64/debug/libroutingmanager.a(routingmanager.o): undefined reference to symbol 'u_linklist_length'
/home/mats/iotivity.work/out/linux/x86_64/debug//libconnectivity_abstraction.so: error adding symbols: DSO missing from command line

It works fine to link against connectivity_abstraction so use that instead.

Other changes in the SConscript are just cleanup.

Change-Id: I47b846111f4bbaee0ce4d38de7d9e8a0ccc3885b
Bug: https://jira.iotivity.org/browse/IOT-2864
Signed-off-by: Mats Wichmann <mats@linux.com>
17 months agoAdapt gcc version-compare to deal with gcc7, py3 17/23017/4
Mats Wichmann [Thu, 26 Oct 2017 16:02:36 +0000 (10:02 -0600)]
Adapt gcc version-compare to deal with gcc7, py3

For gcc starting with 7, gcc -dumpversion returns a single (non
dotted) number. This is actually an illegal version to distutils'
version.StrictVersion, so use LooseVersion instead, where that is a
legal number but the comparison still works fine.

For Python 3.x, subprocess.check_output returns a byte string,
which needs to be decoded before it can be passed to the version
comparator function. Instead of bothering with the decoder, which is
hard to get right so it works for both Py2 and Py3 case, call the new
subprocess.getoutput() method, falling back to check_output if not
available.

Change-Id: I29e1f43f8fbde130103099be1972b574a23442cf
Bug: https://jira.iotivity.org/browse/IOT-2862
Signed-off-by: Mats Wichmann <mats@linux.com>
17 months agoCT1.7.4.5: Reply with error for bad key 43/23043/2
Dan Mihai [Fri, 27 Oct 2017 21:10:26 +0000 (14:10 -0700)]
CT1.7.4.5: Reply with error for bad key

Return an error response when a Client tries to post a role with a
mistmatched public key.

Change-Id: Ie689f862d1534093026979c076239fdf604b91e1
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
17 months agoCT1.7.4.5: New null terminator handling 41/23041/3
Dan Mihai [Fri, 27 Oct 2017 18:44:52 +0000 (11:44 -0700)]
CT1.7.4.5: New null terminator handling

Avoid persisting the cert null terminator, to be able to return the
original cert for RETRIEVE. Add the null terminator just temporarily,
before calling mbedtls_x509_crt_parse().

This patch allows CT1.7.4.5 to make progress past Check_3. This test
case still fails later on - to be investigated.

Change-Id: Icda1afaad478548682599f97ff46b3017b01588e
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
17 months ago[IOT-2843] remove DOXS access to /crl 47/23047/2
Nathan Heldt-Sheller [Sat, 28 Oct 2017 01:05:59 +0000 (18:05 -0700)]
[IOT-2843] remove DOXS access to /crl

Although the Security Spec is silent on whether DOXS has
implicit access (that is, a permanent ACE, or default ACE that
can't be modified) to the /crl Resource.  CTT interprets that
to mean it doesn't have implicit access, even though DOXS
can access related configuration Resources (/doxm, /pstat, /acl2,
/cred).  Rather than fight over it I'm changing because
either way works, it's just more effort for OBT with implicit
access reduced.  Still a reasonable inference (though not
normatively supported).

Change-Id: I86f8a7f1ed217b7bdeb3cae2ab015fb035cd8940
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
17 months agoPlug memory leak in json2cbor 15/23015/4
Mats Wichmann [Thu, 26 Oct 2017 14:12:16 +0000 (08:12 -0600)]
Plug memory leak in json2cbor

In recently introduced code, a pair of temporary buffers is used
to help convert ascii digits to a number; one is a static
allocation but the other is OICMalloc'd, but was not freed.

Change-Id: Iab1e8ce48c20aa6332d375c891f6b38ecb6939e7
Bug: https://jira.iotivity.org/browse/IOT-2863
Signed-off-by: Mats Wichmann <mats@linux.com>
17 months ago[Easy Setup] POST Request Schema Alignment 11/23011/9
Abhishek Pandey [Fri, 27 Oct 2017 15:48:45 +0000 (21:18 +0530)]
[Easy Setup] POST Request Schema Alignment

JIRA IOT-2847: https://jira.iotivity.org/browse/IOT-2847

Updated updateEasySetupResource() to process "rep" property which is
mandatory as per batch schema.

Change-Id: I0371e68106728d375a390ac395c256ea5e2361c6
Signed-off-by: Abhishek Pandey <abhi.siso@samsung.com>
17 months agobuild: Generate iotivity_config.h in build_dir 51/22351/5
Philippe Coval [Thu, 17 Aug 2017 13:48:20 +0000 (15:48 +0200)]
build: Generate iotivity_config.h in build_dir

The file from "out" dir will be also installed to system include path
using scons install (to /usr/include/ on linux)

Bug: https://jira.iotivity.org/browse/IOT-2599
Change-Id: Icddfb9354f47fd40ba998fe336b4963be7ade871
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Origin: https://gerrit.iotivity.org/gerrit/#/c/21989/

17 months ago[IOT-2854][IOT-2858] anon ciphersuite disable 25/23025/5
Nathan Heldt-Sheller [Fri, 27 Oct 2017 04:21:26 +0000 (21:21 -0700)]
[IOT-2854][IOT-2858] anon ciphersuite disable

Right now the /doxm handler code to disable the anon cipher suite is
not correct, so it's removed in this patch.  Instead, the /cred code disables
the anon suite after calculating PSK.

If there is a request is over secure channel, but requester ID
is Nil UUID, then (in current IoTivity at least) it means that this request
arrived over DTLS established via anon cipher suite.  A successful
connection has taken place, and that's an opportunity to disable the anon cipher
suite so no other anon connections can be made during OTM.

For now, we're just removing the incorrect /doxm code to disable,
and leaving the more aggressive disable timing for another release.

See [IOT-2858] for more info.

Change-Id: I99c2a48abbfc6f3e5aa52385ee5b778c4c80ccfc
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
17 months ago[IOT-2826][IOT-2851]dat file with zero rownerid 93/22993/11
akk0rd [Tue, 24 Oct 2017 17:59:45 +0000 (20:59 +0300)]
[IOT-2826][IOT-2851]dat file with zero rownerid

Fixed false generating dat file, added wrapper functions with rowner parameter

Change-Id: Ia8badb9b0b78de5f620f8dbad6f070c1276ebf74
Signed-off-by: akk0rd <v.riznyk@samsung.com>
17 months agoIOT-2826 Update *.dat files for samples 21/23021/2
George Nash [Thu, 26 Oct 2017 18:55:30 +0000 (11:55 -0700)]
IOT-2826 Update *.dat files for samples

Both client and the server used the incorrect encoding
for the certificate data. When the server .dat file was
updated with the fix from
https://gerrit.iotivity.org/gerrit/22535/ I did not
update the client .dat file because I had not made any modifications to the client. This then caused the
certificates to miss match. If I run json2cbor on both the client and the server *.json input files the error no
longer occurs.

Bug: https://jira.iotivity.org/browse/IOT-2826
Change-Id: I8d5acc8a49533b7cca7b5c4f46371e495449aa73
Signed-off-by: George Nash <george.nash@intel.com>
17 months agoIOT-2848 Fix for intermitent read error 19/23019/2
George Nash [Thu, 26 Oct 2017 18:07:03 +0000 (11:07 -0700)]
IOT-2848 Fix for intermitent read error

Valgrind was reporting intermitent read errors
from the provisiontest. I think the result of the
failure was a change made for IOT-2599 the name
of the tests db file was changed from ./dbpath
to ./dbpath.tmp however the name of the file was
used in more than one test.
See: https://gerrit.iotivity.org/gerrit/#/c/22057/

Bug: https://jira.iotivity.org/browse/IOT-2848
Bug: https://jira.iotivity.org/browse/IOT-2599
Change-Id: Id72a07b51aee10abe34a428239ca74dfbf7a2641
Signed-off-by: George Nash <george.nash@intel.com>
17 months agoReturn one error response from RD server. 25/22325/4
Todd Malsbary [Tue, 5 Sep 2017 18:59:16 +0000 (11:59 -0700)]
Return one error response from RD server.

Bug: https://jira.iotivity.org/browse/IOT-2684
Change-Id: I183ad1a588f3646bd0dc3b370c16cf359552f3eb
Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
17 months agoFixing Build Errors after applying -Werror 09/23009/6
Abhishek Pandey [Thu, 26 Oct 2017 08:43:31 +0000 (14:13 +0530)]
Fixing Build Errors after applying -Werror

JIRA IOT-2845: https://jira.iotivity.org/browse/IOT-2845

This seems to be side effect of JIRA [IOT-2539]. Build is
breaking on some linux platforms (i.e. i686). Most
compilation errors are related to printf format
specifiers. Probably this wasn't caught by jenkins
when merging patch for IOT-2845 due to its system
configuration matches expected size for all data types.

Fixed the error by using portable format specifiers while
logging.

%PRId - for int64_t
%PRIu - for unit64_t
%PRIuPTR - for size_t (unsigned)

Change-Id: I30a21cacdddc84776392100ee783ccbe7e1eae0d
Signed-off-by: Abhishek Pandey <abhi.siso@samsung.com>
17 months ago[IOT-2810] [RE] Static Analysis fix for CPP SDK. 65/22865/2
Jay Sharma [Tue, 17 Oct 2017 12:13:53 +0000 (17:43 +0530)]
[IOT-2810] [RE] Static Analysis fix for CPP SDK.

1. Indentation fixes.
2. Uninitialized variable fixes

Bug: https://jira.iotivity.org/browse/IOT-2810
Change-Id: Ibccf1bc11e590cf1b282e77cac3a9901ccf29fa2
Signed-off-by: Jay Sharma <jay.sharma@samsung.com>
17 months agoChange OICFree to NSOICFree in notification 99/20899/6
jake [Tue, 28 Mar 2017 05:53:21 +0000 (14:53 +0900)]
Change OICFree to NSOICFree in notification

 - Be used OICFree without NULL checking.

[Philippe Coval]

Conflicts:
service/notification/src/provider/NSProviderSubscription.c

Change-Id: I1ce65d0e41a3b9f276a2b517d7b3d1c06faa92e6
Signed-off-by: jake <jaehong2.lee@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/18239
Reviewed-by: JungYong KIM <jyong2.kim@samsung.com>
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Phil Coval <philippe.coval@osg.samsung.com>
Reviewed-by: Uze Choi <uzchoi@samsung.com>
(cherry picked from commit acbf9ffd474b3151a1fc5ea6337b4ad53cc1a081)

17 months agoCT1.7.4.5: Avoid DER key parse error 05/23005/3
Dan Mihai [Thu, 26 Oct 2017 03:09:48 +0000 (20:09 -0700)]
CT1.7.4.5: Avoid DER key parse error

mbedtls_pk_parse_key was not able to parse the key converted to DER
by GetDerKey(). It encountered in the DER an unexpected key format
version.

However, mbedtls_pk_parse_key is able to parse correctly the original
PEM format of the same key.

This patch allows CT1.7.4.5 to establish a connection to an IoTivity
server. This test case still fails later on - to be investigated.

Change-Id: I933ea9d3b761ed159faa2c4f371890e477caf23f
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
17 months ago[IOT-2843] remove SVR restore behavior 03/23003/3
Nathan Heldt-Sheller [Thu, 26 Oct 2017 03:06:56 +0000 (20:06 -0700)]
[IOT-2843] remove SVR restore behavior

These functions were applied at incorrect times (e.g. if a normal
Update was rejected due to read-only properties during OTM, the entire
system would "restore" to a wrong state).  They were also wrong,
in that they restored some values, left others unchanged, and set
others to wrong values (e.g. presumed JustWorks OTM).

Also, the duplicate message logic was not being used to any consistent
effect and causing warnings.  It's also completely optional and so was
removed.

Change-Id: I23d23f946fbafe02cdc2d2ac6ac46abcedd1f149
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
17 months agoIOT-2838 Fix javadoc warnings 77/22977/3
George Nash [Mon, 23 Oct 2017 23:31:59 +0000 (16:31 -0700)]
IOT-2838 Fix javadoc warnings

Documented all the functions referencing the native code.

Note the OcProvisioning setPinType method had a return value
int. The was returning the return value of the native call
that was the status. Due to the way the code was writen the
only value that could be returned was when things worked as
expected. All other values were thrown so the return value
was un-needed. The function was changed to have a return type
of void.

Bug:https://jira.iotivity.org/browse/IOT-2838
Change-Id: I3b5955a336661574dde9f70c87b6ead3dcd5ea7b
Signed-off-by: George Nash <george.nash@intel.com>
17 months agoIOT-2539 Enable the -Werror build flag 11/22811/16
George Nash [Thu, 12 Oct 2017 23:08:53 +0000 (16:08 -0700)]
IOT-2539 Enable the -Werror build flag

The coding standard states:
Code must compile with no warnings. Without flags
forcing warnings off.
see:
https://wiki.iotivity.org/iotivity_c_coding_standards

Its possible that using an untested version of gcc could
result in build warings that are not yet fixed. For this
reason the build option ERROR_ON_WARN was added to make
it possible to turn off the -Werror flag. This should
only be used locally an not changed on the CI build.

Due to some bugs in older version of gcc some warnings
are forced off when using an older version of gcc.

This change will force code to follow the coding
standard of building with no warnings.

The coapHttpParser code produces a build warning
that currently is not solved. When building the
coap_http_proxy library the -Werror build flag is
removed.

Don't use the -Werror build option for extlib yaml
code.

Don't use the -Werror build option for coap library

Change-Id: Ifcc25ed7e5b8637ac4383a7bfa51ace105ed9458
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2830] add PSK callback logging 53/22953/6
Nathan Heldt-Sheller [Mon, 23 Oct 2017 06:48:32 +0000 (23:48 -0700)]
[IOT-2830] add PSK callback logging

See JIRA IOT-2830 for more information.

Change-Id: If043f6705ccdede4630b469c13e1933a2b53af16
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agoIOT-2455 Add missing files to javadoc 75/22975/3
George Nash [Mon, 23 Oct 2017 22:03:55 +0000 (15:03 -0700)]
IOT-2455 Add missing files to javadoc

Bug: https://jira.iotivity.org/browse/IOT-2455
Change-Id: I1415ec047ebc8ce4f2679b8789a104c627ec2db4
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2837] Enable IoTivity build on Raspbery pi 79/22979/2
Rami Alshafi [Mon, 23 Oct 2017 22:53:01 +0000 (15:53 -0700)]
[IOT-2837] Enable IoTivity build on Raspbery pi

The default arch for the raspberry pi board is either armv6l or
armv7l depending on board hardware version. Neither of them are
included in the valid values for the TARGET_ARCH build option.
The current workaround is to pass TARGET_ARCH=arm to the build
command. This change will enable the default arch.

Change-Id: I7f07734f5e06d79d13275254fb01f924227e229a
Signed-off-by: Rami Alshafi <ralshafi@vprime.com>
18 months agoBuild and print fix 33/22033/17
Oleh Vasyliev [Tue, 10 Oct 2017 11:02:52 +0000 (07:02 -0400)]
Build and print fix

Change-Id: Ie7b0a00963b22ee1189918ed67ed64ae05f500cf
Signed-off-by: Oleh Vasyliev <o.vasyliev@samsung.com>
18 months ago[IOT-2821] Fix /doxm Update handling 51/22951/7
Nathan Heldt-Sheller [Sun, 22 Oct 2017 23:27:25 +0000 (16:27 -0700)]
[IOT-2821] Fix /doxm Update handling

The Update handler is still doing things such as
self-updating /doxm.rowneruuid or /doxm.owned.  Also, the
logic for determining OTM start/stop is wrong.  This patch
cleans up the JustWorks flow as a template, and the same
fix will be applied to Random PIN and Cert-based once
verified and reviewed.

Change-Id: Ieb68911de87cf816597352aec760b3ef85baa87d
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months ago[IOT-2835] reset /cred.rowneruuid 73/22973/2
Nathan Heldt-Sheller [Mon, 23 Oct 2017 15:54:19 +0000 (08:54 -0700)]
[IOT-2835] reset /cred.rowneruuid

The fix to /cred.rowneruuid (from many to one) means we have to reset the
single global rowneruuid also.

Change-Id: I309e5bfe9926290785d4943d2b9358fc06448a20
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months ago[IOT-2827] Fix For OCProvisionACL Bug 29/22929/2
imtiaz.h [Fri, 20 Oct 2017 06:00:00 +0000 (12:00 +0600)]
[IOT-2827] Fix For OCProvisionACL Bug

1. for selectedDeviceInfo = NULL api returns OC_STACK_INVALID_PARAM

Change-Id: Idb316438a76d70fcc7a91a2e119aadd0c771bde7
Signed-off-by: imtiaz.h <imtiaz.h@samsung.com>
18 months ago[IOT-2833]Sync java ESResult with C++ one. 65/22965/1 1.3.1-RC4
Harry [Mon, 23 Oct 2017 12:23:03 +0000 (17:53 +0530)]
[IOT-2833]Sync java ESResult with C++ one.

Java ESResult is not in sync with C++ SDK ESResult
enum values.

Change-Id: I0ab0e1ba88858fc8c511a56d046d40c1708760cd
Signed-off-by: Harry <h.marappa@samsung.com>
18 months ago[IOT-2806] patch 22855 overwritten mistakenly 49/22949/3
Nathan Heldt-Sheller [Fri, 20 Oct 2017 23:54:15 +0000 (16:54 -0700)]
[IOT-2806] patch 22855 overwritten mistakenly

A recent patch over-wrote the fix to 2806 (patch 22855)
so this is just a re-creation of 22855.  However gerrit
can't figure out how to re-apply 22855, and I don't know how to
force it, so I'm just creating a new patch.

Change-Id: I5c4b67a3cdfa1f9a4368fc8f7b24203da1644524
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agoIOT-2539 clean unused-result warnings 23/22923/3
George Nash [Thu, 19 Oct 2017 20:35:05 +0000 (13:35 -0700)]
IOT-2539 clean unused-result warnings

the -Werror=unused-result is due to not checking the return
value when using scanf. This error is specific to certan
versions of the compiler and may not occure on all systems.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Ifcaa05f7f7df69da84bd3a514ad3f29a63955b02
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoSync CACloneResponseInfo with CAResponseResult_t. 81/22881/2
Todd Malsbary [Tue, 17 Oct 2017 21:21:50 +0000 (14:21 -0700)]
Sync CACloneResponseInfo with CAResponseResult_t.

Bug: https://jira.iotivity.org/browse/IOT-2819
Change-Id: I43631fe750b529b6e90dd625c160717c854a2100
Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
18 months agoresource: Enable OCRepresentationSubscript test 25/21825/11
Ziran Sun [Tue, 23 Aug 2016 15:05:50 +0000 (16:05 +0100)]
resource: Enable OCRepresentationSubscript test

Retest OCRepresentationSubscript.Boolean unit test.

Change-Id: Ibe291d4b0f6371235ba7397b186a87ef8939beab
Signed-off-by: Ziran Sun <ziran.sun@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/10811
Reviewed-by: Phil Coval <philippe.coval@osg.samsung.com>
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Ashok Babu Channa <ashok.channa@samsung.com>
(cherry picked from commit fa632fb35a6670da9ffd4cdfd1bc2da5592cd629)

18 months agoIOT-2539 Fix warnings in routing code 35/22935/2
George Nash [Fri, 20 Oct 2017 20:04:01 +0000 (13:04 -0700)]
IOT-2539 Fix warnings in routing code

Fixed -Werror=unused-const-variable= found in
routingtablemanager.c the USECS_PER_SEC was not
used anywhere and was removed.

Fixed -Werror=format= found in routingmanager.c
current time is a uint64 from inttypes.h
%llu is long long unsigned.

C99 spec suggests the type long long int should
be at least 64 bits but may be more.  On some
platfroms it might be 128-bits. In printf %lld
could be interpreted as 64-bits or 128-bits which
could result in undefined behavior.

The PRIu64 macro from inttypes will always be interpreted
as 64-bits by printf.

Change-Id: Iaf45d5a8382c4af8f3db973700db1d90b4472cc1
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoIOT-2539 clean unused-function in caleadapter.c 33/22933/1
George Nash [Fri, 20 Oct 2017 19:46:07 +0000 (12:46 -0700)]
IOT-2539 clean unused-function in caleadapter.c

The static functions:
  CAInitLEServerQueue
  CAInitLEServerReceiverQueue
  CAInitLEServerSenderQueue
  CALEServerDataReceiverHandler
  CALEServerSendDataThread

Are all only called if both ROUTING_GATWAY and
SINGLE_THREAD are not defined. When the are not
called gcc will produce the -Werror=unused-function
warning.

Rather than spatering the macros all over the file
I moved all of the functions into a single block

The code in the functions are not modified.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Ic15e4e91028b87fb8d2680f2e64c724d1fae25cc
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2821] implicit access for DOXS, AMS and CMS 21/22921/4
Nathan Heldt-Sheller [Thu, 19 Oct 2017 20:23:07 +0000 (13:23 -0700)]
[IOT-2821] implicit access for DOXS, AMS and CMS

There are a few cases of missing implicit access that are
added by this patch:
1) DOXS has access to all SVRs
2) AMS and CMS have access to /pstat

Change-Id: I7eebc86c88b392dc2a6447c64f3a216afee70b19
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agoRelocate rd-mode-dependent functions in .def files 05/21505/8
Gabriel Schulhof [Tue, 11 Jul 2017 20:52:25 +0000 (23:52 +0300)]
Relocate rd-mode-dependent functions in .def files

OCBindResourceInsToResource and OCGetResourceIns are only defined if
RD_MODE is either "client" or "server", but not if it is "none". Thus,
octbstack_product.def must not include those functions.

Bug: https://jira.iotivity.org/browse/IOT-2500
Change-Id: I88bbf033006e82d1655d39d7f3127a1e40a1d4e7
Signed-off-by: Gabriel Schulhof <gabriel.schulhof@intel.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21395
Reviewed-by: Alex Kelley <alexke@microsoft.com>
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
(cherry picked from commit f4fb7430a9b9a6601b80634d96b8a08fed42802b)

18 months agoIOT-2539 clean unused-function in caleadapter.c 83/22883/4
George Nash [Tue, 17 Oct 2017 21:25:20 +0000 (14:25 -0700)]
IOT-2539 clean unused-function in caleadapter.c

The CAInitLEServerQueues functions was moved
moved within the ifndef SINGLE_THREAD macros
since that is the only time the function is
used.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Ic942b096eb5bffd2ac17b613afebbfa947a158b7
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoFix typo causing build break for TARBZ 25/22925/2
Dan Mihai [Thu, 19 Oct 2017 20:39:48 +0000 (13:39 -0700)]
Fix typo causing build break for TARBZ

Change-Id: I91e0210a03683041600ff26e3fd09b5bde19123d
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
18 months ago[IOT-2726][IOT-2107] doxm POST handler fix 19/22619/19
Oleksandr Dmytrenko [Wed, 27 Sep 2017 11:59:06 +0000 (14:59 +0300)]
[IOT-2726][IOT-2107] doxm POST handler fix

Fixed doxm POST handler modifies values without request from OBT

Change-Id: I4631063002ebf830160b772f55c9a9f139b78dbc
Signed-off-by: Oleksandr Dmytrenko <o.dmytrenko@samsung.com>
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
18 months agoIOT-2539 clean unused-function in credresource.c 79/22879/3
George Nash [Tue, 17 Oct 2017 21:14:53 +0000 (14:14 -0700)]
IOT-2539 clean unused-function in credresource.c

When built with build option SECURED=0 some functions
are no longer used due to preprocessor macros.

The functions WithinBounds and IsEmptyCred were moved
within the
if defined(__WITH_DTLS__) || defined(__WITH_TLS__)
macro

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: I9c0e3fa57dee5531bd9661216f2b5160fb002f33
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoIOT-2443 Fix simpleserver acls for non-secure 15/22915/2
George Nash [Wed, 18 Oct 2017 22:47:29 +0000 (15:47 -0700)]
IOT-2443 Fix simpleserver acls for non-secure

Fix the simplerserver acls so the non-secure run
option will also work as well as the secure option.

Bug: https://jira.iotivity.org/browse/IOT-2443
Change-Id: I27b8aaf3db0ece5ad08a16d451cecb26fe8cd3a7
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2820] make /pstat.dos.p read-only 95/22895/3
Nathan Heldt-Sheller [Wed, 18 Oct 2017 05:59:59 +0000 (22:59 -0700)]
[IOT-2820] make /pstat.dos.p read-only

The Parameter "p" in the /pstat "dos" Property is meant
to be read-only in every Device Onboarding State.  This
fixes the Update handler to treat "p" as read-only.  It
also fixes the pstat->CBOR marshaling code to provide the
option to omit "p". And it updates the provisioningclient
code to omit "p" from Updates to /pstat.

Change-Id: I25a92bd33e5476d7d5896021e42102762deb6c31
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agoWindows: Avoid using NULL event handle 05/22905/2
Dan Mihai [Wed, 18 Oct 2017 15:36:50 +0000 (08:36 -0700)]
Windows: Avoid using NULL event handle

Avoid using NULL event handle during catests.

Change-Id: I7e7d2ef95e8141082f7694735f20a77d773b42b4
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
18 months agoIOT-2539 Fix -Wmissing-field-initializers 91/22891/2
George Nash [Tue, 17 Oct 2017 22:57:15 +0000 (15:57 -0700)]
IOT-2539 Fix -Wmissing-field-initializers

Fix the missing-field-initializers warning in the
simulator code. OCDeviceInfo contains four
values not two.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Ifab39f7a5eb054eeb301cece2123e9cc6d19011c
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoresource-directory: free unusued endpoints 69/22069/10
Philippe Coval [Tue, 22 Aug 2017 08:56:42 +0000 (10:56 +0200)]
resource-directory: free unusued endpoints

Fix ~2Kb MLK in rd_client.c:

  2,208 bytes in 1 blocks are definitely lost in loss record 1,056 of 1,061

  oic_malloc.c:102: OICCalloc
  cainterfacecontroller.c:643: CAGetNetworkInfo
  canetworkconfigurator.c:297: CAGetNetworkInformationInternal
  caconnectivitymanager.c:298: CAGetNetworkInformation
  rd_client.c:266: RDPublishPayloadCreate
  rd_client.c:383: OCRDPublishWithDeviceId
  rd_client.c:139: OCRDPublish
  rdtests.cpp:253: RDTests_RDPublishMultipleResources_Test::TestBody()

It was detected in:
https://gerrit.iotivity.org/gerrit/#/c/22005/

Bug: https://jira.iotivity.org/browse/IOT-1684
Change-Id: I5c59f998a5b1f616fbcde27d3a215694c5bd0422
Origin: https://gerrit.iotivity.org/gerrit/#/c/22051/
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/22051
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Larry Sachs <larry.j.sachs@intel.com>
Reviewed-by: Mats Wichmann <mats@linux.com>
Reviewed-by: Habib Virji <habib.virji@samsung.com>
Reviewed-by: Ashok Babu Channa <ashok.channa@samsung.com>
(cherry picked from commit 3a7fb5418f8276d80bf8d83ba2db1c0dd6cfb665)

18 months agoDelete client callback with OCCancel. 93/22093/7
Jaehong Jo [Tue, 23 May 2017 05:44:50 +0000 (14:44 +0900)]
Delete client callback with OCCancel.

Change-Id: I3bde95b535fcbfd3290a7b9ae0610c3e9333be7a
Signed-off-by: Jaehong Jo <jaehong.jo@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/20299
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
(cherry picked from commit 94429e77972ccabbbaed53a850d4de27fa56de9c)

18 months agoIOT-2539 Clean -Wunused-parameter simulator 89/22889/2
George Nash [Tue, 17 Oct 2017 22:22:54 +0000 (15:22 -0700)]
IOT-2539 Clean -Wunused-parameter simulator

Remove the unused-parameter warning from the simulator code

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Id1c3757e41443ae53126ac1ef1117e387f564327
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoIOT-2539 Fix -Wswitch simulator 93/22893/2
George Nash [Tue, 17 Oct 2017 23:20:04 +0000 (16:20 -0700)]
IOT-2539 Fix -Wswitch simulator

Fixed the switch warning in the simulator code.

In the request_model_builder the other posible values
for the switch are not expected if they occure print
an error and exit assert. Just in case it is a release
build an empty string is returned.

In simulatory_utils the un-handled case statments were
added to the switch.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Iebb79bd22410727c65c33ed73ec8704a1b8a33a4
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2789]Fix for NS sample crash 99/22899/3
abitha.s [Wed, 18 Oct 2017 09:02:47 +0000 (14:32 +0530)]
[IOT-2789]Fix for NS sample crash

Change-Id: I4aa2f68b36b70946c0bcee0e9da04feef596ea85
Signed-off-by: abitha.s <abitha.s@samsung.com>
18 months agocsdk: Update OCByteStringCopy documentation 79/22779/2
Philippe Coval [Mon, 2 Oct 2017 16:20:56 +0000 (18:20 +0200)]
csdk: Update OCByteStringCopy documentation

Bug: https://jira.iotivity.org/browse/IOT-2450
Change-Id: Ie747f5512d12f782a3331c8eaf00984a63605b85
Origin: https://gerrit.iotivity.org/gerrit/#/c/22695/
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
18 months agoresource-container: Enable -Wnoexcept for g++ only 61/22061/5
Philippe Coval [Thu, 20 Jul 2017 12:10:12 +0000 (14:10 +0200)]
resource-container: Enable -Wnoexcept for g++ only

As not supported on clang-3.5

Bug: https://jira.iotivity.org/browse/IOT-1745
Change-Id: I7bb4f53a0a0e2eba56e670f87ac163a211173fb6
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21561
Reviewed-by: George Nash <george.nash@intel.com>
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
(cherry picked from commit 99bfbb05a96d13baf3df4bf19cfde58eef87aefe)

18 months agoresource-encapsulation: boost as lib header 19/21819/15
Philippe Coval [Wed, 17 May 2017 14:26:23 +0000 (16:26 +0200)]
resource-encapsulation: boost as lib header

This change is harmless and done to test build process

Bug: https://jira.iotivity.org/browse/IOT-2279
Change-Id: Ia8889790f19d6e02a0fc5c2d857ac19e717e2ec4
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/19987
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
(cherry picked from commit 68649b7a1709bb25ffe8cba4779d92bdeee9a7ae)

18 months agoresource-encapsulation: Workaround test for clang 57/22657/2
Philippe Coval [Thu, 30 Mar 2017 12:30:19 +0000 (14:30 +0200)]
resource-encapsulation: Workaround test for clang

Bypass the part which is crashing clang-3.5, and use reference

Change-Id: I8578509cb642be5d8dbaf1d5fbcdd944377b0fc8
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
18 months ago[IOT-2810][IS]Static analysis coding style issues 03/22903/4
Harry [Wed, 18 Oct 2017 15:28:46 +0000 (20:58 +0530)]
[IOT-2810][IS]Static analysis coding style issues

Changes are mostly related to indentation, adding curly
braces to single line conditional blocks.

Change-Id: I4fcade68805dc3c1a6970a34683e519708a609f7
Signed-off-by: Harry <h.marappa@samsung.com>
18 months ago[IOT-2810][ES]Static analysis coding style issues 67/22867/3
Harry [Tue, 17 Oct 2017 12:53:19 +0000 (18:23 +0530)]
[IOT-2810][ES]Static analysis coding style issues

Changes are mostly related to indentation, catching
exception by reference-to-const.

Change-Id: I3aa27b58f507551ed2ed677c4b2c89b151b87bf3
Signed-off-by: Harry <h.marappa@samsung.com>
18 months agoEnable just the appropriate OTM 75/22875/2
Dan Mihai [Tue, 17 Oct 2017 18:30:30 +0000 (11:30 -0700)]
Enable just the appropriate OTM

Don't enable Just Works for the Random PIN sample, etc.

Change-Id: I2109a1f8be41bef4c1672a35cfcffeb49ce28290
Signed-off-by: Dan Mihai <Daniel.Mihai@microsoft.com>
Bug: https://jira.iotivity.org/browse/IOT-2818

18 months agoIOT-2824 Remove doxygen warnings 13/22913/1
George Nash [Wed, 18 Oct 2017 21:12:18 +0000 (14:12 -0700)]
IOT-2824 Remove doxygen warnings

Remove doxygen warnings reproted from pkix_interface.h

Bug: https://jira.iotivity.org/browse/IOT-2824
Change-Id: I6640a1fc4037e34fd3fbb60d5c737d1f111c4548
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoIOT-2539 Fix format warning 73/22873/2
George Nash [Tue, 17 Oct 2017 17:38:16 +0000 (10:38 -0700)]
IOT-2539 Fix format warning

C99 spec suggests the type long long int should
be at least 64 bits but may be more.  On some
platfroms it might be 128-bits. In printf %lld
could be interpreted as 64-bits or 128-bits

To fix this the PRId64 macro from inttypes can
be used.

Bug: https://jira.iotivity.org/browse/IOT-2539
Bug: https://jira.iotivity.org/browse/IOT-2817
Change-Id: Ie25ea50630f97b4dde866d8042af1567b18522d9
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoEnable self link in collections 47/22747/8
Abhishek Pandey [Thu, 12 Oct 2017 13:18:40 +0000 (18:48 +0530)]
Enable self link in collections

JIRA IOT-2742 https://jira.iotivity.org/browse/IOT-2742

- Enabled support for self link in collections.
- API OCLinksPayloadArrayCreate() modified to allow self links.
- New parameter (bool) in the API now allows to have a self link with
  "rel":["self", "item"], in links array as per OCF Core Spec.

Change-Id: I1f2e02dd33c993dc4b28fbc447b8d286c1f7f804
Signed-off-by: Abhishek Pandey <abhi.siso@samsung.com>
18 months ago[EasySetup] Fix links in baseline & ll response 29/22629/10
Ankur Bansal [Thu, 14 Sep 2017 05:35:10 +0000 (11:05 +0530)]
[EasySetup] Fix links in baseline & ll response

Update oic.r.easysetup baseline and link list response to correctly fill
links property.
Use OCLinksPayloadArrayCreate API to create the links payload for batch
& link list interface. OCLinksPayloadArrayCreate API internally takes
care of creating the most part of payload based on the properties of the
resource. This will replace the logic of creating each property of links
payload for each of the easy setup resources from the code.
In link list interface response, add handling for both OCF & OIC
response (for backward compatibility).

Bug:https://jira.iotivity.org/browse/IOT-2711

Change-Id: I46ca2e2d635cb78e8c7fc7c5ef95d9e16327abb9
Signed-off-by: Ankur Bansal <ankur.b1@samsung.com>
(cherry picked from commit 787a73bd227c69e313145ec978ee96769fa31112)

18 months ago[IOT-2710][IOT-2806] fix /pstat Update handler 55/22855/3
Nathan Heldt-Sheller [Tue, 17 Oct 2017 03:34:26 +0000 (20:34 -0700)]
[IOT-2710][IOT-2806] fix /pstat Update handler

The way CBOR->/pstat binary is written, the Properties in the
current gPstat are added to the binary representation even if
the CBOR payload doesn't contain that Property. This may be ok
in most cases since it means that (if a Property is omitted)
the gPstat value won't be changed from whatever it is.
But this also means that if /pstat.dos.s is Updated,
the /pstat.dos.s Property Update must be done after all other
Properties, so that if a /pstat.dos.s update changes other
/pstat Properties, the new values aren't subsequently overwritten.

Change-Id: I07369355ec3141c40b5178cae41ba02e5e7813fc
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agofix logging incorrectly labeled ERROR 57/22857/2
Nathan Heldt-Sheller [Tue, 17 Oct 2017 05:06:25 +0000 (22:06 -0700)]
fix logging incorrectly labeled ERROR

Fix a few log messages that are incorrectly logged as ERROR type.

Change-Id: I417b148840fbc6c6df641b0101fdfc3233f8b511
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months agoChange OCGetContentFormat into public API 75/21675/4
uzchoi [Mon, 31 Jul 2017 07:45:08 +0000 (16:45 +0900)]
Change OCGetContentFormat into public API

OCIsOCFConentFormat API was internal API to provide bool return
according to media content format(cbor, vnd.ocf+cbor).
However, it can be used to app developer when they handle the
collection resource request with linked-list interface due to
backward compatibility requirement.
This change make the bool return into type enum value on
OCPayloadFormat and Accept version.
Corresponding code is also changed.

Change-Id: I6c780d9ad9e4b68da4b5d431ff294931bcde787e
Signed-off-by: uzchoi <uzchoi@samsung.com>
18 months agoIOT-2539 Targeted ignore of type-limits warning 33/22833/5
George Nash [Fri, 13 Oct 2017 20:03:39 +0000 (13:03 -0700)]
IOT-2539 Targeted ignore of type-limits warning

This will turn of the type-limits warning in very
targeted area in the code. The code is checking
that the user passed in value is within limits.

Although it is very unlikely to be outsite the
expected values it is possible. Tthis selectivly
shuts off the warning for the two functions the
warning is found in.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Id5da64534c05dffd479d911112d5569305c36d48
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2786] ignore wrong ACE version in ACL 21/22721/2
Nathan Heldt-Sheller [Fri, 6 Oct 2017 20:59:16 +0000 (13:59 -0700)]
[IOT-2786] ignore wrong ACE version in ACL

The current parsing code will accept a v1 ACE in a V2 /acl payload
and vice versa.  It should at least ignore and skip the wrong-version
ACE.

Change-Id: I9cb3fc84671afe25a730484e4fb2904a0d3c5c95
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months ago[IOT-2806] improve pstat->tm logging 13/22813/2
Nathan Heldt-Sheller [Fri, 13 Oct 2017 01:43:35 +0000 (18:43 -0700)]
[IOT-2806] improve pstat->tm logging

Please cherry-pick this patch and re-run TC.

Change-Id: Ic4cfd419bc11c76545e9e385993f4ae71c4bd52e
Signed-off-by: Nathan Heldt-Sheller <nathan.heldt-sheller@intel.com>
18 months ago[IOT-2746][IS] Static analysis warning fix. 23/22823/2
Harry [Fri, 13 Oct 2017 14:31:20 +0000 (20:01 +0530)]
[IOT-2746][IS] Static analysis warning fix.

Fixed all the static analyzer reported issues in
Simulator native code.

Change-Id: I04c6008c36bb5880bfabee9753433804d43a46bf
Signed-off-by: Harry <h.marappa@samsung.com>
18 months agoIOT-2539 Fix return-type warning 49/22849/2
George Nash [Mon, 16 Oct 2017 17:16:16 +0000 (10:16 -0700)]
IOT-2539 Fix return-type warning

This fixes moved the return value out of the if statment so
the result of the operation will be returned even if
ehRequest->query is null.

Bug: https://jira.iotivity.org/browse/IOT-2539
Bug: https://jira.iotivity.org/browse/IOT-2714
Change-Id: I018776e8800aa51ed9a49a55554949fb869b9495
Signed-off-by: George Nash <george.nash@intel.com>
18 months agoIOT-2539 Remove conversion-null warnings 35/22835/2
George Nash [Fri, 13 Oct 2017 20:40:28 +0000 (13:40 -0700)]
IOT-2539 Remove conversion-null warnings

For some reason using EXPECT_EQ or ASSERT_EQ
converts boolean values to char* which results in
the conversion-null warnings.

Places where EXPECT_EQ or ASSERT_EQ were using a
boolean result for the value was replaced with
ASSERT_TRUE, ASSERT_FALSE, EXPECT_TRUE or
EXPECT_FALSE as needed.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: I9604b6a7f64545e468430cfdb597eaf18e444580
Signed-off-by: George Nash <george.nash@intel.com>
18 months ago[IOT-2745] Static Analysis fix. 21/22821/2
Jay Sharma [Fri, 13 Oct 2017 12:01:28 +0000 (17:31 +0530)]
[IOT-2745] Static Analysis fix.

Java static analysis fix for resource-encapsulation:.
1. Updated exception handling for logging.
2. Updated sample applications and unit test cases.

Bug: https://jira.iotivity.org/browse/IOT-2745
Change-Id: I1aeb1b8b2b3338515cbc9733ef8fa032fd6f068e
Signed-off-by: Jay Sharma <jay.sharma@samsung.com>
18 months ago[IOT-2745][Simulator] Static Analysis issues fix. 25/22825/2
Senthil Kumar G S [Fri, 13 Oct 2017 14:37:53 +0000 (20:07 +0530)]
[IOT-2745][Simulator] Static Analysis issues fix.

1. Added log in exception catch blocks.
2. Merged conditional blocks and removed unnecessary conditions.
3. Incorporated proper usage of access specifiers such as final and static.

Change-Id: I78be7b865a30c1f8e746ed62213fb576d11505f8
Signed-off-by: Senthil Kumar G S <senthil.gs@samsung.com>
18 months ago[IOT-2745]Static Analysis fixes for Java NS. 17/22817/3
abitha.s [Fri, 13 Oct 2017 09:18:13 +0000 (14:48 +0530)]
[IOT-2745]Static Analysis  fixes for Java NS.

Change-Id: Ibb2a3e429702a0968a9aacc9ccce2c962a8db36b
Signed-off-by: abitha.s <abitha.s@samsung.com>
18 months ago[IOT-2808]Static Analysis warning fixes for NS. 15/22815/6
abitha.s [Fri, 13 Oct 2017 05:40:32 +0000 (11:10 +0530)]
[IOT-2808]Static Analysis warning fixes for NS.

1. Indentation fixes.
2. Uninitialized variable fixes

Change-Id: Iea41f46fcd1540cf8ef3985a030fa7b07e399681
Signed-off-by: abitha.s <abitha.s@samsung.com>
18 months ago[IOT-2808]Static Analysis warning fixes for SM. 99/22799/2
abitha.s [Thu, 12 Oct 2017 10:43:48 +0000 (16:13 +0530)]
[IOT-2808]Static Analysis warning fixes for SM.

1. Indentation fixes.
2. Uninitialized variable fixes

Change-Id: Icfeb1b998be90411e6f1c16d37f79ef0a47f699c
Signed-off-by: abitha.s <abitha.s@samsung.com>
18 months agoIOT-2539 Cleanup -Wformat= warnings 07/22807/2
George Nash [Mon, 7 Aug 2017 20:40:28 +0000 (13:40 -0700)]
IOT-2539 Cleanup -Wformat= warnings

The -Wformat= warning is given when the conversion specifier
in a printf or scanf command does not match the value actually
passed in.

In this commit all of the issues are found in LOG functions.
If type passed in was a variable size parameter like a pointer or
size_t. The the PRIuPTR value from the inttypes.h
header is used. For ssize_t variables the PRIdPTR was used.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: I4977253ac7ee68d2e80a26a0963b770b2ce87032
Signed-off-by: George Nash <george.nash@intel.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21771
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
(cherry picked from commit 60d89aa88e246f3c5f7274dcccde2cd4fd3703fe
)

18 months ago[IOT-2726] /cred resource rownerid fix 87/22587/8
Aleksey Volkov [Fri, 13 Oct 2017 14:30:33 +0000 (17:30 +0300)]
[IOT-2726] /cred resource rownerid fix

Fixing usage rownerid.

Change-Id: I89f65d4f5ab404d2766fa179c26948439c16a686
Signed-off-by: Oleksandr Dmytrenko <o.dmytrenko@samsung.com>
Signed-off-by: Aleksey Volkov <a.volkov@samsung.com>
18 months ago[IOT-2633] Add NULL check for reset profile 45/22845/2
Jongmin Choi [Mon, 16 Oct 2017 07:31:09 +0000 (16:31 +0900)]
[IOT-2633] Add NULL check for reset profile

Add NULL check for reset profile

Change-Id: Ic767c5af6c65dad64f355ab9bbfed8ad054d919b
Signed-off-by: Jongmin Choi <jminl.choi@samsung.com>
18 months agoC++ example for getting server version info. 19/21919/19
Ziran Sun [Tue, 15 Aug 2017 15:03:56 +0000 (16:03 +0100)]
C++ example for getting server version info.

Change-Id: I10eeedfbd1f4ec4231c2611ed8b496997faa13f7
Signed-off-by: Ziran Sun <ziran.sun@samsung.com>
18 months agoprovisioning: Close database in tests 99/22099/13
Philippe Coval [Thu, 24 Aug 2017 10:11:29 +0000 (12:11 +0200)]
provisioning: Close database in tests

Bug: https://jira.iotivity.org/browse/IOT-2599
Change-Id: Ie49d06287bc6fb3b0ac75c0271af3861c729d436
Signed-off-by: Philippe Coval <philippe.coval@osg.samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/22075
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Mats Wichmann <mats@linux.com>
(cherry picked from commit 043d580965d448da6d15710cf6b0cc7b4c18e4f8)

18 months ago[IOT-2494] SVR DB Editor : Add doxm edit features 69/22169/4
Sangjoon Je [Wed, 9 Aug 2017 08:23:09 +0000 (17:23 +0900)]
[IOT-2494] SVR DB Editor : Add doxm edit features

Add doxm add, remove, modify
Apply InputUuid allow empty input or zero input from user

New Feature: https://jira.iotivity.org/browse/IOT-2494
Change-Id: I9c5dc06bdbc29c5ba7e0a8e0a6e898e162e7959d
Signed-off-by: Sangjoon Je <sangjoon.je@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21831
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Jongmin Choi <jminl.choi@samsung.com>
Reviewed-by: Randeep Singh <randeep.s@samsung.com>
(cherry picked from commit 04875c73a33254c4f40cb61cc035583b9671ff63)

18 months ago[IOT-2803] Remove all roles if credid is zero 27/22827/2
Alex Kelley [Fri, 13 Oct 2017 16:59:46 +0000 (09:59 -0700)]
[IOT-2803] Remove all roles if credid is zero

Change-Id: I6905b2c836d61d05b20a47b43c9ce777c2af0f61
Signed-off-by: Alex Kelley <alexke@microsoft.com>
18 months ago[IOT-2746][ES] Static analysis warning fix. 19/22819/2
Harry [Fri, 13 Oct 2017 10:54:11 +0000 (16:24 +0530)]
[IOT-2746][ES] Static analysis warning fix.

Fixed all the static analyzer reported issues in
ES native code.

Change-Id: Ida916ed651fcdf4f02f3549ce987511ca8d5eaa0
Signed-off-by: Harry <h.marappa@samsung.com>
18 months ago[IOT-2811][ES] Fix mediator android app crash. 41/22841/2
Senthil Kumar G S [Sat, 14 Oct 2017 13:11:53 +0000 (18:41 +0530)]
[IOT-2811][ES] Fix mediator android app crash.

Reason for crash:-
OcProvisioning.provisionClose() should be called only
when iotivity stack is built with security. But mediator android
app invoked it without checking whether the stack is built with security.

Change-Id: Ic2af9d649a4dce79d2bfd9daebc2c80b7dfaa2eb
Signed-off-by: Senthil Kumar G S <senthil.gs@samsung.com>
18 months agoLet Linux build upstream libcoap again 99/22699/2
Mats Wichmann [Tue, 3 Oct 2017 20:39:24 +0000 (14:39 -0600)]
Let Linux build upstream libcoap again

Cherry pick from master

Two problems:
(1) in a debug build, Linux builds with gcov options. Linux options
(build_common/linux/SConscript) add --coverage to build, -lgcov to link.
However before the two places that do configure checks for functions start
doing so, they clone an environment with LIBS cleared.  Thus when built
in debug mode, all of the links of the generated configure test programs
-lgcov is missing and the binaries don't link, so the tests report
fail. Fix is to add --coverage to link instead, that implies adding the
library at link time, but is not affected by the clearing of the LIBS var.

(2) upstream libcoap was depending on ipv6 features that only are included
if __GNU_SOURCE is defined, change the define from __DEFAULT_SOURCE to
__GNU_SOURCE only for the coap build environment.

This is like Bug IOT-2334 but since that one reports a windows problem
and thus can't be gcov related, it's not a direct linkage.

Change-Id: I5cab20eeeb10ccefe74d403dd204b33b39ed9a26
Signed-off-by: Mats Wichmann <mats@linux.com>