File: XENCCipher_8hpp-source.html

package info (click to toggle)
xml-security-c 1.2.1-3
  • links: PTS
  • area: main
  • in suites: etch-m68k
  • size: 24,464 kB
  • ctags: 6,673
  • sloc: cpp: 36,830; xml: 23,415; sh: 2,365; makefile: 340; perl: 221
file content (162 lines) | stat: -rw-r--r-- 12,394 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>XML-Security-C: XENCCipher.hpp Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.2 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<div class="nav">
<a class="el" href="dir_000000.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000006.html">xenc</a></div>
<h1>XENCCipher.hpp</h1><a href="XENCCipher_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 <span class="comment">/*</span>
00002 <span class="comment"> * Copyright 2003-2005 The Apache Software Foundation.</span>
00003 <span class="comment"> *</span>
00004 <span class="comment"> * Licensed under the Apache License, Version 2.0 (the "License");</span>
00005 <span class="comment"> * you may not use this file except in compliance with the License.</span>
00006 <span class="comment"> * You may obtain a copy of the License at</span>
00007 <span class="comment"> *</span>
00008 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
00009 <span class="comment"> *</span>
00010 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
00011 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span>
00012 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
00013 <span class="comment"> * See the License for the specific language governing permissions and</span>
00014 <span class="comment"> * limitations under the License.</span>
00015 <span class="comment"> */</span>
00016 
00017 <span class="comment">/*</span>
00018 <span class="comment"> * XSEC</span>
00019 <span class="comment"> *</span>
00020 <span class="comment"> * XENCCipher := Interface definition for main encryption worker class</span>
00021 <span class="comment"> *</span>
00022 <span class="comment"> * $Id: XENCCipher.hpp,v 1.14 2005/02/03 13:58:14 milan Exp $</span>
00023 <span class="comment"> *</span>
00024 <span class="comment"> */</span>
00025 
00026 <span class="preprocessor">#ifndef XENCCIPHER_INCLUDE</span>
00027 <span class="preprocessor"></span><span class="preprocessor">#define XENCCIPHER_INCLUDE</span>
00028 <span class="preprocessor"></span>
00029 <span class="comment">// XSEC Includes</span>
00030 
00031 <span class="preprocessor">#include &lt;xsec/framework/XSECDefs.hpp&gt;</span>
00032 <span class="preprocessor">#include &lt;xsec/xenc/XENCCipherData.hpp&gt;</span>
00033 <span class="preprocessor">#include &lt;xsec/dsig/DSIGConstants.hpp&gt;</span>
00034 
00035 <span class="comment">// Xerces</span>
00036 
00037 <a class="code" href="XSECDefs_8hpp.html#a5">XSEC_DECLARE_XERCES_CLASS</a>(DOMElement);
00038 <a class="code" href="XSECDefs_8hpp.html#a5">XSEC_DECLARE_XERCES_CLASS</a>(DOMDocument);
00039 <a class="code" href="XSECDefs_8hpp.html#a5">XSEC_DECLARE_XERCES_CLASS</a>(BinInputStream);
00040 
00041 <span class="keyword">class </span><a class="code" href="classXSECCryptoKey.html">XSECCryptoKey</a>;
00042 <span class="keyword">class </span><a class="code" href="classXENCEncryptedData.html">XENCEncryptedData</a>;
00043 <span class="keyword">class </span><a class="code" href="classXENCEncryptedKey.html">XENCEncryptedKey</a>;
00044 <span class="keyword">class </span><a class="code" href="classXSECKeyInfoResolver.html">XSECKeyInfoResolver</a>;
00045 <span class="keyword">class </span><a class="code" href="classXSECBinTXFMInputStream.html">XSECBinTXFMInputStream</a>;
00046 <span class="keyword">class </span><a class="code" href="classTXFMChain.html">TXFMChain</a>;
00047 
<a name="l00075"></a><a class="code" href="classXENCCipher.html">00075</a> <span class="keyword">class </span><a class="code" href="classXENCCipher.html">XENCCipher</a> {
00076 
00077 <span class="keyword">public</span>:
00078     
00081     
<a name="l00082"></a><a class="code" href="classXENCCipher.html#z233_0">00082</a>     <span class="keyword">virtual</span> <a class="code" href="classXENCCipher.html#z233_0">~XENCCipher</a>() {};
00083 
00085 
00088 
00108     <span class="keyword">virtual</span> <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMDocument * <a class="code" href="classXENCCipher.html#z234_0">decryptElement</a>(
00109         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * element
00110     ) = 0;
00111 
00129     <span class="keyword">virtual</span> <a class="code" href="classXSECBinTXFMInputStream.html">XSECBinTXFMInputStream</a> * <a class="code" href="classXENCCipher.html#z234_1">decryptToBinInputStream</a>(
00130         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * element
00131     ) = 0;
00132 
00144     <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classXENCCipher.html#z234_2">decryptKey</a>(
00145         <a class="code" href="classXENCEncryptedKey.html">XENCEncryptedKey</a> * encryptedKey,
00146         XMLByte * rawKey,
00147         <span class="keywordtype">int</span> maxKeySize
00148     ) = 0;
00149 
00162     <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classXENCCipher.html#z234_2">decryptKey</a>(
00163         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * keyNode,
00164         XMLByte * rawKey,
00165         <span class="keywordtype">int</span> maxKeySize
00166     ) = 0;
00167 
00169 
00172 
00192     <span class="keyword">virtual</span> <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMDocument * <a class="code" href="classXENCCipher.html#z235_0">encryptElement</a>(
00193         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * element,
00194         <a class="code" href="DSIGConstants_8hpp.html#a107">encryptionMethod</a> em,
00195         <span class="keyword">const</span> XMLCh * algorithmURI = NULL
00196     ) = 0;
00197 
00218     <span class="keyword">virtual</span> <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMDocument * <a class="code" href="classXENCCipher.html#z235_1">encryptElementContent</a>(
00219         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * element,
00220         <a class="code" href="DSIGConstants_8hpp.html#a107">encryptionMethod</a> em,
00221         <span class="keyword">const</span> XMLCh * algorithmURI = NULL
00222     ) = 0;
00223 
00239     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedKey.html">XENCEncryptedKey</a> * <a class="code" href="classXENCCipher.html#z235_2">encryptKey</a>(
00240         <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * keyBuffer,
00241         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> keyLen,
00242         <a class="code" href="DSIGConstants_8hpp.html#a107">encryptionMethod</a> em,
00243         <span class="keyword">const</span> XMLCh * algorithmURI = NULL
00244     ) = 0;
00245 
00261     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedData.html">XENCEncryptedData</a> * <a class="code" href="classXENCCipher.html#z235_3">encryptBinInputStream</a>(
00262         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> BinInputStream * plainText,
00263         <a class="code" href="DSIGConstants_8hpp.html#a107">encryptionMethod</a> em,
00264         <span class="keyword">const</span> XMLCh * algorithmURI = NULL
00265     ) = 0;
00266 
00285     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedData.html">XENCEncryptedData</a> * <a class="code" href="classXENCCipher.html#z235_4">encryptTXFMChain</a>(
00286         <a class="code" href="classTXFMChain.html">TXFMChain</a> * plainText,
00287         <a class="code" href="DSIGConstants_8hpp.html#a107">encryptionMethod</a> em,
00288         <span class="keyword">const</span> XMLCh * algorithmURI = NULL
00289     ) = 0;
00290 
00292 
00294 
00304     <span class="keyword">virtual</span> <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMDocument * <a class="code" href="classXENCCipher.html#z236_0">getDocument</a>(<span class="keywordtype">void</span>) = 0;
00305 
00315     <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * <a class="code" href="classXENCCipher.html#z236_1">getXENCNSPrefix</a>(<span class="keywordtype">void</span>) <span class="keyword">const </span>= 0;
00316 
00326     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedData.html">XENCEncryptedData</a> * <a class="code" href="classXENCCipher.html#z236_2">getEncryptedData</a>(<span class="keywordtype">void</span>) = 0;
00327 
00334     <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classXENCCipher.html#z236_3">getPrettyPrint</a>(<span class="keywordtype">void</span>) = 0;
00335 
00337 
00340 
00351     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXENCCipher.html#z237_0">setKey</a>(<a class="code" href="classXSECCryptoKey.html">XSECCryptoKey</a> * key) = 0;
00352 
00366     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXENCCipher.html#z237_1">setKEK</a>(<a class="code" href="classXSECCryptoKey.html">XSECCryptoKey</a> * key) = 0;
00367 
00382     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXENCCipher.html#z237_2">setKeyInfoResolver</a>(<span class="keyword">const</span> <a class="code" href="classXSECKeyInfoResolver.html">XSECKeyInfoResolver</a> * resolver) = 0;
00383 
00391     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXENCCipher.html#z237_3">setXENCNSPrefix</a>(<span class="keyword">const</span> XMLCh * prefix) = 0;
00392 
00404     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXENCCipher.html#z237_4">setPrettyPrint</a>(<span class="keywordtype">bool</span> flag) = 0;
00405 
00407 
00410 
00431     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedData.html">XENCEncryptedData</a> * <a class="code" href="classXENCCipher.html#z238_0">createEncryptedData</a>(<a class="code" href="classXENCCipherData.html#w3">XENCCipherData::XENCCipherDataType</a> type,
00432                                                     <span class="keyword">const</span> XMLCh * algorithm,
00433                                                     <span class="keyword">const</span> XMLCh * value) = 0;
00434 
00446     <span class="keyword">virtual</span> <a class="code" href="classXENCEncryptedKey.html">XENCEncryptedKey</a> * <a class="code" href="classXENCCipher.html#z238_1">loadEncryptedKey</a>(
00447         <a class="code" href="XSECDefs_8hpp.html#a0">XERCES_CPP_NAMESPACE_QUALIFIER</a> DOMElement * keyNode
00448         ) = 0;
00449 
00451 
00452 };
00453 
00454 <span class="comment">/*\@}*/</span>
00455 
00456 <span class="preprocessor">#endif </span><span class="comment">/* XENCCIPHER_INCLUDE */</span>
00457 
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Jul 3 17:37:26 2005 for XML-Security-C by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address>
</body>
</html>