Microsoft Information Protection (MIP) SDK for C: Reference 1.15
Doxygen-generated documentation for MIP SDK written in C
Loading...
Searching...
No Matches
content_label_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 content label
29*
30* @file content_label_cc.h
31*/
32
33#ifndef API_MIP_UPE_CONTENT_LABEL_CC_H_
34#define API_MIP_UPE_CONTENT_LABEL_CC_H_
35
37#include "mip_cc/error_cc.h"
39#include "mip_cc/result_cc.h"
40#include "mip_cc/upe/label_cc.h"
42
44
45/**
46 * @brief Release resources associated with a content label
47 *
48 * @param contentLabel Label to be released
49 */
50MIP_CC_API(void) MIP_CC_ReleaseContentLabel(mip_cc_content_label contentLabel);
51
52/**
53 * @brief Gets time when label was applied
54 *
55 * @param contentLabel Label
56 * @param creationTime [Output] Time when label was applied to document (in seconds since epoch)
57 * @param errorInfo [Output] (Optional) Failure info if operation result is error
58 *
59 * @return Result code indicating success or failure
60 */
61MIP_CC_API(mip_cc_result) MIP_CC_ContentLabel_GetCreationTime(
63 int64_t* creationTime,
65
66/**
67 * @brief Gets label assignment method
68 *
69 * @param contentLabel Label
70 * @param assignmentMethod [Output] Assignment method (e.g. 'standard' or 'privileged')
71 * @param errorInfo [Output] (Optional) Failure info if operation result is error
72 *
73 * @return Result code indicating success or failure
74 */
75MIP_CC_API(mip_cc_result) MIP_CC_ContentLabel_GetAssignmentMethod(
79
80/**
81 * @brief Gets extended properties
82 *
83 * @param contentLabel Label
84 * @param properties [Output] Dictionary of extended properties, memory owned by caller
85 * @param errorInfo [Output] (Optional) Failure info if operation result is error
86 *
87 * @return Result code indicating success or failure
88 *
89 * @note The 'properties' variable must be released by the caller by calling MIP_CC_ReleaseDictionary
90 */
91MIP_CC_API(mip_cc_result) MIP_CC_ContentLabel_GetExtendedProperties(
95
96/**
97 * @brief Gets whether or not a protection was applied by a label.
98 *
99 * @param contentLabel Label
100 * @param isProtectionAppliedByLabel [Output] If document is protected and the protection was explicitly applied by this label.
101 * @param errorInfo [Output] (Optional) Failure info if operation result is error
102 *
103 * @return Result code indicating success or failure
104 */
105MIP_CC_API(mip_cc_result) MIP_CC_ContentLabel_IsProtectionAppliedFromLabel(
109
110/**
111 * @brief Gets generic label properties from a content label instance
112 *
113 * @param contentLabel Label
114 * @param label [Output] Generic label, memory owned by caller
115 * @param errorInfo [Output] (Optional) Failure info if operation result is error
116 *
117 * @return Result code indicating success or failure
118 *
119 * @note The 'label' variable must be released by the caller by calling MIP_CC_ReleaseLabel
120 */
121MIP_CC_API(mip_cc_result) MIP_CC_ContentLabel_GetLabel(
125
126#endif // API_MIP_UPE_CONTENT_LABEL_CC_H_
127#include "mip_cc/dictionary_cc.h"
A file Containing the common types used by the upe, file and protection modules.
mip_cc_label_assignment_method
Describes how a new label is being applied.
MIP_CC_API(void) MIP_CC_ReleaseContentLabel(mip_cc_content_label contentLabel)
Release resources associated with a content label.
mip_cc_handle * mip_cc_content_label
int64_t mip_cc_error * errorInfo
bool * isProtectionAppliedByLabel
mip_cc_label_assignment_method * assignmentMethod
mip_cc_label * label
int64_t * creationTime
mip_cc_metadata_dictionary * properties
Contains C API definitions for common string dictionary.
Error definition and functions.
Contains C API definitions for label.
Contains C API definitions for a metadata dictionary.
Export/import and other macros for C API.
const mip_cc_document_state const void mip_cc_content_label * contentLabel
Defines success/error result codes.
mip_cc_result
API success/failure result.
Definition result_cc.h:44
Error information.
Definition error_cc.h:79
Opaque handle to MIP object.