Microsoft Information Protection (MIP) SDK for C: Reference 1.15
Doxygen-generated documentation for MIP SDK written in C
Loading...
Searching...
No Matches
protect_by_template_action_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 "protect by template" label policy action
29*
30* @file protect_by_template_action_cc.h
31*/
32
33#ifndef API_MIP_UPE_PROTECT_BY_TEMPLATE_ACTION_CC_H_
34#define API_MIP_UPE_PROTECT_BY_TEMPLATE_ACTION_CC_H_
35
36#include "mip_cc/error_cc.h"
38
39/**
40 * @brief Gets a "protect by template" action's template ID
41 *
42 * @param action "protect by template" action
43 * @param templateId [Output] ID of template that defines protections
44 * @param errorInfo [Output] (Optional) Failure info if operation result is error
45 *
46 * @return Result code indicating success or failure
47 */
48MIP_CC_API(mip_cc_result) MIP_CC_ProtectByTemplateAction_GetTemplateId(
49 const mip_cc_action action,
52
53/**
54 * @brief Gets a "protect by template" action's whether or not it is double key
55 *
56 * @param action "protect by template" action
57 * @param isDoubleKey [Output] Whether or not this is a double key template
58 * @param errorInfo [Output] (Optional) Failure info if operation result is error
59 *
60 * @return Result code indicating success or failure
61 */
62MIP_CC_API(mip_cc_result) MIP_CC_ProtectByTemplateAction_IsDoubleKey(
63 const mip_cc_action action,
66
67/**
68 * @brief Gets size of buffer required to store the double key encryption url.
69 *
70 * @param action "protect by template" action
71 * @param urlSize [Output] Size of buffer to hold the url (in number of chars)
72 * @param errorInfo [Output] (Optional) Failure info if operation result is error
73 *
74 * @return Result code indicating success or failure
75 */
76MIP_CC_API(mip_cc_result) MIP_CC_ProtectByTemplateAction_GetDoubleKeyEncryptionUrlSize(
77 const mip_cc_action action,
78 int64_t* urlSize,
80
81/**
82 * @brief Gets double key encryption url
83 *
84 * @param action "protect by template" action
85 * @param urlBuffer [Output] Buffer the url will be copied into.
86 * @param urlBufferSize Size (in number of chars) of the urlBuffer.
87 * @param actualUrlSize [Output] Number of chars written to the buffer
88 * @param errorInfo [Output] (Optional) Failure info if operation result is error
89 *
90 * @return Result code indicating success or failure
91 *
92 * @note If urlBuffer is null or insufficient, MIP_RESULT_ERROR_INSUFFICIENT_BUFFER will be returned and
93 * actualUrlSize will be set to the minimum required buffer size.
94 * * If the template action is not double key then MIP_RESULT_ERROR_NOT_SUPPORTED_OPERATION will be returned
95 */
96MIP_CC_API(mip_cc_result) MIP_CC_ProtectByTemplateAction_GetDoubleKeyEncryptionUrl(
97 const mip_cc_action action,
98 char* urlBuffer,
99 const int64_t urlBufferSize,
102
103#endif // API_MIP_UPE_PROTECT_BY_TEMPLATE_ACTION_CC_H_
Contains C API definitions for label policy actions.
MIP_CC_API(void) MIP_CC_ReleaseDictionary(mip_cc_dictionary dictionary)
Release resources associated with a dictionary.
Error definition and functions.
char const int64_t int64_t * actualUrlSize
char const int64_t urlBufferSize
mip_cc_guid mip_cc_error * errorInfo
int64_t * urlSize
mip_cc_guid * templateId
mip_cc_result
API success/failure result.
Definition result_cc.h:44
Error information.
Definition error_cc.h:79
Opaque handle to MIP object.