Microsoft Information Protection (MIP) SDK for C: Reference 1.15
Doxygen-generated documentation for MIP SDK written in C
Loading...
Searching...
No Matches
sensitivity_type_cc.h
Go to the documentation of this file.
1/*
2*
3* Copyright (c) Microsoft Corporation.
4* All rights reserved.
5*
6* This code is licensed under the MIT License.
7*
8* Permission is hereby granted, free of charge, to any person obtaining a copy
9* of this software and associated documentation files(the "Software"), to deal
10* in the Software without restriction, including without limitation the rights
11* to use, copy, modify, merge, publish, distribute, sublicense, and / or sell
12* copies of the Software, and to permit persons to whom the Software is
13* furnished to do so, subject to the following conditions :
14*
15* The above copyright notice and this permission notice shall be included in
16* all copies or substantial portions of the Software.
17*
18* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE
21* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24* THE SOFTWARE.
25*
26*/
27/**
28* @brief Contains C API definitions for sensitivity type
29*
30* @file sensitivity_type_cc.h
31*/
32
33#ifndef API_MIP_UPE_SENSITIVITY_TYPE_CC_H_
34#define API_MIP_UPE_SENSITIVITY_TYPE_CC_H_
35
37#include "mip_cc/error_cc.h"
39#include "mip_cc/result_cc.h"
40
42
43/**
44 * @brief Release resources associated with a sensitivity type
45 *
46 * @param sensitivityType Sensitivity type to be released
47 */
48MIP_CC_API(void) MIP_CC_ReleaseSensitivityType(mip_cc_sensitivity_type sensitivityType);
49
50/**
51 * @brief Gets size of buffer required to store a sensitivity type's rule package ID
52 *
53 * @param sensitivityType Sensitivity type
54 * @param idSize [Output] Size of buffer to hold rule package ID (in number of chars)
55 * @param errorInfo [Output] (Optional) Failure info if operation result is error
56 *
57 * @return Result code indicating success or failure
58 */
59MIP_CC_API(mip_cc_result) MIP_CC_SensitivityType_GetRulePackageIdSize(
60 const mip_cc_sensitivity_type sensitivityType,
61 int64_t* idSize,
63
64/**
65 * @brief Gets a sensitivity type's rule package ID
66 *
67 * @param sensitivityType Sensitivity type
68 * @param idBuffer [Output] Buffer the ID will be copied into.
69 * @param idBufferSize Size (in number of chars) of the idBuffer.
70 * @param actualIdSize [Output] Number of chars written to the buffer
71 * @param errorInfo [Output] (Optional) Failure info if operation result is error
72 *
73 * @return Result code indicating success or failure
74 *
75 * @note If idBuffer is null or insufficient, MIP_RESULT_ERROR_INSUFFICIENT_BUFFER will be returned and
76 * actualIdSize will be set to the minimum required buffer size.
77 */
78MIP_CC_API(mip_cc_result) MIP_CC_SensitivityType_GetRulePackageId(
79 const mip_cc_sensitivity_type sensitivityType,
80 char* idBuffer,
81 const int64_t idBufferSize,
82 int64_t* actualIdSize,
84
85/**
86 * @brief Gets size of buffer required to store a sensitivity type's rule package
87 *
88 * @param sensitivityType Sensitivity type
89 * @param rulePackageSize [Output] Size of buffer to hold rule package (in number of chars)
90 * @param errorInfo [Output] (Optional) Failure info if operation result is error
91 *
92 * @return Result code indicating success or failure
93 */
94MIP_CC_API(mip_cc_result) MIP_CC_SensitivityType_GetRulePackageSize(
95 const mip_cc_sensitivity_type sensitivityType,
98
99/**
100 * @brief Gets a sensitivity type's rule package
101 *
102 * @param sensitivityType Sensitivity type
103 * @param rulePackageBuffer [Output] Buffer the rule package will be copied into.
104 * @param rulePackageBufferSize Size (in number of chars) of the rulePackageBuffer.
105 * @param actualRulePackageSize [Output] Number of chars written to the buffer
106 * @param errorInfo [Output] (Optional) Failure info if operation result is error
107 *
108 * @return Result code indicating success or failure
109 *
110 * @note If rulePackageBuffer is null or insufficient, MIP_RESULT_ERROR_INSUFFICIENT_BUFFER will be returned and
111 * actualRulePackageSize will be set to the minimum required buffer size.
112 */
113MIP_CC_API(mip_cc_result) MIP_CC_SensitivityType_GetRulePackage(
114 const mip_cc_sensitivity_type sensitivityType,
119
120#endif // API_MIP_UPE_SENSITIVITY_TYPE_CC_H_
A file Containing the common types used by the upe, file and protection modules.
Error definition and functions.
Export/import and other macros for C API.
Defines success/error result codes.
mip_cc_result
API success/failure result.
Definition result_cc.h:44
char const int64_t rulePackageBufferSize
int64_t * rulePackageSize
int64_t * idSize
int64_t mip_cc_error * errorInfo
MIP_CC_API(void) MIP_CC_ReleaseSensitivityType(mip_cc_sensitivity_type sensitivityType)
Release resources associated with a sensitivity type.
mip_cc_handle * mip_cc_sensitivity_type
char const int64_t int64_t * actualRulePackageSize
char const int64_t idBufferSize
char const int64_t int64_t * actualIdSize
char * idBuffer
char * rulePackageBuffer
Error information.
Definition error_cc.h:79
Opaque handle to MIP object.