Guardtime KSI c SDK
signature_builder.h
Go to the documentation of this file.
1 /*
2  * Copyright 2013-2016 Guardtime, Inc.
3  *
4  * This file is part of the Guardtime client SDK.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License").
7  * You may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  * http://www.apache.org/licenses/LICENSE-2.0
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES, CONDITIONS, OR OTHER LICENSES OF ANY KIND, either
13  * express or implied. See the License for the specific language governing
14  * permissions and limitations under the License.
15  * "Guardtime" and "KSI" are trademarks or registered trademarks of
16  * Guardtime, Inc., and no license to trademarks is granted; Guardtime
17  * reserves and retains all trademark rights.
18  */
19 
20 
21 #ifndef SIGNATURE_BUILDER_H_
22 #define SIGNATURE_BUILDER_H_
23 
24 #include "ksi.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
39  typedef struct KSI_SignatureBuilder_st KSI_SignatureBuilder;
40 
49 
60 
69 
83 
89 
99 
111 
120 
132 
146 
161 
171 
181 
191 
197 #ifdef __cplusplus
198 }
199 #endif
200 
201 #endif /* SIGNATURE_BUILDER_H_ */
#define KSI_uint64_t
Definition: types_base.h:105
int KSI_SignatureBuilder_setCalendarHashChain(KSI_SignatureBuilder *builder, KSI_CalendarHashChain *cal)
int KSI_SignatureBuilder_open(KSI_CTX *ctx, KSI_SignatureBuilder **builder)
int KSI_SignatureBuilder_openFromAggregationResp(const KSI_AggregationResp *resp, KSI_SignatureBuilder **builder)
int KSI_SignatureBuilder_applyCalendarHashChain(KSI_SignatureBuilder *builder, KSI_CalendarHashChain *cal)
int KSI_SignatureBuilder_setAggregationChainStartLevel(KSI_SignatureBuilder *builder, KSI_uint64_t lvl)
int KSI_SignatureBuilder_addAggregationChain(KSI_SignatureBuilder *builder, KSI_AggregationHashChain *aggr)
struct KSI_PublicationRecord_st KSI_PublicationRecord
Definition: types.h:60
int KSI_SignatureBuilder_appendAggregationChain(KSI_SignatureBuilder *builder, KSI_AggregationHashChain *aggr)
struct KSI_AggregationResp_st KSI_AggregationResp
Definition: types.h:53
struct KSI_CalendarHashChain_st KSI_CalendarHashChain
Definition: types.h:46
int KSI_SignatureBuilder_close(KSI_SignatureBuilder *builder, KSI_uint64_t rootLevel, KSI_Signature **sig)
int KSI_SignatureBuilder_createSignatureWithAggregationChain(KSI_SignatureBuilder *builder, KSI_AggregationHashChain *aggr, KSI_Signature **sig)
struct KSI_CalendarAuthRec_st KSI_CalendarAuthRec
Definition: types.h:137
struct KSI_Signature_st KSI_Signature
Definition: types.h:67
struct KSI_SignatureBuilder_st KSI_SignatureBuilder
Definition: signature_builder.h:39
int KSI_SignatureBuilder_setRFC3161(KSI_SignatureBuilder *builder, KSI_RFC3161 *rfc3161)
int KSI_SignatureBuilder_openFromSignature(const KSI_Signature *sig, KSI_SignatureBuilder **builder)
struct KSI_CTX_st KSI_CTX
Definition: types_base.h:124
struct KSI_AggregationHashChain_st KSI_AggregationHashChain
Definition: types.h:132
void KSI_SignatureBuilder_free(KSI_SignatureBuilder *builder)
struct KSI_RFC3161_st KSI_RFC3161
Definition: types.h:147
int KSI_SignatureBuilder_setPublication(KSI_SignatureBuilder *builder, KSI_PublicationRecord *pub)
int KSI_SignatureBuilder_setCalendarAuthRecord(KSI_SignatureBuilder *builder, KSI_CalendarAuthRec *calAuth)