HyunJun Kim [Tue, 16 Dec 2014 07:50:07 +0000 (16:50 +0900)]
Implementation of Things Manager feature.
Add feature for Things Manager
- Subscribe Collection Presence
- CRUD function for ActionSet
- Finding group
- Creating group
- Join the specific group
- Let the other devices to join the specific group
- Leave from the specific group
- Delete the group
- Get all group information
- send configuration information to multiple things
- send diagnostics information(i.e. factory reset, reboot)
- Get the configuration parameter list
- Get the diagnostics functionalities list
Fix Segmentation fault.
- Bug fix : "Implementation of Things Manager feature."
https://oic-review.01.org/gerrit/495
OCPlatform_impl.cpp, InProcServerWrapper.cpp
Change-Id: I5b44fbdb034c924df4787a30a4d9c86ce4704aff
Signed-off-by: HyunJun Kim <hyunjun2.kim@samsung.com>
HyunJun Kim [Mon, 15 Dec 2014 06:55:14 +0000 (15:55 +0900)]
Implementation of Group action feature for Things Manager.
Add GROUP_INTERFACE and OC_RSRVD_INTERFACE_GROUP.
These interfaces are supported Group Action.
When DefaultCollectionEntityHandler is received an message
which Using GROUP_INTERFACE,
It is called BuildCollectionGroupActionJSONResponse.
PUT : Action Create and Delete
POST : Action Read and Execute
Change-Id: I14519fa85b5319c3e9df72fa27e85a5d8df6ea87
Signed-off-by: HyunJun Kim <hyunjun2.kim@samsung.com>
Uze Choi [Mon, 15 Dec 2014 05:08:09 +0000 (21:08 -0800)]
Merge "Changed plugin public setValue API to private."
Uze Choi [Mon, 15 Dec 2014 05:01:33 +0000 (21:01 -0800)]
Merge "There are Two modifications. 1. Restucturing Notification Manager Class : Hosting feature is separated from Resource Manager Class into Hosting Handler, Hosting Interface, Hosting Config. Corresponding Sample code modification. 2. Resource Hosting Control Point (in the Hosting Interface Class) : Set up the Control Point for Resource Hosting. User can control how to host Resource by timing and nodes"
heesung84.kim [Mon, 15 Dec 2014 04:55:06 +0000 (13:55 +0900)]
Changed plugin public setValue API to private.
Application developer shoud not change the plugin infomation.
remove unnecessary code.
Change-Id: Id1ca15282d0b6a4facb547a6b40250c1b61cbd13
Signed-off-by: heesung84.kim <heesung84.kim@samsung.com>
Uze Choi [Mon, 15 Dec 2014 04:12:56 +0000 (20:12 -0800)]
Merge "[SSM] Fix build script"
Uze Choi [Mon, 15 Dec 2014 04:11:06 +0000 (20:11 -0800)]
Merge "[SSM] Apply changed OIC API"
sudarshan prasad [Sat, 13 Dec 2014 01:20:04 +0000 (17:20 -0800)]
Merge "Fixed IOT-110--Crash on destruction"
jk13 [Fri, 12 Dec 2014 10:51:19 +0000 (19:51 +0900)]
[SSM] Fix build script
1. Apply scons
2. Fix arduino makefile
3. Cleanup makefiles
Change-Id: I9f9c1597df21be96b4d40cfdd277649349dd742e
Signed-off-by: jk13 <jihyeok13.kim@samsung.com>
jk13 [Fri, 12 Dec 2014 10:49:10 +0000 (19:49 +0900)]
[SSM] Apply changed OIC API
1. Code cleanup with formatter
2. Change code to use changed OIC API style
Change-Id: I9f52091d62022575acfdd9dc97d19db361239c4e
Signed-off-by: jk13 <jihyeok13.kim@samsung.com>
Heewon Park [Fri, 12 Dec 2014 08:51:08 +0000 (17:51 +0900)]
There are Two modifications.
1. Restucturing Notification Manager Class
: Hosting feature is separated from Resource Manager Class into Hosting Handler, Hosting Interface, Hosting Config.
Corresponding Sample code modification.
2. Resource Hosting Control Point (in the Hosting Interface Class)
: Set up the Control Point for Resource Hosting.
User can control how to host Resource by timing and nodes
Change-Id: I627eaff40f6a5c19a4297cafcf9ea9e3c739d520
Signed-off-by: Heewon Park <h_w.park@samsung.com>
heesung84.kim [Fri, 12 Dec 2014 07:53:35 +0000 (16:53 +0900)]
Modify PPM makefile for using shared base library
Change-Id: I278b182b18512103c620b5629d29687527309808
Signed-off-by: heesung84.kim <heesung84.kim@samsung.com>
Erich Keane [Wed, 10 Dec 2014 21:43:37 +0000 (13:43 -0800)]
Fixed IOT-110--Crash on destruction
A shared_ptr loop in callbacks for listen and a server destructor
were causing the stack to crash upon destruction of the Platform_impl.
Platform_impl would decrement the ClientWrapper shared_ptr (which would
still be >0 due to the callback having one). When the OCStop was cleaning
up its resources, it would delete the client context, decrementing the
ClientWrapper ptr completely, resulting in OCStop being called inside
itself.
This bug was fixed in a few ways (each which are important, but would
have fixed this independently).
1- Changed OCStop to protect itself from re-entrance by using a guard-bool
to return immediately if it is being called as a child.
2- ListenContext now contains a weak_ptr to the clientWrapper instead of
a shared_ptr. This makes it not destruct the clientWrapper upon callback
cleanup.
3- ClientWrapper no longer calls OCStop in the destructor when in BOTH
mode. This is done to be consistent with the OCInit call in the constructor
as well as to correctly give the ServerWrapper ownership of the Init/Process/
Stop functionality in the BOTH case.
Change-Id: I77c4646938f586e24ac6642fdeeaf82391ab082c
Signed-off-by: Erich Keane <erich.keane@intel.com>
Patrick Lankswert [Thu, 11 Dec 2014 14:20:55 +0000 (06:20 -0800)]
Merge "Update build scripts"
Uze Choi [Thu, 11 Dec 2014 07:34:31 +0000 (23:34 -0800)]
Merge "Added Plugin Manager Configuration Feature - application developer can modify plugin manager configuration(xml) like plugin path, max number of plugins."
sudarshan prasad [Thu, 11 Dec 2014 07:27:22 +0000 (23:27 -0800)]
Merge "Updated the .gitignore"
Erich Keane [Fri, 5 Dec 2014 21:53:15 +0000 (13:53 -0800)]
Updated the .gitignore
Updated the gitignore to properly ignore things in the new folder
format, as well as added klocworks and some other missing ignores.
Change-Id: I75e7ac8497ae5a51f9bab00f90dc025190d68960
Signed-off-by: Erich Keane <erich.keane@intel.com>
sudarshan prasad [Wed, 10 Dec 2014 21:38:36 +0000 (13:38 -0800)]
Merge "Fixed need of implementers to include cereal in their build path"
heesung84.kim [Wed, 10 Dec 2014 05:00:13 +0000 (14:00 +0900)]
Added Plugin Manager Configuration Feature
- application developer can modify plugin manager configuration(xml) like plugin path, max number of plugins.
Added More Plugin Manager APIs
- int getState()
getState API can get plugin's state
- int rescanPlugin()
Rescan the plugin folder
Removed Unnecessary Plugin Manager APIs
- std::string getSupportedType(void)
- int addSupportedType(const std::string rscType)
Disabled Auto Plugin Detection Feature
- In previous version, PPM used iNotify to detect new Plugin detection.
However, iNotify have platform porting issue and heavy. We will find better way in next version.
Change-Id: I0efac20efbc39b3fb0b2bcc1a34685acad1c7517
Signed-off-by: heesung84.kim <heesung84.kim@samsung.com>
sudarshan prasad [Tue, 9 Dec 2014 22:30:59 +0000 (14:30 -0800)]
Merge changes I56f29eac,Ic7530d44
* changes:
Fixed usages of memset(..0..) to use Calloc/init'er
Added OCCalloc functionality and Fixed Malloc Tests
sudarshan prasad [Tue, 9 Dec 2014 22:06:08 +0000 (14:06 -0800)]
Merge "Send presence notification on stopping presence.(Multicast)"
sudarshan prasad [Tue, 9 Dec 2014 21:09:02 +0000 (13:09 -0800)]
Merge "Fixed klocwork issues in C++ Stack"
sudarshan prasad [Tue, 9 Dec 2014 20:50:02 +0000 (12:50 -0800)]
Merge "Fix klocwork issues in C samples"
Erich Keane [Wed, 3 Dec 2014 22:48:16 +0000 (14:48 -0800)]
Fixed need of implementers to include cereal in their build path
Previously we did a bit of implementation in the OCRepresentation.cpp
file because we thought we needed to (due to Template confusion).
It has been realized that this isn't necessary, so this fix removes that
need.
Change-Id: I5e022fe37b822eae83e164686c979ac6f474135c
Signed-off-by: Erich Keane <erich.keane@intel.com>
Erich Keane [Tue, 9 Dec 2014 19:02:03 +0000 (11:02 -0800)]
Fixed klocwork issues in C++ Stack
Ran klocwork 10 and fixed the issues that were highlighted.
fridgeclient:
return values from constructResourceObject weren't checked
for null. Additionally, variables sent to getValue uninitialized.
presenceclient: presenceHandle used uninitialized.
threadingsample: variables sent to getValue uninitialized.
OicJsonSerializer.hpp:
Removed dead code that had a large number of klocwork issues
Methods that didn't return despite having a return type.
InProcClientWrapper.cpp:
Contexts deleted in cases where they aren't passed to the C stack.
InProcServerWrapper.cpp:
entityhandlerRequest was used without being checked for null
Many samples:
Replaced while(true) with a condition_variable
Ensured 'main' returned 0. Despite being optional, KW shows this as
a warning
incorrect 'main' prototype (argv specified array length 1!)
Out of the 40+ issues found of all types, the following were skipped
due to being in an external library:
Review:
CWARN.MEM.NONPOD (4 issues)
Warning:
CL.MLK (2 issues)
NPD.FUNC.MUST(1 issue)
Change-Id: I1e9fa222cc27352075a1b8f5d53787bd3020b525
Signed-off-by: Erich Keane <erich.keane@intel.com>
Erich Keane [Mon, 8 Dec 2014 20:15:29 +0000 (12:15 -0800)]
Fixed usages of memset(..0..) to use Calloc/init'er
Our code has a number of cases where we declare a struct then
immediately memset to all 0. This uses the initializers which
are less prone to failure and are faster due to compiler optimizations.
Additionally, we have a number of cases where we OCMalloc a
struct, then immediately zero it. This fix uses the new OCCalloc
in order to save unnecessary memset and reduce potential for accidental
error.
In a few of the cases, older compilers didn't handle the {0} initializer
correctly and gave errors (Arduino Mega). Because of that, a few structs
were reordered to compile for that platform.
Change-Id: I56f29eac68240abea2fb8a69d888a09d61d4488a
Signed-off-by: Erich Keane <erich.keane@intel.com>
Sakthivel Samidurai [Fri, 5 Dec 2014 16:26:52 +0000 (13:26 -0300)]
Fix klocwork issues in C samples
Scan klocwork and fix all issues in c samples that were highlighted.
Change-Id: Id018abfd380c8723842a24f20c8f781dca177458
Signed-off-by: Sakthivel Samidurai <sakthivel.samidurai@intel.com>
Uze Choi [Tue, 9 Dec 2014 09:25:04 +0000 (01:25 -0800)]
Merge "[SSM] Modify repo init method and fix Resource data reader"
Uze Choi [Tue, 9 Dec 2014 09:12:05 +0000 (01:12 -0800)]
Merge "[SSM] Reflect current OIC api style and add Tizen Inproc Sample"
Uze Choi [Tue, 9 Dec 2014 09:02:35 +0000 (01:02 -0800)]
Merge "[SSM] Implement Inproc feature for Linux platform"
sudarshan prasad [Tue, 9 Dec 2014 00:59:47 +0000 (16:59 -0800)]
Merge "Fix Unicast Presence Error"
omkar [Tue, 9 Dec 2014 00:04:39 +0000 (16:04 -0800)]
Send presence notification on stopping presence.(Multicast)
Previously notifcation was not being sent on presence stopped.
Adding a check in case of multicast presence for presence stopped.
Change-Id: I774295b89fef607a3d1936d26071d79c41ec96b5
Signed-off-by: omkar <omkar.m.hegde@intel.com>
omkar [Mon, 8 Dec 2014 22:32:28 +0000 (14:32 -0800)]
Fix Unicast Presence Error
Fix for IOT-95. Previously we had missed a "+1" when mallocing a char *
Change-Id: I96021ddce22c2fa7e3afa8f8d10e6da10b47ebbc
Signed-off-by: omkar <omkar.m.hegde@intel.com>
Erich Keane [Mon, 8 Dec 2014 20:00:18 +0000 (12:00 -0800)]
Added OCCalloc functionality and Fixed Malloc Tests
The OCMalloc tests didn't seem to be running correctly, so
this fixes that. Additionally, added OCCalloc functionality so
that we can replace 'memset 0' in a number of places in the C Stack.
Change-Id: Ic7530d442c146724e91ec12646a4363de63f6874
Signed-off-by: Erich Keane <erich.keane@intel.com>
omkar [Tue, 25 Nov 2014 21:39:18 +0000 (13:39 -0800)]
Improve Presence Callback in C++ SDK
Passing the host address information to the application on receiving
presence Notification. Based on IOT-91.
Signed-off-by: omkar <omkar.m.hegde@intel.com>
Change-Id: Ie6bc5e20c71e14e2745da435a65de874d6f28742
sudarshan prasad [Mon, 8 Dec 2014 20:48:50 +0000 (12:48 -0800)]
Merge "Added support to allow more than one presence resource type filter."
Joseph Morrow [Mon, 8 Dec 2014 20:15:31 +0000 (15:15 -0500)]
Added support to allow more than one presence resource type filter.
Where only one filter was supported before, resource type filters must
be added one at a time through use of the OCDoResource() API, therefore
a call to OCDoResource() for every amend is req'd with this add-on.
Change-Id: I54a1166ad6992a26f133ed6797730fcdb4e9cf73
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
sudarshan prasad [Mon, 8 Dec 2014 07:05:52 +0000 (23:05 -0800)]
Merge "Fix the name of the resource created in Arduino server to Light."
sudarshan prasad [Mon, 8 Dec 2014 07:00:53 +0000 (23:00 -0800)]
Merge "Fixed EntityHandlerRequest initialization to match other uses"
sudarshan prasad [Mon, 8 Dec 2014 06:50:42 +0000 (22:50 -0800)]
Merge "Fixed OCSerialization NVP Header Reset"
Caiwen Zhang [Fri, 5 Dec 2014 08:00:57 +0000 (16:00 +0800)]
Update build scripts
1) Add build options to enviornment(env) to avoid export variables
2) Sync with the newest code
3) Update Readme(Readme.scons.txt)
4) Extend arduino supporting
5) Add build scripts for services
6) Add a doc(scons_script_how_to.txt) about how to write iotivity
build script
7) change resource libs from static library to share library
Last sync and test with the newest code commit:
e9403ce6d4d7a1a0ac8d12c5acc876af7f7a8f76
Note:
Scripts for Service are provided but aren't enabled due to the
service code is too old it can't pass the build.
Change-Id: I06427cfe65e6fcf5837376f2f89d1e93c662f920
Signed-off-by: Caiwen Zhang<caiwen.zhang@intel.com>
jk13 [Mon, 8 Dec 2014 04:58:12 +0000 (13:58 +0900)]
[SSM] Modify repo init method and fix Resource data reader
Modify Repository class init method to load local SoftSensors,
Fix OIC data reader to read correct data
Change-Id: I099d732ddf019deb79d2d88477556eacf2eb2078
Signed-off-by: jk13 <jihyeok13.kim@samsung.com>
jk13 [Fri, 28 Nov 2014 06:30:17 +0000 (15:30 +0900)]
[SSM] Reflect current OIC api style and add Tizen Inproc Sample
Problem:
Need to reflect new OIC API design
To provide Tizen Inproc sample
How:
Change SSM OIC wrapping class to reflect current OIC api sets
Modify previous Tizen sample to use Inproc API
Change-Id: I3cde8a769684375cf03678f2af945f680fa85ca5
Signed-off-by: jk13 <jihyeok13.kim@samsung.com>
jk13 [Fri, 21 Nov 2014 06:43:12 +0000 (15:43 +0900)]
[SSM] Implement Inproc feature for Linux platform
Problem:
To meet M2 requirements
How:
Separate SSM Interface to support Inproc/Outproc.
Change Application to use Inproc interface rather than Resource/Client model
Comment:
This version is not tested to build. Integrate new OIC is still in progress.
Change-Id: Ib6466c91e7e407fd38c255300a8c253ac15eb978
Signed-off-by: jk13 <jihyeok13.kim@samsung.com>
Sudarshan Prasad [Sun, 7 Dec 2014 01:04:11 +0000 (17:04 -0800)]
Added release notes for Dec 6th release.
Change-Id: I86359fb2072a1a910cd405c8b24cfccbac700da9
Signed-off-by: Sudarshan Prasad <sudarshan.prasad@intel.com>
Erich Keane [Wed, 3 Dec 2014 19:52:53 +0000 (11:52 -0800)]
Fixed OCSerialization NVP Header Reset
OCSerialization was not resetting the name-value pair header on error,
so this fixes that issue. When searching for a NVP that doesn't exist,
cereal/RapidJSON will leave the iterator in a 'bad' place that can result
in not being able to find what we're looking for.
Change-Id: I40c1ee5397ebf2e0eb771ed8a209ea9e75757a33
Signed-off-by: Erich Keane <erich.keane@intel.com>
Erich Keane [Fri, 5 Dec 2014 19:53:08 +0000 (11:53 -0800)]
Fixed EntityHandlerRequest initialization to match other uses
Everywhere else we are using initializers rather than memcpy, so
this fix makes this one instance match the rest of the initializers.
Change-Id: I7ccb433ed58abbfb25ada17214dbaf5819d210fa
Signed-off-by: Erich Keane <erich.keane@intel.com>
Yamin Al-Mousa [Fri, 5 Dec 2014 19:04:46 +0000 (11:04 -0800)]
Fix the name of the resource created in Arduino server to Light.
This is to bring resources in sync with Linux client example.
Now Linux client samples can interact with Arduino server.
Change-Id: Ic7985790c8099d3b6230e1f48824e61b3d2272a5
Signed-off-by: Yamin Al-Mousa <yamin.s.al-mousa@intel.com>
sudarshan prasad [Fri, 5 Dec 2014 01:59:58 +0000 (17:59 -0800)]
Merge "Implement functionality to set PSK credentials for DTLS in OC stack."
Doug Hudson [Thu, 4 Dec 2014 21:37:22 +0000 (16:37 -0500)]
Implement slow response feature.
This feature allows a resource entity handler to provide a "slow response"
to a client request. That is, if a request is received but the server cannot
respond immediately (e.g. response data is not available), the server can
instead respond at a later time. The same API is used for both immediate
and slow responses.
Updated collection's batch interface to aggregate responses of local resources
contained in the collection. Note that the aggregate response only applies
to local resources, not remote resources.
This feature introduces a new C API, OCDoResponse and a new C++ API,
OCPlatform::sendResponse. The C++ modifications also include a change to
the the signature of the applications entity handler.
Change-Id: Ic33ab0c7ff52481bed86e9a77319baa3813dd6cd
Signed-off-by: Doug Hudson <douglas.hudson@intel.com>
Signed-off-by: Yamin Al-Mousa <yamin.s.al-mousa@intel.com>
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Signed-off-by: Sachin Agrawal <sachin.agrawal@intel.com>
Signed-off-by: Sudarshan Prasad <sudarshan.prasad@intel.com>
Signed-off-by: Erich Keane <erich.keane@intel.com>
Sachin Agrawal [Thu, 4 Dec 2014 17:43:17 +0000 (09:43 -0800)]
Implement functionality to set PSK credentials for DTLS in OC stack.
Uptil now DTLS module in OCStack was using PSK credentials which
were hard-coded. Added API which can be used by application to
provide device identity and PSK credentials.
Change-Id: I4df6db6ab70ee69917d0111f06a6504f3ce56ce2
Signed-off-by: Chris Mitchell <cmitch2@intel.com>
Signed-off-by: Sachin Agrawal <sachin.agrawal@intel.com>
Sachin Agrawal [Tue, 2 Dec 2014 17:11:26 +0000 (09:11 -0800)]
Moved location of tinyDTLS from csdk to extlibs directory
External libraries are currently being stored under extlibs
directory and therefore moved tinyDTLS also there.
Change-Id: Ib21bd994115b7cd2fddfe92010b6f5f8d2e0b658
Signed-off-by: Sachin Agrawal <sachin.agrawal@intel.com>
sudarshan prasad [Tue, 2 Dec 2014 23:23:46 +0000 (15:23 -0800)]
Merge "Implemented JSON Serialization using Cereal Library"
Erich Keane [Wed, 22 Oct 2014 20:31:13 +0000 (13:31 -0700)]
Implemented JSON Serialization using Cereal Library
Previously we were hand-mangling strings for JSON serialization and using
boost::property_tree for parsing. Now we are using an open source library (cereal)
to do both sides in the C++ stack
Change-Id: I2db2657552a31cdf37c2f2dbbcfdb34e48549f00
Signed-off-by: Erich Keane <erich.keane@intel.com>
sudarshan prasad [Thu, 27 Nov 2014 17:25:28 +0000 (09:25 -0800)]
Merge "Fix sending 3 notifications when creating a resource"
sudarshan prasad [Thu, 27 Nov 2014 17:24:29 +0000 (09:24 -0800)]
Merge "Fix the infinite PRESENCE_STOPPED message"
Sashi Penta [Tue, 25 Nov 2014 23:37:48 +0000 (15:37 -0800)]
Fix sending 3 notifications when creating a resource
Implemented bind resource interface/type internal functions which
do not send the presence notificiations.
Change-Id: Ibf093d489d24ee729f30d714fca5f9b6d9dfe254
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Sashi Penta [Sun, 23 Nov 2014 00:40:24 +0000 (16:40 -0800)]
Fix the infinite PRESENCE_STOPPED message
When a client to subscirbes to a server, and when the server process is
exited, client is getting was getting infinte PRESENCE_STOPPED messages.
This commit fixes this issue. Introduced a new stack result
type : PRESENCE_TIMEOUT to indicate timeout of the server.
PRESENCE_STOPPED is used for graceful stopping of the server.
Change-Id: I4e122176f8f7ea8e04d98dea02d22432b4c4555a
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Erich Keane [Mon, 24 Nov 2014 18:33:42 +0000 (10:33 -0800)]
Merge "Adding PCF() wrappers to OC_LOG() calls that were missing in the stack."
Uze Choi [Thu, 20 Nov 2014 10:27:05 +0000 (02:27 -0800)]
Merge "Implementation of connectivity abstraction feature-Ubutu v0.1"
ashok.channa [Fri, 14 Nov 2014 14:32:40 +0000 (23:32 +0900)]
Implementation of connectivity abstraction feature-Ubutu v0.1
Connectivity Abstraction feature provides unified approach for multiple
Transports
Adding WIFI transport support on Ubuntu platform in the v0.1 release
We followed Coding guidelines as per current base source.
Please read the Release notes v0.1 for more information.
Non Supported code is just made to print the message.
Change-Id: Id018c10680a5cf0ce046592da46cc3ad69669d77
Signed-off-by: ashok.channa <ashok.channa@samsung.com>
Uze Choi [Thu, 20 Nov 2014 02:33:11 +0000 (18:33 -0800)]
Merge "Removed Protocol Plugin developer guide document."
sudarshan prasad [Wed, 19 Nov 2014 23:07:53 +0000 (15:07 -0800)]
Merge "Fixed: bug where Header Option count would be zero"
junho13.lee [Wed, 19 Nov 2014 06:03:57 +0000 (15:03 +0900)]
Removed Protocol Plugin developer guide document.
Because uploading the developer guide document to the web page,
we no longer manage the document in the repository.
Change-Id: I5aeed10245ce1d255ce69dfd7a2255c5e9f9cdf9
Signed-off-by: junho13.lee <junho13.lee@samsung.com>
Erich Keane [Tue, 18 Nov 2014 22:23:14 +0000 (14:23 -0800)]
Fixed bug where InvalidParam exception thrown on re-observe
Observing a resource more than once isn't allowed. However, we were
not clearing the "Observation Handle" on observation cancel. This
patch resets the observe handle to nullptr when cancelling observation
so that we can re-observe after cancelling.
Change-Id: I507a427e641ad08c5e48e2dea4c5b7b3d0e3a79b
Signed-off-by: Erich Keane <erich.keane@intel.com>
Erich Keane [Tue, 18 Nov 2014 22:06:12 +0000 (14:06 -0800)]
Fixed: bug where Header Option count would be zero
01.org IOT-76
Header options had a defect introduced attempting to fix
the 'zero' header option count value. In the previous defect,
the stack would have an uninitialized header options count
when there were none. The previous fix has been removed and
initialization has been done in the correct place.
Change-Id: I99e0539f86573cfa7392921e1fdfe25dd80b303a
Signed-off-by: Erich Keane <erich.keane@intel.com>
jk13 [Tue, 18 Nov 2014 01:44:31 +0000 (10:44 +0900)]
[SSM] Adapt astyle code formatter
Problem: Follow coding guideline
How: Adapt astyle cpp formatter
Change-Id: I58ba77542f5fb3a935e1083a076957357599bc7e
Signed-off-by: Kim Jee Hyeok <jihyeok13.kim@samsung.com>
Uze Choi [Tue, 18 Nov 2014 01:37:37 +0000 (17:37 -0800)]
Merge "[SSM] Modify thread util and framework init method"
Uze Choi [Tue, 18 Nov 2014 00:40:58 +0000 (16:40 -0800)]
Merge "Supporting Java Plugin and making plugin manager as a library"
jk13 [Mon, 17 Nov 2014 11:11:03 +0000 (20:11 +0900)]
[SSM] Modify thread util and framework init method
Problem: Thread worker crashes while terminating.
SoftSensor searching path must given at compile time
How: Rearchitecture threading model
Add XML descriptor based framework initialization.
1. Search SoftSensorDescription.xml
(previously high-context.xml) where executable located
2. Or put search path using below init configration.
<SSMCore>
<Device>
<UDN>
abcde123-31f8-11b4-a222-
08002b34c003</UDN>
<Name>MyPC</Name>
<Type>PC</Type>
</Device>
<Config>
<SoftSensorRepository>/usr/local/SSRepo/</SoftSensorRepository>
<SoftSensorDescription>/usr/local/SSRepo/SSDescription.xml</SoftSensorDescription>
</Config>
</SSMCore>
Change-Id: Id2c0746357d9e850e9e90016547b116412b758d2
Signed-off-by: Kim Jee Hyeok <jihyeok13.kim@samsung.com>
jk13 [Mon, 17 Nov 2014 11:10:30 +0000 (20:10 +0900)]
[SSM] Fix to call OIC platform destructor
Problem: There is no destructor caller
How: Call platform destructor when OIC platform manager destroying
Change-Id: I83b033494f3bb84e5341c21d7ec4051e110a9ff8
Signed-off-by: Kim Jee Hyeok <jihyeok13.kim@samsung.com>
jk13 [Mon, 17 Nov 2014 11:09:58 +0000 (20:09 +0900)]
[SSM] Fix model unregistration problem
Problem: If try to unregister registered model,
unable to find registered model because of key mismatch.
How: Use proper key token to find registered model
Change-Id: Ib66242a4532e6a5fd8ced8e232fea26672347880
Signed-off-by: Kim Jee Hyeok <jihyeok13.kim@samsung.com>
jk13 [Mon, 17 Nov 2014 11:09:02 +0000 (20:09 +0900)]
[SSM] Remove global mutex
Problem: global mutex is not necessary
while initializing platform.
How: Remove global mutex class and references.
Change-Id: I8972c6eb7d67dbd91c5c8638bec22fe83f83ef43
Signed-off-by: Kim Jee Hyeok <jihyeok13.kim@samsung.com>
junho13.lee [Mon, 17 Nov 2014 10:31:24 +0000 (19:31 +0900)]
Supporting Java Plugin and making plugin manager as a library
1) Cleaned unnecsssary files.
2) Changed plugin manager to support C/C++ and Java Plugin. Java plugin manager is not completed yet.
This commit only have template code for Java.
3) Created plugin manager as a separate library(libpm.a) to be linked by application directly.
And separated plugin manager implementation as shared library(libpmimpl.so) to support out-proc mode with same libpm.a in the future.
Change-Id: I5a80faa0546da1832e15a75dacc7f916faedd868
Signed-off-by: Lee Jun Ho <junho13.lee@samsung.com>
Joseph Morrow [Sun, 16 Nov 2014 18:45:25 +0000 (13:45 -0500)]
Adding PCF() wrappers to OC_LOG() calls that were missing in the stack.
By ensuring all calls to OC_LOG() wrap their strings with PCF(), we're
ensuring log statements don't take up program memory on lite platforms.
Change-Id: I1aeba972a539ea89d6862d402ee15cf286fbc860
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
Sudarshan Prasad [Sun, 16 Nov 2014 05:37:24 +0000 (21:37 -0800)]
Added release notes for Nov 15 release.
Signed-off by Sudarshan Prasad <sudarshan.prasad@intel.com>
Change-Id: I2382af916166a1d75e220a84c0b7d0dd45271662
Sashi Penta [Sat, 15 Nov 2014 19:58:18 +0000 (11:58 -0800)]
Modify presenceclient sample
Modify presenceclient application to subcribe to MC address
without the need to discover a resource.
Change-Id: I0aed9941dab56a22f9eb58fa8150000b4a554b42
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
sudarshan prasad [Sat, 15 Nov 2014 18:49:21 +0000 (10:49 -0800)]
Merge "Support resource type for multicast subscription"
Joseph Morrow [Sat, 15 Nov 2014 00:53:10 +0000 (19:53 -0500)]
Active Discovey Resource Type Filtering - C++ SDK & App Changes only.
This change affects only the C++ API and it's sample app
"presenceclient.cpp".
Change-Id: I92cebe5045dfda5b506ab6c849a1ce13330c4391
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
Joseph Morrow [Tue, 11 Nov 2014 19:41:51 +0000 (14:41 -0500)]
Aligning name of resource between C Apps and C++ Apps.
This change to align the "LED" resource to be named "Light"
allows for inter-SDK application verification. This will help
ensure that both SDKs operate similarly, if not identically.
Change-Id: I418f47c664a605bfd56d8d50e35755463dc910fb
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
Joseph Morrow [Fri, 14 Nov 2014 00:00:52 +0000 (19:00 -0500)]
Add to C SDK sample app to subscribe to presence with or without filter.
This allows for end user to see the difference between a filtered
presence subscription and a non-filtered presence subscription. Also
added some minor logging changes.
Change-Id: Ib068d3917937e6da7752125cbe86a44fcb83a2df
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
sudarshan prasad [Sat, 15 Nov 2014 18:27:20 +0000 (10:27 -0800)]
Merge "Active Discovery Resource Type Filtering - C SDK & App Changes only."
Sashi Penta [Sat, 15 Nov 2014 17:32:55 +0000 (09:32 -0800)]
Support resource type for multicast subscription
Change-Id: I001a62601a70dbc7d5e9b3480e1134bdbe3dfde4
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Joseph Morrow [Sat, 15 Nov 2014 04:34:52 +0000 (23:34 -0500)]
Active Discovery Resource Type Filtering - C SDK & App Changes only.
Applying required API changes and tying up a part of the functionality
required for implementing resource type filtering on presence
notifications.
Similar C++ SDK & App changes to follow this commit.
Change-Id: I9a8cd1a3e6e30c5de5788f593ef3efd2891b2f56
Signed-off-by: Omkar Hegde <omkar.m.hegde@intel.com>
Signed-off-by: Joseph Morrow <joseph.l.morrow@intel.com>
Sakthivel Samidurai [Sat, 15 Nov 2014 02:04:54 +0000 (18:04 -0800)]
Make command line option for secure and observer
Implement command line option for secure resource and observer
Remove duplicate case to avoid confusion
Update app usage description
Change-Id: I2aa090a7a65448a7fbc54b41fef4b29d212f18f8
Signed-off-by: Sakthivel Samidurai <sakthivel.samidurai@intel.com>
Sashi Penta [Fri, 14 Nov 2014 05:32:27 +0000 (21:32 -0800)]
Implemented Secure resource support in C++ layer
Added ability for the C++ stack to properly parse/support the secure protocol URIs.
Change-Id: I800d29598854339a2d30ae5b4ef89c2d0973dfe7
Signed-off-by: Sakthivel Samidurai <sakthivel.samidurai@intel.com>
Sashi Penta [Mon, 10 Nov 2014 21:21:25 +0000 (13:21 -0800)]
Modified OCInitUDP to support security.
Added a new flag to OCInitUDP to indicated whether to reuse the address or not.
Modified create_new_context API. It now takes the ipAddr[4] as input. This needs
to be passed further down to dtls_init.
signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Change-Id: I536f215bf2a1ff4c90685e7a19e32fcb76f1e912
Sachin Agrawal [Fri, 14 Nov 2014 01:17:39 +0000 (17:17 -0800)]
Implement sending host port number for secure resources
Secure resources are hosted on a separate IP port. All the
discovery responses are send from unicast unsecure port from
resource server. Currently, when a client receives discovery response
it 'assumes' that the sending port is the port hosting the resource
too. This 'assumption' is NOT valid for secure resources. Therefore,
there is a need to send 'secure port info' for secure resources in
JSON discovery response.
Change-Id: I54fd828a15913ec8be990d040e1190a88be43353
Signed-off-by: Sachin Agrawal <sachin.agrawal@intel.com>
Erich Keane [Fri, 14 Nov 2014 00:16:10 +0000 (16:16 -0800)]
Merge "Implemented libcoap's tinyDTLS interface"
Sachin Agrawal [Fri, 14 Nov 2014 00:03:57 +0000 (16:03 -0800)]
Implemented libcoap's tinyDTLS interface
libcoap needs to encrypt/decrypt packets while sending on
secure port. This changeset implements interface for libcoap
to use tinyDTLS for creating DTLS sessions and performing
crypto operations.
This changeset is dependent on having tinyDTLS installed
under oic-resourc/resource/csdk directory.
Change-Id: I728b147991b94b802f125ad8e457c1830a114fba
Signed-off-by: Sachin Agrawal <sachin.agrawal@intel.com>
Erich Keane [Thu, 13 Nov 2014 22:56:09 +0000 (14:56 -0800)]
Merge "Added support for multicast presence"
Erich Keane [Thu, 13 Nov 2014 18:51:43 +0000 (10:51 -0800)]
Added C++ Sample application using multiple threads.
C++ Sample application demonstrating the idea of running multiple
servers and clients running in multiple threads.
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Change-Id: Icdb59aaec35bb0c9d16b941fbf0eaa48c43d0a56
Uze Choi [Thu, 13 Nov 2014 08:57:58 +0000 (00:57 -0800)]
Merge "fix coding standard problem"
jyong2.kim [Thu, 13 Nov 2014 07:48:05 +0000 (16:48 +0900)]
fix notification manager for m2
fix all code based on latest resource api.
fix notification folder name, following name convention.
Change-Id: Ic1eba69dd712428b4b0fae542d4acb005ad78a52
jjack.lee [Thu, 13 Nov 2014 06:58:59 +0000 (15:58 +0900)]
fix coding standard problem
fix all coding standard problem. This commit did NOT include logic changes .
Change-Id: I34f7a33374f137b8b641dff74e113b4941cb1391
jjack.lee [Wed, 12 Nov 2014 08:12:41 +0000 (17:12 +0900)]
fix things manager sdk for m2
Change-Id: I681378772f6b9dd120fd23abc124e66cef85c07e
Sashi Penta [Mon, 10 Nov 2014 15:49:55 +0000 (07:49 -0800)]
Added support for multicast presence
Added OCMulticastNode data structure to store the nonce information of the server send
presence notifications. When a new notification comes to the client, client checks if there
is a multicast node, and then checks to see if the nonce is same or not. If same nonce, no call
back to client application is made. If nonce is different a call to client application is made.
Signed-off-by: Sashi Penta <sashi.kumar.penta@intel.com>
Change-Id: Ia3fe163e7a304f499272f9ffa8a22a359f123d98
jjack.lee [Mon, 10 Nov 2014 10:18:31 +0000 (19:18 +0900)]
(1) add platform overload api : registerResource(resourcehandle, resource), (2) add host in rsrc_t
Change-Id: I4809566e153eb3f488617adb7e044da869c1d88c
Sudarshan Prasad [Thu, 6 Nov 2014 23:23:26 +0000 (15:23 -0800)]
Removed Iotivity logo.
Until we get clearance with Iotivity logo, we are not going to use any logo.
Signed off by: Sudarshan Prasad <sudarshan.prasad@intel.com>
Change-Id: I366fc53bf453c8c0ec4730b44f7f2418ae21a395
William R. Dieter [Thu, 6 Nov 2014 04:49:45 +0000 (23:49 -0500)]
Repo Merge: Modified makefile for the soft sensor manager
Change-Id: I1f37e387d8c5d85b2ef95123126cc098e9b83735
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>