pkcs11-helper
Main Page
Related Pages
Modules
Classes
Files
Examples
File List
File Members
pkcs11-helper-1.0
pkcs11h-token.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2005-2011 Alon Bar-Lev <alon.barlev@gmail.com>
3
* All rights reserved.
4
*
5
* This software is available to you under a choice of one of two
6
* licenses. You may choose to be licensed under the terms of the GNU
7
* General Public License (GPL) Version 2, or the BSD license.
8
*
9
* GNU General Public License (GPL) Version 2
10
* ===========================================
11
* This program is free software; you can redistribute it and/or modify
12
* it under the terms of the GNU General Public License version 2
13
* as published by the Free Software Foundation.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License
21
* along with this program (see the file COPYING.GPL included with this
22
* distribution); if not, write to the Free Software Foundation, Inc.,
23
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24
*
25
* BSD License
26
* ============
27
* Redistribution and use in source and binary forms, with or without
28
* modification, are permitted provided that the following conditions are met:
29
*
30
* o Redistributions of source code must retain the above copyright notice,
31
* this list of conditions and the following disclaimer.
32
* o Redistributions in binary form must reproduce the above copyright
33
* notice, this list of conditions and the following disclaimer in the
34
* documentation and/or other materials provided with the distribution.
35
* o Neither the name of the Alon Bar-Lev nor the names of its
36
* contributors may be used to endorse or promote products derived from
37
* this software without specific prior written permission.
38
*
39
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
40
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
41
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
42
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
43
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
44
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
45
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
46
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
47
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
48
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
49
* POSSIBILITY OF SUCH DAMAGE.
50
*/
51
67
#ifndef __PKCS11H_TOKEN_H
68
#define __PKCS11H_TOKEN_H
69
70
#include <
pkcs11-helper-1.0/pkcs11h-core.h
>
71
72
#if defined(__cplusplus)
73
extern
"C"
{
74
#endif
75
76
struct
pkcs11h_token_id_list_s
;
77
81
typedef
struct
pkcs11h_token_id_list_s
*
pkcs11h_token_id_list_t
;
82
86
struct
pkcs11h_token_id_list_s
{
88
pkcs11h_token_id_list_t
next
;
90
pkcs11h_token_id_t
token_id
;
91
};
92
98
CK_RV
99
pkcs11h_token_freeTokenId
(
100
IN
pkcs11h_token_id_t
token_id
101
);
102
110
CK_RV
111
pkcs11h_token_duplicateTokenId
(
112
OUT
pkcs11h_token_id_t
*
const
to,
113
IN
const
pkcs11h_token_id_t
from
114
);
115
122
PKCS11H_BOOL
123
pkcs11h_token_sameTokenId
(
124
IN
const
pkcs11h_token_id_t
a,
125
IN
const
pkcs11h_token_id_t
b
126
);
127
133
CK_RV
134
pkcs11h_token_logout
(
135
IN
const
pkcs11h_token_id_t
token_id
136
);
137
145
CK_RV
146
pkcs11h_token_login
(
147
IN
const
pkcs11h_token_id_t
token_id,
148
IN
const
PKCS11H_BOOL readonly,
149
IN
const
char
*
const
pin
150
);
151
159
CK_RV
160
pkcs11h_token_ensureAccess
(
161
IN
const
pkcs11h_token_id_t
token_id,
162
IN
void
*
const
user_data,
163
IN
const
unsigned
mask_prompt
164
);
165
171
CK_RV
172
pkcs11h_token_freeTokenIdList
(
173
IN
const
pkcs11h_token_id_list_t token_id_list
174
);
175
184
CK_RV
185
pkcs11h_token_enumTokenIds
(
186
IN
const
unsigned
method,
187
OUT pkcs11h_token_id_list_t *
const
p_token_id_list
188
);
189
198
CK_RV
199
pkcs11h_token_serializeTokenId
(
200
OUT
char
*
const
sz,
201
IN OUT
size_t
*max,
202
IN
const
pkcs11h_token_id_t
token_id
203
);
204
213
CK_RV
214
pkcs11h_token_deserializeTokenId
(
215
OUT
pkcs11h_token_id_t
*p_token_id,
216
IN
const
char
*
const
sz
217
);
218
219
#ifdef __cplusplus
220
}
221
#endif
222
225
#endif
/* __PKCS11H_TOKEN_H */
pkcs11-helper, Copyright (C) Alon Bar-Lev <alon.barlev@gmail.com>