Imported Upstream version 1.0.0
[platform/upstream/iotivity.git] / resource / csdk / security / include / internal / svcresource.h
1 //******************************************************************
2 //
3 // Copyright 2015 Intel Mobile Communications GmbH All Rights Reserved.
4 //
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
6 //
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
10 //
11 //      http://www.apache.org/licenses/LICENSE-2.0
12 //
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 //
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
20
21 #ifndef IOTVT_SRM_SVCR_H
22 #define IOTVT_SRM_SVCR_H
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27
28 /**
29  * Initialize SVC resource by loading data from persistent storage.
30  *
31  * @retval  OC_STACK_OK for Success, otherwise some error value
32  */
33 OCStackResult InitSVCResource();
34
35 /**
36  * Perform cleanup for SVC resources.
37  *
38  * @retval  none
39  */
40 void DeInitSVCResource();
41
42 /**
43  * This function converts SVC data into JSON format.
44  * Caller needs to invoke 'free' when done using
45  * returned string.
46  * @param svc  instance of OicSecSvc_t structure.
47  *
48  * @retval  pointer to SVC in json format.
49  */
50 char* BinToSvcJSON(const OicSecSvc_t * svc);
51
52 #ifdef __cplusplus
53 }
54 #endif
55
56 #endif //IOTVT_SRM_SVCR_H
57
58