20 #ifndef KSI_HASHCHAIN_H_
21 #define KSI_HASHCHAIN_H_
#define KSI_FN_DEPRECATED(decl, comment)
Definition: common.h:50
struct KSI_Integer_st KSI_Integer
Definition: types_base.h:94
struct KSI_TLV_st KSI_TLV
Definition: types_base.h:83
struct KSI_OctetString_st KSI_OctetString
Definition: types_base.h:99
struct KSI_CTX_st KSI_CTX
Definition: types_base.h:78
#define KSI_uint64_t
Definition: types_base.h:59
struct KSI_Utf8String_st KSI_Utf8String
Definition: types_base.h:104
struct KSI_DataHash_st KSI_DataHash
Definition: hash.h:52
enum KSI_HashAlgorithm_en KSI_HashAlgorithm
int KSI_AggregationHashChain_new(KSI_CTX *ctx, KSI_AggregationHashChain **out)
int KSI_CalendarHashChain_getPublicationTime(const KSI_CalendarHashChain *t, KSI_Integer **publicationTime)
int KSI_HashChainLinkIdentity_getRequestTime(const KSI_HashChainLinkIdentity *o, KSI_Integer **v)
int KSI_AggregationHashChain_setAggregationTime(KSI_AggregationHashChain *aggr, KSI_Integer *aggregationTime)
int KSI_AggregationHashChain_setAggrHashId(KSI_AggregationHashChain *aggr, KSI_Integer *aggrHashId)
void KSI_HashChainLink_free(KSI_HashChainLink *t)
int KSI_AggregationHashChain_getInputData(const KSI_AggregationHashChain *aggr, KSI_OctetString **inputData)
int KSI_HashChainLink_getMetaData(const KSI_HashChainLink *t, KSI_MetaDataElement **metaData)
void KSI_AggregationHashChain_free(KSI_AggregationHashChain *aggr)
int KSI_AggregationHashChain_compare(const KSI_AggregationHashChain **left, const KSI_AggregationHashChain **right)
int KSI_HashChain_aggregateCalendar(KSI_CTX *, KSI_LIST(KSI_HashChainLink) *chain, const KSI_DataHash *inputHash, KSI_DataHash **outputHash)
int KSI_HashChainLinkIdentity_getType(const KSI_HashChainLinkIdentity *o, KSI_HashChainLinkIdentityType *v)
int KSI_AggregationHashChain_getAggrHashId(const KSI_AggregationHashChain *aggr, KSI_Integer **aggrHashId)
int KSI_CalendarHashChain_setInputHash(KSI_CalendarHashChain *t, KSI_DataHash *inputHash)
int KSI_CalendarHashChain_getHashChain(const KSI_CalendarHashChain *t, KSI_LIST(KSI_HashChainLink) **hashChain)
int KSI_AggregationHashChainList_aggregate(KSI_AggregationHashChainList *chainList, KSI_CTX *ctx, int level, KSI_DataHash **outputHash)
int KSI_CalendarHashChain_calculateAggregationTime(const KSI_CalendarHashChain *chain, time_t *aggrTime)
int KSI_HashChainLink_LegacyId_toTlv(KSI_CTX *ctx, const KSI_OctetString *legacyId, unsigned tag, int isNonCritical, int isForward, KSI_TLV **tlv)
int KSI_HashChainLinkIdentity_getClientId(const KSI_HashChainLinkIdentity *o, KSI_Utf8String **v)
int KSI_AggregationHashChain_getAggregationTime(const KSI_AggregationHashChain *aggr, KSI_Integer **aggregationTime)
int KSI_CalendarHashChain_getAggregationTime(const KSI_CalendarHashChain *t, KSI_Integer **aggregationTime)
int KSI_HashChainLinkIdentity_getMachineId(const KSI_HashChainLinkIdentity *o, KSI_Utf8String **v)
int KSI_HashChainLink_getLevelCorrection(const KSI_HashChainLink *t, KSI_Integer **levelCorrection)
int KSI_HashChain_aggregate(KSI_CTX *, KSI_LIST(KSI_HashChainLink) *chain, const KSI_DataHash *inputHash, int startLevel, KSI_HashAlgorithm algo_id, int *endLevel, KSI_DataHash **outputHash)
int KSI_CalendarHashChain_setAggregationTime(KSI_CalendarHashChain *t, KSI_Integer *aggregationTime)
int KSI_CalendarHashChain_new(KSI_CTX *ctx, KSI_CalendarHashChain **t)
void KSI_HashChainLinkIdentity_free(KSI_HashChainLinkIdentity *identity)
int KSI_AggregationHashChain_getChainIndex(const KSI_AggregationHashChain *aggr, KSI_LIST(KSI_Integer) **chainIndex)
int KSI_HashChainLink_setIsLeft(KSI_HashChainLink *t, int isLeft)
int KSI_CalendarHashChain_aggregate(KSI_CalendarHashChain *chain, KSI_DataHash **hsh)
int KSI_AggregationHashChain_getChain(const KSI_AggregationHashChain *aggr, KSI_LIST(KSI_HashChainLink) **chain)
int KSI_AggregationHashChain_calculateShape(const KSI_AggregationHashChain *chn, KSI_uint64_t *shape)
int KSI_HashChainLink_getIsLeft(const KSI_HashChainLink *t, int *isLeft)
int KSI_HashChainLink_new(KSI_CTX *ctx, KSI_HashChainLink **t)
enum KSI_HashChainLinkIdentityType_en KSI_HashChainLinkIdentityType
int KSI_AggregationHashChain_setInputData(KSI_AggregationHashChain *aggr, KSI_OctetString *inputData)
int KSI_CalendarHashChain_verifyCompatibilityTo(const KSI_CalendarHashChain *a, const KSI_CalendarHashChain *b)
int KSI_HashChainLink_setImprint(KSI_HashChainLink *t, KSI_DataHash *imprint)
int KSI_AggregationHashChain_setChain(KSI_AggregationHashChain *aggr, KSI_LIST(KSI_HashChainLink) *chain)
int KSI_HashChainLink_getImprint(const KSI_HashChainLink *t, KSI_DataHash **imprint)
KSI_HashChainLinkIdentityType_en
Definition: hashchain.h:43
int KSI_AggregationHashChain_setChainIndex(KSI_AggregationHashChain *aggr, KSI_LIST(KSI_Integer) *chainIndex)
int KSI_AggregationHashChain_getIdentity(const KSI_AggregationHashChain *aggr, KSI_HashChainLinkIdentityList **identity)
int KSI_HashChainLink_setMetaData(KSI_HashChainLink *t, KSI_MetaDataElement *metaData)
int KSI_CalendarHashChain_setHashChain(KSI_CalendarHashChain *t, KSI_LIST(KSI_HashChainLink) *hashChain)
int KSI_CalendarHashChain_getInputHash(const KSI_CalendarHashChain *t, KSI_DataHash **inputHash)
int KSI_Signature_appendAggregationChain(KSI_Signature *sig, KSI_AggregationHashChain *aggr)
void KSI_CalendarHashChain_free(KSI_CalendarHashChain *t)
int KSI_CalendarHashChain_setPublicationTime(KSI_CalendarHashChain *t, KSI_Integer *publicationTime)
int KSI_HashChainLink_setLegacyId(KSI_HashChainLink *t, KSI_OctetString *legacyId)
int KSI_HashChainLink_getLegacyId(const KSI_HashChainLink *t, KSI_OctetString **legacyId)
int KSI_HashChainLinkIdentity_getSequenceNr(const KSI_HashChainLinkIdentity *o, KSI_Integer **v)
int KSI_AggregationHashChain_aggregate(KSI_AggregationHashChain *aggr, int startLevel, int *endLevel, KSI_DataHash **root)
int KSI_AggregationHashChain_setInputHash(KSI_AggregationHashChain *aggr, KSI_DataHash *inputHash)
int KSI_HashChainLink_setLevelCorrection(KSI_HashChainLink *t, KSI_Integer *levelCorrection)
int KSI_AggregationHashChain_getInputHash(const KSI_AggregationHashChain *aggr, KSI_DataHash **inputHash)
int KSI_HashChainLink_LegacyId_fromTlv(KSI_TLV *tlv, KSI_OctetString **legacyId)
@ KSI_IDENTITY_TYPE_UNKNOWN
Definition: hashchain.h:56
@ KSI_IDENTITY_TYPE_METADATA
Definition: hashchain.h:54
@ KSI_IDENTITY_TYPE_LEGACY_ID
Definition: hashchain.h:48
struct KSI_AggregationHashChain_st KSI_AggregationHashChain
Definition: types.h:132
KSI_HashChainLink KSI_CalendarHashChainLink
Definition: types.h:45
struct KSI_MetaDataElement_st KSI_MetaDataElement
Definition: types.h:38
struct KSI_CalendarHashChain_st KSI_CalendarHashChain
Definition: types.h:46
struct KSI_HashChainLink_st KSI_HashChainLink
Definition: types.h:44
struct KSI_Signature_st KSI_Signature
Definition: types.h:67
struct KSI_HashChainLinkIdentity_st KSI_HashChainLinkIdentity
Definition: types.h:43
#define KSI_LIST(type)
Definition: list.h:44
int KSI_SignatureBuilder_appendAggregationChain(KSI_SignatureBuilder *builder, KSI_AggregationHashChain *aggr)
#define KSI_DEFINE_REF(typ)
Definition: types_base.h:39
#define KSI_DEFINE_WRITE_BYTES(typ)
Definition: types_base.h:51
#define KSI_DEFINE_FN_FROM_TLV(typ)
Definition: types_base.h:30
#define KSI_DEFINE_FN_TO_TLV(typ)
Definition: types_base.h:34