The ASN.1 definition of Accuracy is:
Accuracy ::= SEQUENCE {
seconds INTEGER OPTIONAL,
millis [0] INTEGER (1..999) OPTIONAL,
micros [1] INTEGER (1..999) OPTIONAL }
What is unclear to me is how to handle millis and micros. It can't work to have both the SEC_ASN1_INTEGER universal tag and the 0 and 1 tags in the same 'kind' field of a SEC_ASN1Template struct, as they both would go into the same part (the lowest byte) of that field.