2 * Copyright (c) 2016 Andreas Schneider <asn@samba.org>
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
23 #include <gnutls/pkcs7.h>
26 enum mscat_mac_algorithm {
37 struct mscat_pkcs7 *mscat_pkcs7_init(TALLOC_CTX *mem_ctx);
39 int mscat_pkcs7_import_catfile(struct mscat_pkcs7 *mp7,
42 int mscat_pkcs7_verify(struct mscat_pkcs7 *mp7,
47 struct mscat_ctl *mscat_ctl_init(TALLOC_CTX *mem_ctx);
49 int mscat_ctl_import(struct mscat_ctl *ctl,
50 struct mscat_pkcs7 *pkcs7);
52 int mscat_ctl_get_member_count(struct mscat_ctl *ctl);
54 enum mscat_checksum_type {
55 MSCAT_CHECKSUM_STRING = 1,
59 struct mscat_ctl_member {
61 enum mscat_checksum_type type;
81 enum mscat_mac_algorithm type;
87 int mscat_ctl_get_member(struct mscat_ctl *ctl,
90 struct mscat_ctl_member **member);
92 int mscat_ctl_get_attribute_count(struct mscat_ctl *ctl);
94 struct mscat_ctl_attribute {
100 int mscat_ctl_get_attribute(struct mscat_ctl *ctl,
103 struct mscat_ctl_attribute **pattribute);
105 #endif /* _MSCAT_H */