etsi119612

package
v0.0.0-...-ae6e0d1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2025 License: BSD-2-Clause-Views Imports: 15 Imported by: 1

Documentation

Index

Constants

View Source
const ServiceStatusGranted string = "https://uri.etsi.org/TrstSvc/TrustedList/Svcstatus/granted/"

Variables

View Source
var (
	ErrInvalidDate        = errors.New("not currently valid")
	ErrInvalidStatus      = errors.New("status is not recognized or granted")
	ErrInvalidConstraints = errors.New("service constraints not fulfilled")
)
View Source
var DefaultTSLFetchOptions = TSLFetchOptions{
	UserAgent:           "Go-Trust/1.0 TSL Fetcher (+https://github.com/SUNET/go-trust)",
	Timeout:             30 * time.Second,
	MaxDereferenceDepth: 3,
	AcceptHeaders:       []string{"application/xml", "text/xml", "application/xhtml+xml", "text/html;q=0.9", "*/*;q=0.8"},
}

DefaultTSLFetchOptions provides reasonable default options for fetching TSLs

View Source
var (
	PolicyAll = NewTSPServicePolicy()
)

A constant TSPServicePolicy instance that represents a standard policy with an empty ServiceTypeIdentifier array.

Functions

func FindByLanguage

func FindByLanguage(names *InternationalNamesType, lang string, dflt string) string

Types

type AdditionalInformation

type AdditionalInformation *AdditionalInformationType

AdditionalInformation ...

type AdditionalInformationType

type AdditionalInformationType struct {
	TextualInformation []*MultiLangStringType `xml:"TextualInformation"`
	OtherInformation   []*AnyType             `xml:"OtherInformation"`
}

AdditionalInformationType ...

type AdditionalServiceInformation

type AdditionalServiceInformation *AdditionalServiceInformationType

AdditionalServiceInformation ...

type AdditionalServiceInformationType

type AdditionalServiceInformationType struct {
	URI              *NonEmptyMultiLangURIType `xml:"URI"`
	InformationValue string                    `xml:"InformationValue,omitempty"`
	OtherInformation *AnyType                  `xml:"OtherInformation,omitempty"`
}

AdditionalServiceInformationType ...

type AddressType

type AddressType struct {
	TslPostalAddresses   *PostalAddressListType `xml:"PostalAddresses"`
	TslElectronicAddress *ElectronicAddressType `xml:"ElectronicAddress"`
}

AddressType ...

type AllDataObjectsTimeStamp

type AllDataObjectsTimeStamp *XAdESTimeStampType

AllDataObjectsTimeStamp ...

type AllSignedDataObjects

type AllSignedDataObjects AnyType

type AnyType

type AnyType struct {
}

AnyType ...

type ArchiveTimeStamp

type ArchiveTimeStamp *XAdESTimeStampType

ArchiveTimeStamp ...

type AttrAuthoritiesCertValues

type AttrAuthoritiesCertValues *CertificateValuesType

AttrAuthoritiesCertValues ...

type AttributeCertificateRefs

type AttributeCertificateRefs *CompleteCertificateRefsType

AttributeCertificateRefs ...

type AttributeRevocationRefs

type AttributeRevocationRefs *CompleteRevocationRefsType

AttributeRevocationRefs ...

type AttributeRevocationValues

type AttributeRevocationValues *RevocationValuesType

AttributeRevocationValues ...

type AttributedNonEmptyURIType

type AttributedNonEmptyURIType struct {
	TypeAttr string `xml:"type,attr,omitempty"`
	Value    string `xml:",chardata"`
}

AttributedNonEmptyURIType ...

type CRLIdentifierType

type CRLIdentifierType struct {
	URIAttr   string `xml:"URI,attr,omitempty"`
	Issuer    string `xml:"Issuer"`
	IssueTime string `xml:"IssueTime"`
	Number    int    `xml:"Number,omitempty"`
}

CRLIdentifierType ...

type CRLRefType

type CRLRefType struct {
	DigestAlgAndValue *DigestAlgAndValueType `xml:"DigestAlgAndValue"`
	CRLIdentifier     *CRLIdentifierType     `xml:"CRLIdentifier,omitempty"`
}

CRLRefType ...

type CRLRefsType

type CRLRefsType struct {
	CRLRef []*CRLRefType `xml:"CRLRef"`
}

CRLRefsType ...

type CRLValuesType

type CRLValuesType struct {
	EncapsulatedCRLValue []*EncapsulatedPKIDataType `xml:"EncapsulatedCRLValue"`
}

CRLValuesType ...

type CanonicalizationMethod

type CanonicalizationMethod *CanonicalizationMethodType

CanonicalizationMethod ...

type CanonicalizationMethodType

type CanonicalizationMethodType struct {
	AlgorithmAttr string `xml:"Algorithm,attr"`
}

CanonicalizationMethodType ...

type CertIDListType

type CertIDListType struct {
	Cert []*CertIDType `xml:"Cert"`
}

CertIDListType ...

type CertIDType

type CertIDType struct {
	URIAttr      string                 `xml:"URI,attr,omitempty"`
	CertDigest   *DigestAlgAndValueType `xml:"CertDigest"`
	IssuerSerial *X509IssuerSerialType  `xml:"IssuerSerial"`
}

CertIDType ...

type CertSubjectDNAttribute

type CertSubjectDNAttribute *CertSubjectDNAttributeType

CertSubjectDNAttribute ...

type CertSubjectDNAttributeType

type CertSubjectDNAttributeType struct {
	AttributeOID *ObjectIdentifierType `xml:"AttributeOID"`
}

CertSubjectDNAttributeType ...

type CertificateValues

type CertificateValues *CertificateValuesType

CertificateValues ...

type CertificateValuesType

type CertificateValuesType struct {
	IdAttr                      string                     `xml:"Id,attr,omitempty"`
	EncapsulatedX509Certificate []*EncapsulatedPKIDataType `xml:"EncapsulatedX509Certificate"`
	OtherCertificate            []*AnyType                 `xml:"OtherCertificate"`
}

CertificateValuesType ...

type CertifiedRolesListType

type CertifiedRolesListType struct {
	CertifiedRole []*EncapsulatedPKIDataType `xml:"CertifiedRole"`
}

CertifiedRolesListType ...

type ClaimedRolesListType

type ClaimedRolesListType struct {
	ClaimedRole []*AnyType `xml:"ClaimedRole"`
}

ClaimedRolesListType ...

type CommitmentTypeIndication

type CommitmentTypeIndication *CommitmentTypeIndicationType

CommitmentTypeIndication ...

type CommitmentTypeIndicationType

type CommitmentTypeIndicationType struct {
	CommitmentTypeId         *ObjectIdentifierType             `xml:"CommitmentTypeId"`
	ObjectReference          []string                          `xml:"ObjectReference"`
	AllSignedDataObjects     *AllSignedDataObjects             `xml:"AllSignedDataObjects"`
	CommitmentTypeQualifiers *CommitmentTypeQualifiersListType `xml:"CommitmentTypeQualifiers,omitempty"`
}

CommitmentTypeIndicationType ...

type CommitmentTypeQualifiersListType

type CommitmentTypeQualifiersListType struct {
	CommitmentTypeQualifier []*AnyType `xml:"CommitmentTypeQualifier,omitempty"`
}

CommitmentTypeQualifiersListType ...

type CompleteCertificateRefs

type CompleteCertificateRefs *CompleteCertificateRefsType

CompleteCertificateRefs ...

type CompleteCertificateRefsType

type CompleteCertificateRefsType struct {
	IdAttr   string          `xml:"Id,attr,omitempty"`
	CertRefs *CertIDListType `xml:"CertRefs"`
}

CompleteCertificateRefsType ...

type CompleteRevocationRefs

type CompleteRevocationRefs *CompleteRevocationRefsType

CompleteRevocationRefs ...

type CompleteRevocationRefsType

type CompleteRevocationRefsType struct {
	IdAttr    string                   `xml:"Id,attr,omitempty"`
	CRLRefs   *CRLRefsType             `xml:"CRLRefs,omitempty"`
	OCSPRefs  *OCSPRefsType            `xml:"OCSPRefs,omitempty"`
	OtherRefs *OtherCertStatusRefsType `xml:"OtherRefs,omitempty"`
}

CompleteRevocationRefsType ...

type CounterSignature

type CounterSignature *CounterSignatureType

CounterSignature ...

type CounterSignatureType

type CounterSignatureType struct {
	DsSignature *Signature `xml:"ds:Signature"`
}

CounterSignatureType ...

type CriteriaListType

type CriteriaListType struct {
	AssertAttr        string              `xml:"assert,attr,omitempty"`
	KeyUsage          []*KeyUsageType     `xml:"KeyUsage,omitempty"`
	PolicySet         []*PoliciesListType `xml:"PolicySet,omitempty"`
	CriteriaList      []*CriteriaListType `xml:"CriteriaList,omitempty"`
	Description       string              `xml:"Description,omitempty"`
	OtherCriteriaList *AnyType            `xml:"otherCriteriaList,omitempty"`
}

CriteriaListType ...

type CryptoBinary

type CryptoBinary string

CryptoBinary ...

type DSAKeyValue

type DSAKeyValue *DSAKeyValueType

DSAKeyValue ...

type DSAKeyValueType

type DSAKeyValueType struct {
	P           string `xml:"P"`
	Q           string `xml:"Q"`
	G           string `xml:"G,omitempty"`
	Y           string `xml:"Y"`
	J           string `xml:"J,omitempty"`
	Seed        string `xml:"Seed"`
	PgenCounter string `xml:"PgenCounter"`
}

DSAKeyValueType ...

type DataObjectFormat

type DataObjectFormat *DataObjectFormatType

DataObjectFormat ...

type DataObjectFormatType

type DataObjectFormatType struct {
	ObjectReferenceAttr string                `xml:"ObjectReference,attr"`
	Description         string                `xml:"Description,omitempty"`
	ObjectIdentifier    *ObjectIdentifierType `xml:"ObjectIdentifier,omitempty"`
	MimeType            string                `xml:"MimeType,omitempty"`
	Encoding            string                `xml:"Encoding,omitempty"`
}

DataObjectFormatType ...

type DigestAlgAndValueType

type DigestAlgAndValueType struct {
	DsDigestMethod *DigestMethod `xml:"ds:DigestMethod"`
	DsDigestValue  *DigestValue  `xml:"ds:DigestValue"`
}

DigestAlgAndValueType ...

type DigestMethod

type DigestMethod *DigestMethodType

DigestMethod ...

type DigestMethodType

type DigestMethodType struct {
	AlgorithmAttr string `xml:"Algorithm,attr"`
}

DigestMethodType ...

type DigestValue

type DigestValue string

DigestValue ...

type DigestValueType

type DigestValueType string

DigestValueType ...

type DigitalIdentityListType

type DigitalIdentityListType struct {
	DigitalId []*DigitalIdentityType `xml:"DigitalId,omitempty"`
}

DigitalIdentityListType ...

type DigitalIdentityType

type DigitalIdentityType struct {
	X509Certificate string    `xml:"X509Certificate"`
	X509SubjectName string    `xml:"X509SubjectName"`
	DsKeyValue      *KeyValue `xml:"ds:KeyValue"`
	X509SKI         string    `xml:"X509SKI"`
	Other           *AnyType  `xml:"Other,omitempty"`
}

DigitalIdentityType ...

type DistributionPoints

type DistributionPoints *NonEmptyURIListType

DistributionPoints ...

type DocumentationReferencesType

type DocumentationReferencesType struct {
	DocumentationReference string `xml:"DocumentationReference"`
}

DocumentationReferencesType ...

type ElectronicAddress

type ElectronicAddress *ElectronicAddressType

ElectronicAddress ...

type ElectronicAddressType

type ElectronicAddressType struct {
	URI []*NonEmptyMultiLangURIType `xml:"URI"`
}

ElectronicAddressType ...

type EncapsulatedPKIData

type EncapsulatedPKIData *EncapsulatedPKIDataType

EncapsulatedPKIData ...

type EncapsulatedPKIDataType

type EncapsulatedPKIDataType struct {
	IdAttr       string `xml:"Id,attr,omitempty"`
	EncodingAttr string `xml:"Encoding,attr,omitempty"`
	Value        string `xml:",chardata"`
}

EncapsulatedPKIDataType ...

type ExpiredCertsRevocationInfo

type ExpiredCertsRevocationInfo string

ExpiredCertsRevocationInfo ...

type ExtendedKeyUsage

type ExtendedKeyUsage *ExtendedKeyUsageType

ExtendedKeyUsage ...

type ExtendedKeyUsageType

type ExtendedKeyUsageType struct {
	KeyPurposeId *ObjectIdentifierType `xml:"KeyPurposeId"`
}

ExtendedKeyUsageType ...

type Extension

type Extension *ExtensionType

Extension ...

type ExtensionType

type ExtensionType struct {
	CriticalAttr bool `xml:"Critical,attr"`
	*AnyType
}

ExtensionType ...

type ExtensionsListType

type ExtensionsListType struct {
	TslExtension []*ExtensionType `xml:"Extension"`
}

ExtensionsListType ...

type GenericTimeStampType

type GenericTimeStampType struct {
	IdAttr                   string                     `xml:"Id,attr,omitempty"`
	Include                  []*IncludeType             `xml:"Include,omitempty"`
	ReferenceInfo            []*ReferenceInfoType       `xml:"ReferenceInfo"`
	DsCanonicalizationMethod *CanonicalizationMethod    `xml:"ds:CanonicalizationMethod,omitempty"`
	EncapsulatedTimeStamp    []*EncapsulatedPKIDataType `xml:"EncapsulatedTimeStamp"`
	XMLTimeStamp             []*AnyType                 `xml:"XMLTimeStamp"`
}

GenericTimeStampType ...

type HMACOutputLengthType

type HMACOutputLengthType int

HMACOutputLengthType ...

type IdentifierType

type IdentifierType struct {
	QualifierAttr *QualifierType `xml:"Qualifier,attr,omitempty"`
	Value         string         `xml:",chardata"`
}

IdentifierType ...

type Include

type Include *IncludeType

Include ...

type IncludeType

type IncludeType struct {
	URIAttr            string `xml:"URI,attr"`
	ReferencedDataAttr bool   `xml:"referencedData,attr,omitempty"`
}

IncludeType ...

type IndividualDataObjectsTimeStamp

type IndividualDataObjectsTimeStamp *XAdESTimeStampType

IndividualDataObjectsTimeStamp ...

type IntegerListType

type IntegerListType struct {
	Int []int `xml:"int,omitempty"`
}

IntegerListType ...

type InternationalNamesType

type InternationalNamesType struct {
	Name []*MultiLangNormStringType `xml:"Name"`
}

InternationalNamesType ...

type KeyInfo

type KeyInfo *KeyInfoType

KeyInfo ...

type KeyInfoType

type KeyInfoType struct {
	IdAttr            string                 `xml:"Id,attr,omitempty"`
	DsKeyName         []string               `xml:"ds:KeyName"`
	DsKeyValue        []*KeyValueType        `xml:"ds:KeyValue"`
	DsRetrievalMethod []*RetrievalMethodType `xml:"ds:RetrievalMethod"`
	DsX509Data        []*X509DataType        `xml:"ds:X509Data"`
	DsPGPData         []*PGPDataType         `xml:"ds:PGPData"`
	DsSPKIData        []*SPKIDataType        `xml:"ds:SPKIData"`
	DsMgmtData        []string               `xml:"ds:MgmtData"`
}

KeyInfoType ...

type KeyName

type KeyName string

KeyName ...

type KeyUsageBitType

type KeyUsageBitType struct {
	NameAttr string `xml:"name,attr,omitempty"`
	Value    bool   `xml:",chardata"`
}

KeyUsageBitType ...

type KeyUsageType

type KeyUsageType struct {
	KeyUsageBit *KeyUsageBitType `xml:"KeyUsageBit"`
}

KeyUsageType ...

type KeyValue

type KeyValue *KeyValueType

KeyValue ...

type KeyValueType

type KeyValueType struct {
	DsDSAKeyValue *DSAKeyValueType `xml:"ds:DSAKeyValue"`
	DsRSAKeyValue *RSAKeyValueType `xml:"ds:RSAKeyValue"`
}

KeyValueType ...

type Lang

type Lang string

type Manifest

type Manifest *ManifestType

Manifest ...

type ManifestType

type ManifestType struct {
	IdAttr      string           `xml:"Id,attr,omitempty"`
	DsReference []*ReferenceType `xml:"ds:Reference"`
}

ManifestType ...

type MgmtData

type MgmtData string

MgmtData ...

type MimeType

type MimeType string

MimeType ...

type MultiLangNormStringType

type MultiLangNormStringType struct {
	XmlLangAttr               *Lang `xml:"lang,attr"`
	*NonEmptyNormalizedString `xml:",chardata"`
}

MultiLangNormStringType ...

type MultiLangStringType

type MultiLangStringType struct {
	XmlLangAttr     *Lang `xml:"lang,attr"`
	*NonEmptyString `xml:",chardata"`
}

MultiLangStringType ...

type NextUpdate

type NextUpdate *NextUpdateType

NextUpdate ...

type NextUpdateType

type NextUpdateType struct {
	DateTime string `xml:"dateTime,omitempty"`
}

NextUpdateType ...

type NonEmptyMultiLangURIListType

type NonEmptyMultiLangURIListType struct {
	URI []*NonEmptyMultiLangURIType `xml:"URI"`
}

NonEmptyMultiLangURIListType ...

type NonEmptyMultiLangURIType

type NonEmptyMultiLangURIType struct {
	XmlLangAttr *Lang  `xml:"lang,attr"`
	Value       string `xml:",chardata"`
}

NonEmptyMultiLangURIType ...

type NonEmptyNormalizedString

type NonEmptyNormalizedString string

NonEmptyNormalizedString ...

type NonEmptyString

type NonEmptyString string

NonEmptyString ...

type NonEmptyURIListType

type NonEmptyURIListType struct {
	URI []string `xml:"URI"`
}

NonEmptyURIListType ...

type NonEmptyURIType

type NonEmptyURIType string

NonEmptyURIType ...

type NoticeReferenceType

type NoticeReferenceType struct {
	Organization  string           `xml:"Organization"`
	NoticeNumbers *IntegerListType `xml:"NoticeNumbers"`
}

NoticeReferenceType ...

type OCSPIdentifierType

type OCSPIdentifierType struct {
	URIAttr     string           `xml:"URI,attr,omitempty"`
	ResponderID *ResponderIDType `xml:"ResponderID"`
	ProducedAt  string           `xml:"ProducedAt"`
}

OCSPIdentifierType ...

type OCSPRefType

type OCSPRefType struct {
	OCSPIdentifier    *OCSPIdentifierType    `xml:"OCSPIdentifier"`
	DigestAlgAndValue *DigestAlgAndValueType `xml:"DigestAlgAndValue,omitempty"`
}

OCSPRefType ...

type OCSPRefsType

type OCSPRefsType struct {
	OCSPRef []*OCSPRefType `xml:"OCSPRef"`
}

OCSPRefsType ...

type OCSPValuesType

type OCSPValuesType struct {
	EncapsulatedOCSPValue []*EncapsulatedPKIDataType `xml:"EncapsulatedOCSPValue"`
}

OCSPValuesType ...

type Object

type Object *ObjectType

Object ...

type ObjectIdentifier

type ObjectIdentifier *ObjectIdentifierType

ObjectIdentifier ...

type ObjectIdentifierType

type ObjectIdentifierType struct {
	Identifier              *IdentifierType              `xml:"Identifier"`
	Description             string                       `xml:"Description,omitempty"`
	DocumentationReferences *DocumentationReferencesType `xml:"DocumentationReferences,omitempty"`
}

ObjectIdentifierType ...

type ObjectType

type ObjectType struct {
	IdAttr       string `xml:"Id,attr,omitempty"`
	MimeTypeAttr string `xml:"MimeType,attr,omitempty"`
	EncodingAttr string `xml:"Encoding,attr,omitempty"`
}

ObjectType ...

type OtherCertStatusRefsType

type OtherCertStatusRefsType struct {
	OtherRef []*AnyType `xml:"OtherRef"`
}

OtherCertStatusRefsType ...

type OtherCertStatusValuesType

type OtherCertStatusValuesType struct {
	OtherValue []*AnyType `xml:"OtherValue"`
}

OtherCertStatusValuesType ...

type OtherTSLPointer

type OtherTSLPointer *OtherTSLPointerType

OtherTSLPointer ...

type OtherTSLPointerType

type OtherTSLPointerType struct {
	TslServiceDigitalIdentities *ServiceDigitalIdentityListType `xml:"ServiceDigitalIdentities,omitempty"`
	TSLLocation                 string                          `xml:"TSLLocation"`
	TslAdditionalInformation    *AdditionalInformationType      `xml:"AdditionalInformation,omitempty"`
}

OtherTSLPointerType ...

type OtherTSLPointersType

type OtherTSLPointersType struct {
	TslOtherTSLPointer []*OtherTSLPointerType `xml:"OtherTSLPointer"`
}

OtherTSLPointersType ...

type OtherTimeStamp

type OtherTimeStamp *OtherTimeStampType

OtherTimeStamp ...

type OtherTimeStampType

type OtherTimeStampType struct {
	IdAttr                   string                   `xml:"Id,attr,omitempty"`
	ReferenceInfo            []*ReferenceInfoType     `xml:"ReferenceInfo"`
	DsCanonicalizationMethod *CanonicalizationMethod  `xml:"ds:CanonicalizationMethod,omitempty"`
	EncapsulatedTimeStamp    *EncapsulatedPKIDataType `xml:"EncapsulatedTimeStamp"`
	XMLTimeStamp             *AnyType                 `xml:"XMLTimeStamp"`
}

OtherTimeStampType ...

type PGPData

type PGPData *PGPDataType

PGPData ...

type PGPDataType

type PGPDataType struct {
	PGPKeyID     string `xml:"PGPKeyID"`
	PGPKeyPacket string `xml:"PGPKeyPacket,omitempty"`
}

PGPDataType ...

type PointersToOtherTSL

type PointersToOtherTSL *OtherTSLPointersType

PointersToOtherTSL ...

type PoliciesListType

type PoliciesListType struct {
	PolicyIdentifier *ObjectIdentifierType `xml:"PolicyIdentifier"`
}

PoliciesListType ...

type PolicyOrLegalNotice

type PolicyOrLegalNotice *PolicyOrLegalnoticeType

PolicyOrLegalNotice ...

type PolicyOrLegalnoticeType

type PolicyOrLegalnoticeType struct {
	TSLPolicy      []*NonEmptyMultiLangURIType `xml:"TSLPolicy"`
	TSLLegalNotice []*MultiLangStringType      `xml:"TSLLegalNotice"`
}

PolicyOrLegalnoticeType ...

type PostalAddress

type PostalAddress *PostalAddressType

PostalAddress ...

type PostalAddressListType

type PostalAddressListType struct {
	TslPostalAddress []*PostalAddressType `xml:"PostalAddress"`
}

PostalAddressListType ...

type PostalAddressType

type PostalAddressType struct {
	XmlLangAttr     *Lang  `xml:"lang,attr"`
	StreetAddress   string `xml:"StreetAddress"`
	Locality        string `xml:"Locality"`
	StateOrProvince string `xml:"StateOrProvince,omitempty"`
	PostalCode      string `xml:"PostalCode,omitempty"`
	CountryName     string `xml:"CountryName"`
}

PostalAddressType ...

type PostalAddresses

type PostalAddresses *PostalAddressListType

PostalAddresses ...

type PublicKeyLocation

type PublicKeyLocation *NonEmptyURIType

PublicKeyLocation ...

type QualificationElementType

type QualificationElementType struct {
	Qualifiers   *QualifiersType   `xml:"Qualifiers"`
	CriteriaList *CriteriaListType `xml:"CriteriaList"`
}

QualificationElementType ...

type Qualifications

type Qualifications *QualificationsType

Qualifications ...

type QualificationsType

type QualificationsType struct {
	QualificationElement *QualificationElementType `xml:"QualificationElement"`
}

QualificationsType ...

type QualifierType

type QualifierType struct {
	UriAttr string `xml:"uri,attr,omitempty"`
}

QualifierType ...

type QualifiersType

type QualifiersType struct {
	Qualifier *QualifierType `xml:"Qualifier"`
}

QualifiersType ...

type QualifyingProperties

type QualifyingProperties *QualifyingPropertiesType

QualifyingProperties ...

type QualifyingPropertiesReference

type QualifyingPropertiesReference *QualifyingPropertiesReferenceType

QualifyingPropertiesReference ...

type QualifyingPropertiesReferenceType

type QualifyingPropertiesReferenceType struct {
	URIAttr string `xml:"URI,attr"`
	IdAttr  string `xml:"Id,attr,omitempty"`
}

QualifyingPropertiesReferenceType ...

type QualifyingPropertiesType

type QualifyingPropertiesType struct {
	TargetAttr         string                  `xml:"Target,attr"`
	IdAttr             string                  `xml:"Id,attr,omitempty"`
	SignedProperties   *SignedPropertiesType   `xml:"SignedProperties,omitempty"`
	UnsignedProperties *UnsignedPropertiesType `xml:"UnsignedProperties,omitempty"`
}

QualifyingPropertiesType ...

type RSAKeyValue

type RSAKeyValue *RSAKeyValueType

RSAKeyValue ...

type RSAKeyValueType

type RSAKeyValueType struct {
	Modulus  string `xml:"Modulus"`
	Exponent string `xml:"Exponent"`
}

RSAKeyValueType ...

type Reference

type Reference *ReferenceType

Reference ...

type ReferenceInfo

type ReferenceInfo *ReferenceInfoType

ReferenceInfo ...

type ReferenceInfoType

type ReferenceInfoType struct {
	IdAttr         string        `xml:"Id,attr,omitempty"`
	URIAttr        string        `xml:"URI,attr,omitempty"`
	DsDigestMethod *DigestMethod `xml:"ds:DigestMethod"`
	DsDigestValue  *DigestValue  `xml:"ds:DigestValue"`
}

ReferenceInfoType ...

type ReferenceType

type ReferenceType struct {
	IdAttr         string            `xml:"Id,attr,omitempty"`
	URIAttr        string            `xml:"URI,attr,omitempty"`
	TypeAttr       string            `xml:"Type,attr,omitempty"`
	DsTransforms   *TransformsType   `xml:"ds:Transforms,omitempty"`
	DsDigestMethod *DigestMethodType `xml:"ds:DigestMethod"`
	DsDigestValue  *DigestValueType  `xml:"ds:DigestValue"`
}

ReferenceType ...

type RefsOnlyTimeStamp

type RefsOnlyTimeStamp *XAdESTimeStampType

RefsOnlyTimeStamp ...

type ResponderIDType

type ResponderIDType struct {
	ByName string `xml:"ByName"`
	ByKey  string `xml:"ByKey"`
}

ResponderIDType ...

type RetrievalMethod

type RetrievalMethod *RetrievalMethodType

RetrievalMethod ...

type RetrievalMethodType

type RetrievalMethodType struct {
	URIAttr      string          `xml:"URI,attr,omitempty"`
	TypeAttr     string          `xml:"Type,attr,omitempty"`
	DsTransforms *TransformsType `xml:"ds:Transforms,omitempty"`
}

RetrievalMethodType ...

type RevocationValues

type RevocationValues *RevocationValuesType

RevocationValues ...

type RevocationValuesType

type RevocationValuesType struct {
	IdAttr      string                     `xml:"Id,attr,omitempty"`
	CRLValues   *CRLValuesType             `xml:"CRLValues,omitempty"`
	OCSPValues  *OCSPValuesType            `xml:"OCSPValues,omitempty"`
	OtherValues *OtherCertStatusValuesType `xml:"OtherValues,omitempty"`
}

RevocationValuesType ...

type SPKIData

type SPKIData *SPKIDataType

SPKIData ...

type SPKIDataType

type SPKIDataType struct {
	SPKISexp string `xml:"SPKISexp"`
}

SPKIDataType ...

type SPURI

type SPURI string

SPURI ...

type SPUserNotice

type SPUserNotice *SPUserNoticeType

SPUserNotice ...

type SPUserNoticeType

type SPUserNoticeType struct {
	NoticeRef    *NoticeReferenceType `xml:"NoticeRef,omitempty"`
	ExplicitText string               `xml:"ExplicitText,omitempty"`
}

SPUserNoticeType ...

type SchemeInformation

type SchemeInformation *TSLSchemeInformationType

SchemeInformation ...

type SchemeInformationURI

type SchemeInformationURI *NonEmptyMultiLangURIListType

SchemeInformationURI ...

type SchemeName

type SchemeName *InternationalNamesType

SchemeName ...

type SchemeOperatorName

type SchemeOperatorName *InternationalNamesType

SchemeOperatorName ...

type SchemeTerritory

type SchemeTerritory string

SchemeTerritory ...

type SchemeTypeCommunityRules

type SchemeTypeCommunityRules *NonEmptyMultiLangURIListType

SchemeTypeCommunityRules ...

type ServiceDigitalIdentities

type ServiceDigitalIdentities *ServiceDigitalIdentityListType

ServiceDigitalIdentities ...

type ServiceDigitalIdentity

type ServiceDigitalIdentity *DigitalIdentityListType

ServiceDigitalIdentity ...

type ServiceDigitalIdentityListType

type ServiceDigitalIdentityListType struct {
	TslServiceDigitalIdentity []*DigitalIdentityListType `xml:"ServiceDigitalIdentity"`
}

ServiceDigitalIdentityListType ...

type ServiceHistory

type ServiceHistory *ServiceHistoryType

ServiceHistory ...

type ServiceHistoryInstance

type ServiceHistoryInstance *ServiceHistoryInstanceType

ServiceHistoryInstance ...

type ServiceHistoryInstanceType

type ServiceHistoryInstanceType struct {
	TslServiceTypeIdentifier     string                   `xml:"ServiceTypeIdentifier"`
	ServiceName                  *InternationalNamesType  `xml:"ServiceName"`
	TslServiceDigitalIdentity    *DigitalIdentityListType `xml:"ServiceDigitalIdentity"`
	TslServiceStatus             string                   `xml:"ServiceStatus"`
	StatusStartingTime           string                   `xml:"StatusStartingTime"`
	ServiceInformationExtensions *ExtensionsListType      `xml:"ServiceInformationExtensions,omitempty"`
}

ServiceHistoryInstanceType ...

type ServiceHistoryType

type ServiceHistoryType struct {
	TslServiceHistoryInstance []*ServiceHistoryInstanceType `xml:"ServiceHistoryInstance,omitempty"`
}

ServiceHistoryType ...

type ServiceInformation

type ServiceInformation *TSPServiceInformationType

ServiceInformation ...

type ServiceStatus

type ServiceStatus string

ServiceStatus ...

type ServiceSupplyPoints

type ServiceSupplyPoints *ServiceSupplyPointsType

ServiceSupplyPoints ...

type ServiceSupplyPointsType

type ServiceSupplyPointsType struct {
	ServiceSupplyPoint *AttributedNonEmptyURIType `xml:"ServiceSupplyPoint"`
}

ServiceSupplyPointsType ...

type ServiceTypeIdentifier

type ServiceTypeIdentifier string

ServiceTypeIdentifier ...

type SigAndRefsTimeStamp

type SigAndRefsTimeStamp *XAdESTimeStampType

SigAndRefsTimeStamp ...

type SigPolicyQualifiersListType

type SigPolicyQualifiersListType struct {
	SigPolicyQualifier []*AnyType `xml:"SigPolicyQualifier"`
}

SigPolicyQualifiersListType ...

type Signature

type Signature *SignatureType

Signature ...

type SignatureMethod

type SignatureMethod *SignatureMethodType

SignatureMethod ...

type SignatureMethodType

type SignatureMethodType struct {
	AlgorithmAttr    string `xml:"Algorithm,attr"`
	HMACOutputLength int    `xml:"HMACOutputLength,omitempty"`
}

SignatureMethodType ...

type SignaturePolicyIdType

type SignaturePolicyIdType struct {
	SigPolicyId         *ObjectIdentifierType        `xml:"SigPolicyId"`
	DsTransforms        *Transforms                  `xml:"ds:Transforms,omitempty"`
	SigPolicyHash       *DigestAlgAndValueType       `xml:"SigPolicyHash"`
	SigPolicyQualifiers *SigPolicyQualifiersListType `xml:"SigPolicyQualifiers,omitempty"`
}

SignaturePolicyIdType ...

type SignaturePolicyIdentifier

type SignaturePolicyIdentifier *SignaturePolicyIdentifierType

SignaturePolicyIdentifier ...

type SignaturePolicyIdentifierType

type SignaturePolicyIdentifierType struct {
	SignaturePolicyId      *SignaturePolicyIdType  `xml:"SignaturePolicyId"`
	SignaturePolicyImplied *SignaturePolicyImplied `xml:"SignaturePolicyImplied"`
}

SignaturePolicyIdentifierType ...

type SignaturePolicyImplied

type SignaturePolicyImplied AnyType

some stuff needed by xgen

type SignatureProductionPlace

type SignatureProductionPlace *SignatureProductionPlaceType

SignatureProductionPlace ...

type SignatureProductionPlaceType

type SignatureProductionPlaceType struct {
	City            string `xml:"City,omitempty"`
	StateOrProvince string `xml:"StateOrProvince,omitempty"`
	PostalCode      string `xml:"PostalCode,omitempty"`
	CountryName     string `xml:"CountryName,omitempty"`
}

SignatureProductionPlaceType ...

type SignatureProperties

type SignatureProperties *SignaturePropertiesType

SignatureProperties ...

type SignaturePropertiesType

type SignaturePropertiesType struct {
	IdAttr              string                   `xml:"Id,attr,omitempty"`
	DsSignatureProperty []*SignaturePropertyType `xml:"ds:SignatureProperty"`
}

SignaturePropertiesType ...

type SignatureProperty

type SignatureProperty *SignaturePropertyType

SignatureProperty ...

type SignaturePropertyType

type SignaturePropertyType struct {
	TargetAttr string `xml:"Target,attr"`
	IdAttr     string `xml:"Id,attr,omitempty"`
}

SignaturePropertyType ...

type SignatureTimeStamp

type SignatureTimeStamp *XAdESTimeStampType

SignatureTimeStamp ...

type SignatureType

type SignatureType struct {
	IdAttr           string              `xml:"Id,attr,omitempty"`
	DsSignedInfo     *SignedInfoType     `xml:"ds:SignedInfo"`
	DsSignatureValue *SignatureValueType `xml:"ds:SignatureValue"`
	DsKeyInfo        *KeyInfoType        `xml:"ds:KeyInfo,omitempty"`
	DsObject         []*ObjectType       `xml:"ds:Object,omitempty"`
}

SignatureType ...

type SignatureValue

type SignatureValue *SignatureValueType

SignatureValue ...

type SignatureValueType

type SignatureValueType struct {
	IdAttr string `xml:"Id,attr,omitempty"`
	Value  string `xml:",chardata"`
}

SignatureValueType ...

type SignedDataObjectProperties

type SignedDataObjectProperties *SignedDataObjectPropertiesType

SignedDataObjectProperties ...

type SignedDataObjectPropertiesType

type SignedDataObjectPropertiesType struct {
	IdAttr                         string                          `xml:"Id,attr,omitempty"`
	DataObjectFormat               []*DataObjectFormatType         `xml:"DataObjectFormat,omitempty"`
	CommitmentTypeIndication       []*CommitmentTypeIndicationType `xml:"CommitmentTypeIndication,omitempty"`
	AllDataObjectsTimeStamp        []*XAdESTimeStampType           `xml:"AllDataObjectsTimeStamp,omitempty"`
	IndividualDataObjectsTimeStamp []*XAdESTimeStampType           `xml:"IndividualDataObjectsTimeStamp,omitempty"`
}

SignedDataObjectPropertiesType ...

type SignedInfo

type SignedInfo *SignedInfoType

SignedInfo ...

type SignedInfoType

type SignedInfoType struct {
	IdAttr                   string                      `xml:"Id,attr,omitempty"`
	DsCanonicalizationMethod *CanonicalizationMethodType `xml:"ds:CanonicalizationMethod"`
	DsSignatureMethod        *SignatureMethodType        `xml:"ds:SignatureMethod"`
	DsReference              []*ReferenceType            `xml:"ds:Reference"`
}

SignedInfoType ...

type SignedProperties

type SignedProperties *SignedPropertiesType

SignedProperties ...

type SignedPropertiesType

type SignedPropertiesType struct {
	IdAttr                     string                          `xml:"Id,attr,omitempty"`
	SignedSignatureProperties  *SignedSignaturePropertiesType  `xml:"SignedSignatureProperties,omitempty"`
	SignedDataObjectProperties *SignedDataObjectPropertiesType `xml:"SignedDataObjectProperties,omitempty"`
}

SignedPropertiesType ...

type SignedSignatureProperties

type SignedSignatureProperties *SignedSignaturePropertiesType

SignedSignatureProperties ...

type SignedSignaturePropertiesType

type SignedSignaturePropertiesType struct {
	IdAttr                    string                         `xml:"Id,attr,omitempty"`
	SigningTime               string                         `xml:"SigningTime,omitempty"`
	SigningCertificate        *CertIDListType                `xml:"SigningCertificate,omitempty"`
	SignaturePolicyIdentifier *SignaturePolicyIdentifierType `xml:"SignaturePolicyIdentifier,omitempty"`
	SignatureProductionPlace  *SignatureProductionPlaceType  `xml:"SignatureProductionPlace,omitempty"`
	SignerRole                *SignerRoleType                `xml:"SignerRole,omitempty"`
}

SignedSignaturePropertiesType ...

type SignerRole

type SignerRole *SignerRoleType

SignerRole ...

type SignerRoleType

type SignerRoleType struct {
	ClaimedRoles   *ClaimedRolesListType   `xml:"ClaimedRoles,omitempty"`
	CertifiedRoles *CertifiedRolesListType `xml:"CertifiedRoles,omitempty"`
}

SignerRoleType ...

type SigningCertificate

type SigningCertificate *CertIDListType

SigningCertificate ...

type SigningTime

type SigningTime string

SigningTime ...

type TSL

type TSL struct {
	StatusList TrustStatusListType `xml:"tsl:TrustServiceStatusList"`
	Source     string
	Signed     bool
	Signer     x509.Certificate
	Referenced []*TSL
}

A representation of an ETSI 119 612 trust status list. The main struct type StatusList is autogenerated from the v2 XML Schema definition.

func FetchTSL

func FetchTSL(url string) (*TSL, error)

FetchTSL creates a TSL object from a URL. The URL is fetched with net/http, parsed and unmarshalled into the object structure. This function uses DefaultTSLFetchOptions and automatically dereferences pointers to other TSLs.

For more control over HTTP parameters and dereferencing behavior, use FetchTSLWithOptions.

Returns the root TSL only. For accessing referenced TSLs, use FetchTSLWithAllReferences.

func FetchTSLWithAllReferences

func FetchTSLWithAllReferences(url string) ([]*TSL, error)

FetchTSLWithAllReferences fetches a TSL and all its referenced TSLs using default options. This returns all TSLs in a slice, with the root TSL being the first element.

Parameters:

  • url: The URL to fetch the TSL from

Returns:

  • A slice containing the root TSL and all referenced TSLs
  • Any error that occurred during fetching

func FetchTSLWithOptions

func FetchTSLWithOptions(url string, options TSLFetchOptions) (*TSL, error)

FetchTSLWithOptions creates a TSL object from a URL with custom fetch options. The URL is fetched with net/http using the provided options, parsed and unmarshalled into the object structure.

Unlike FetchTSL, this function does not automatically dereference pointers to other TSLs. To fetch a TSL and all its referenced TSLs with the same options, use FetchTSLWithReferencesAndOptions.

Parameters:

  • url: The URL to fetch the TSL from (supports file:// URLs for local files)
  • options: Options controlling HTTP request parameters

Returns:

  • A pointer to the fetched and parsed TSL
  • Any error that occurred during fetching or parsing

func FetchTSLWithReferencesAndOptions

func FetchTSLWithReferencesAndOptions(url string, options TSLFetchOptions) ([]*TSL, error)

FetchTSLWithReferencesAndOptions fetches a TSL and all its referenced TSLs with the specified options. This is a convenience function that combines FetchTSLWithOptions and dereferencePointersToOtherTSLWithOptions. The depth of dereferencing is controlled by options.MaxDereferenceDepth.

Parameters:

  • url: The URL to fetch the TSL from
  • options: Options controlling HTTP request parameters and dereferencing depth

Returns:

  • A slice containing the fetched TSL and all its referenced TSLs (if any)
  • Any error that occurred during fetching or parsing the root TSL

The first element in the returned slice is always the root TSL. Any referenced TSLs that were successfully fetched follow in the slice. This allows callers to process both the root TSL and all its references without having to traverse the reference tree.

func (*TSL) AddReferencedTSL

func (tsl *TSL) AddReferencedTSL(ref *TSL)

func (*TSL) CleanCerts

func (tsl *TSL) CleanCerts()

CleanCerts trims whitespace from all certificates in the TSL.

func (*TSL) DereferencePointersToOtherTSL

func (tsl *TSL) DereferencePointersToOtherTSL()

DereferencePointersToOtherTSL fetches and adds all referenced TSLs using default options. This examines the TSL for pointers to other TSLs (TslPointersToOtherTSL) and fetches each of them using the default fetch options.

func (*TSL) NumberOfTrustServiceProviders

func (tsl *TSL) NumberOfTrustServiceProviders() int

func (*TSL) SchemeOperatorName

func (tsl *TSL) SchemeOperatorName() string

func (*TSL) String

func (tsl *TSL) String() string

func (*TSL) Summary

func (tsl *TSL) Summary() map[string]interface{}

Summary returns a human-readable summary of scheme-level information for this TSL.

func (*TSL) ToCertPool

func (tsl *TSL) ToCertPool(policy *TSPServicePolicy) *x509.CertPool

Generate a crypto/xml.CertPool object from the TSL.

func (*TSL) ToCertPoolWithReferences

func (tsl *TSL) ToCertPoolWithReferences(policy *TSPServicePolicy) *x509.CertPool

ToCertPoolWithReferences generates a crypto/xml.CertPool object from the TSL and all its referenced TSLs. This method processes this TSL and all TSLs found in the Referenced slice.

Parameters:

  • policy: The policy to apply when validating certificates

Returns:

  • *x509.CertPool: A certificate pool containing all valid certificates from this TSL and all its referenced TSLs that satisfy the given policy

func (*TSL) WithTrustServices

func (tsl *TSL) WithTrustServices(cb func(*TSPType, *TSPServiceType))

WithTrustServices walks a TSL, calling cb once for each TrustService found. The TrustServiceProvider is provided as a first argument to the callback

type TSLFetchOptions

type TSLFetchOptions struct {
	// UserAgent is the User-Agent header to use for HTTP requests.
	// A descriptive User-Agent helps server administrators identify client applications
	// and can prevent blocking of requests that don't identify themselves.
	UserAgent string

	// Timeout is the maximum time to wait for an HTTP request to complete.
	// This helps prevent applications from hanging indefinitely when servers are
	// unresponsive or connections are slow.
	Timeout time.Duration

	// Client is a custom HTTP client to use instead of the default one.
	// If provided, the Timeout option is ignored as the client should be
	// configured with the desired timeout and other settings.
	// Use this for advanced scenarios like custom TLS configuration or proxies.
	Client *http.Client

	// MaxDereferenceDepth controls how many levels of TSL references are followed.
	// A value of 0 means no references are followed.
	// A value of -1 means follow references without a limit (be careful with this).
	// Any positive value limits the depth of reference traversal.
	MaxDereferenceDepth int

	// AcceptHeaders defines the Accept header(s) to send with HTTP requests.
	// This helps with content negotiation to ensure we receive XML content.
	// If empty, a default set of XML-related Accept headers will be used.
	AcceptHeaders []string
}

TSLFetchOptions defines configurable options for fetching Trust Service Lists. It allows controlling HTTP request parameters like User-Agent and timeout.

The options provide control over:

  • The User-Agent header sent with HTTP requests
  • The timeout for HTTP connections and requests
  • Using a custom HTTP client for more advanced configuration
  • The maximum depth for dereferencing pointers to other TSLs

For most cases, the DefaultTSLFetchOptions provide reasonable settings.

type TSLSchemeInformationType

type TSLSchemeInformationType struct {
	TSLVersionIdentifier        int                           `xml:"TSLVersionIdentifier"`
	TSLSequenceNumber           int                           `xml:"TSLSequenceNumber"`
	TslTSLType                  string                        `xml:"TSLType"`
	TslSchemeOperatorName       *InternationalNamesType       `xml:"SchemeOperatorName"`
	SchemeOperatorAddress       *AddressType                  `xml:"SchemeOperatorAddress"`
	TslSchemeName               *InternationalNamesType       `xml:"SchemeName"`
	TslSchemeInformationURI     *NonEmptyMultiLangURIListType `xml:"SchemeInformationURI"`
	StatusDeterminationApproach string                        `xml:"StatusDeterminationApproach"`
	TslSchemeTypeCommunityRules *NonEmptyMultiLangURIListType `xml:"SchemeTypeCommunityRules,omitempty"`
	TslSchemeTerritory          string                        `xml:"SchemeTerritory,omitempty"`
	TslPolicyOrLegalNotice      *PolicyOrLegalnoticeType      `xml:"PolicyOrLegalNotice,omitempty"`
	HistoricalInformationPeriod int                           `xml:"HistoricalInformationPeriod"`
	TslPointersToOtherTSL       *OtherTSLPointersType         `xml:"PointersToOtherTSL,omitempty"`
	ListIssueDateTime           string                        `xml:"ListIssueDateTime"`
	TslNextUpdate               *NextUpdateType               `xml:"NextUpdate"`
	TslDistributionPoints       *NonEmptyURIListType          `xml:"DistributionPoints,omitempty"`
	SchemeExtensions            *ExtensionsListType           `xml:"SchemeExtensions,omitempty"`
}

TSLSchemeInformationType ...

type TSLType

type TSLType string

TSLType ...

type TSPInformation

type TSPInformation *TSPInformationType

TSPInformation ...

type TSPInformationType

type TSPInformationType struct {
	TSPName                  *InternationalNamesType       `xml:"TSPName"`
	TSPTradeName             *InternationalNamesType       `xml:"TSPTradeName,omitempty"`
	TSPAddress               *AddressType                  `xml:"TSPAddress"`
	TSPInformationURI        *NonEmptyMultiLangURIListType `xml:"TSPInformationURI"`
	TSPInformationExtensions *ExtensionsListType           `xml:"TSPInformationExtensions,omitempty"`
}

TSPInformationType ...

type TSPService

type TSPService *TSPServiceType

TSPService ...

type TSPServiceInformationType

type TSPServiceInformationType struct {
	TslServiceTypeIdentifier     string                        `xml:"ServiceTypeIdentifier"`
	ServiceName                  *InternationalNamesType       `xml:"ServiceName"`
	TslServiceDigitalIdentity    *DigitalIdentityListType      `xml:"ServiceDigitalIdentity"`
	TslServiceStatus             string                        `xml:"ServiceStatus"`
	StatusStartingTime           string                        `xml:"StatusStartingTime"`
	SchemeServiceDefinitionURI   *NonEmptyMultiLangURIListType `xml:"SchemeServiceDefinitionURI,omitempty"`
	TslServiceSupplyPoints       *ServiceSupplyPointsType      `xml:"ServiceSupplyPoints,omitempty"`
	TSPServiceDefinitionURI      *NonEmptyMultiLangURIListType `xml:"TSPServiceDefinitionURI,omitempty"`
	ServiceInformationExtensions *ExtensionsListType           `xml:"ServiceInformationExtensions,omitempty"`
}

TSPServiceInformationType ...

type TSPServicePolicy

type TSPServicePolicy struct {
	ServiceTypeIdentifier []string
	ServiceStatus         []string
}

A struct representing configuration of the validation process. By default the ServiceStatus field contains a single element (ServiceStatusGranted) that represents the standardized value for indicating that the trust service provider is valid and granted access in the trust status list (ie not withdrawn). The ServiceTypeIdentifier is a list of allowed service types. When creating the CertPool for use in certificate validation the ServiceTypeIdentifier can be populated with a list of allowed types. If left empty this means every service type is allowed.

func NewTSPServicePolicy

func NewTSPServicePolicy() *TSPServicePolicy

Create a standard TSPServicePolicy instance. Calling this creates the same object as the "PolicyAll" constant.

func (*TSPServicePolicy) AddServiceStatus

func (tc *TSPServicePolicy) AddServiceStatus(status string)

Add an element to the ServiceStatus array. Note that adding to this array without first removing the standard "granted" element may not yield the expected results.

func (*TSPServicePolicy) AddServiceTypeIdentifier

func (tc *TSPServicePolicy) AddServiceTypeIdentifier(sti string)

Add an element to the ServiceTypeIdentifier array.

type TSPServiceType

type TSPServiceType struct {
	TslServiceInformation *TSPServiceInformationType `xml:"ServiceInformation"`
	TslServiceHistory     *ServiceHistoryType        `xml:"ServiceHistory,omitempty"`
}

TSPServiceType ...

func (*TSPServiceType) WithCertificates

func (svc *TSPServiceType) WithCertificates(cb func(*x509.Certificate))

Cahe provided callback for all t all the X509 certificate data for the given Trust Service object.

type TSPServices

type TSPServices *TSPServicesListType

TSPServices ...

type TSPServicesListType

type TSPServicesListType struct {
	TslTSPService []*TSPServiceType `xml:"TSPService"`
}

TSPServicesListType ...

type TSPType

type TSPType struct {
	TslTSPInformation *TSPInformationType  `xml:"TSPInformation"`
	TslTSPServices    *TSPServicesListType `xml:"TSPServices"`
}

TSPType ...

func (*TSPType) Validate

func (tsp *TSPType) Validate(svc *TSPServiceType, chain []*x509.Certificate, policy *TSPServicePolicy) error

Checks a Trust Service for validity during certificate validation.

type TakenOverBy

type TakenOverBy *TakenOverByType

TakenOverBy ...

type TakenOverByType

type TakenOverByType struct {
	URI                   *NonEmptyMultiLangURIType `xml:"URI"`
	TSPName               *InternationalNamesType   `xml:"TSPName"`
	TslSchemeOperatorName *SchemeOperatorName       `xml:"SchemeOperatorName"`
	TslSchemeTerritory    *SchemeTerritory          `xml:"SchemeTerritory"`
	OtherQualifier        []*AnyType                `xml:"OtherQualifier,omitempty"`
}

TakenOverByType ...

type Transform

type Transform *TransformType

Transform ...

type TransformType

type TransformType struct {
	AlgorithmAttr string   `xml:"Algorithm,attr"`
	XPath         []string `xml:"XPath"`
}

TransformType ...

type Transforms

type Transforms *TransformsType

Transforms ...

type TransformsType

type TransformsType struct {
	DsTransform []*TransformType `xml:"ds:Transform"`
}

TransformsType ...

type TrustServiceProvider

type TrustServiceProvider *TSPType

TrustServiceProvider ...

type TrustServiceProviderList

type TrustServiceProviderList *TrustServiceProviderListType

TrustServiceProviderList ...

type TrustServiceProviderListType

type TrustServiceProviderListType struct {
	TslTrustServiceProvider []*TSPType `xml:"TrustServiceProvider"`
}

TrustServiceProviderListType ...

type TrustServiceStatusList

type TrustServiceStatusList *TrustStatusListType

TrustServiceStatusList ...

type TrustStatusListType

type TrustStatusListType struct {
	TSLTagAttr                  string                        `xml:"TSLTag,attr"`
	IdAttr                      string                        `xml:"Id,attr,omitempty"`
	TslSchemeInformation        *TSLSchemeInformationType     `xml:"SchemeInformation"`
	TslTrustServiceProviderList *TrustServiceProviderListType `xml:"TrustServiceProviderList,omitempty"`
	DsSignature                 *Signature                    `xml:"ds:Signature,omitempty"`
}

TrustStatusListType ...

type UnsignedDataObjectProperties

type UnsignedDataObjectProperties *UnsignedDataObjectPropertiesType

UnsignedDataObjectProperties ...

type UnsignedDataObjectPropertiesType

type UnsignedDataObjectPropertiesType struct {
	IdAttr                     string     `xml:"Id,attr,omitempty"`
	UnsignedDataObjectProperty []*AnyType `xml:"UnsignedDataObjectProperty"`
}

UnsignedDataObjectPropertiesType ...

type UnsignedProperties

type UnsignedProperties *UnsignedPropertiesType

UnsignedProperties ...

type UnsignedPropertiesType

type UnsignedPropertiesType struct {
	IdAttr                       string                            `xml:"Id,attr,omitempty"`
	UnsignedSignatureProperties  *UnsignedSignaturePropertiesType  `xml:"UnsignedSignatureProperties,omitempty"`
	UnsignedDataObjectProperties *UnsignedDataObjectPropertiesType `xml:"UnsignedDataObjectProperties,omitempty"`
}

UnsignedPropertiesType ...

type UnsignedSignatureProperties

type UnsignedSignatureProperties *UnsignedSignaturePropertiesType

UnsignedSignatureProperties ...

type UnsignedSignaturePropertiesType

type UnsignedSignaturePropertiesType struct {
	IdAttr                    string                         `xml:"Id,attr,omitempty"`
	CounterSignature          []*CounterSignatureType        `xml:"CounterSignature"`
	SignatureTimeStamp        []*XAdESTimeStampType          `xml:"SignatureTimeStamp"`
	CompleteCertificateRefs   []*CompleteCertificateRefsType `xml:"CompleteCertificateRefs"`
	CompleteRevocationRefs    []*CompleteRevocationRefsType  `xml:"CompleteRevocationRefs"`
	AttributeCertificateRefs  []*CompleteCertificateRefsType `xml:"AttributeCertificateRefs"`
	AttributeRevocationRefs   []*CompleteRevocationRefsType  `xml:"AttributeRevocationRefs"`
	SigAndRefsTimeStamp       []*XAdESTimeStampType          `xml:"SigAndRefsTimeStamp"`
	RefsOnlyTimeStamp         []*XAdESTimeStampType          `xml:"RefsOnlyTimeStamp"`
	CertificateValues         []*CertificateValuesType       `xml:"CertificateValues"`
	RevocationValues          []*RevocationValuesType        `xml:"RevocationValues"`
	AttrAuthoritiesCertValues []*CertificateValuesType       `xml:"AttrAuthoritiesCertValues"`
	AttributeRevocationValues []*RevocationValuesType        `xml:"AttributeRevocationValues"`
	ArchiveTimeStamp          []*XAdESTimeStampType          `xml:"ArchiveTimeStamp"`
}

UnsignedSignaturePropertiesType ...

type X509CertificateLocation

type X509CertificateLocation *NonEmptyURIType

X509CertificateLocation ...

type X509Data

type X509Data *X509DataType

X509Data ...

type X509DataType

type X509DataType struct {
	X509IssuerSerial *X509IssuerSerialType `xml:"X509IssuerSerial"`
	X509SKI          string                `xml:"X509SKI"`
	X509SubjectName  string                `xml:"X509SubjectName"`
	X509Certificate  string                `xml:"X509Certificate"`
	X509CRL          string                `xml:"X509CRL"`
}

X509DataType ...

type X509IssuerSerialType

type X509IssuerSerialType struct {
	X509IssuerName   string `xml:"X509IssuerName"`
	X509SerialNumber int    `xml:"X509SerialNumber"`
}

X509IssuerSerialType ...

type XAdESTimeStamp

type XAdESTimeStamp *XAdESTimeStampType

XAdESTimeStamp ...

type XAdESTimeStampType

type XAdESTimeStampType struct {
	IdAttr                   string                     `xml:"Id,attr,omitempty"`
	Include                  []*IncludeType             `xml:"Include,omitempty"`
	DsCanonicalizationMethod *CanonicalizationMethod    `xml:"ds:CanonicalizationMethod,omitempty"`
	EncapsulatedTimeStamp    []*EncapsulatedPKIDataType `xml:"EncapsulatedTimeStamp"`
	XMLTimeStamp             []*AnyType                 `xml:"XMLTimeStamp"`
}

XAdESTimeStampType ...

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL