ASN1_NDEF_SEQUENCE(GOST_CLIENT_KEY_EXCHANGE_PARAMS) = { /* FIXME incomplete */
ASN1_SIMPLE(GOST_CLIENT_KEY_EXCHANGE_PARAMS, gkt, GOST_KEY_TRANSPORT)
-}
+} ASN1_NDEF_SEQUENCE_END(GOST_CLIENT_KEY_EXCHANGE_PARAMS)
-ASN1_NDEF_SEQUENCE_END(GOST_CLIENT_KEY_EXCHANGE_PARAMS)
IMPLEMENT_ASN1_FUNCTIONS(GOST_CLIENT_KEY_EXCHANGE_PARAMS)
-/* Convert byte buffer to bignum, skipping leading zeros*/
-BIGNUM *getbnfrombuf(const unsigned char *buf, size_t len)
-{
- BIGNUM *b;
+ASN1_NDEF_SEQUENCE(MASKED_GOST_KEY) = {
+ ASN1_SIMPLE(MASKED_GOST_KEY, masked_priv_key, ASN1_OCTET_STRING),
+ ASN1_SIMPLE(MASKED_GOST_KEY, public_key, ASN1_OCTET_STRING)
+} ASN1_NDEF_SEQUENCE_END(MASKED_GOST_KEY)
- while (*buf == 0 && len > 0) {
- buf++;
- len--;
- }
- if (len)
- return BN_bin2bn(buf, len, NULL);
- b = BN_new();
- BN_zero(b);
- return b;
-}
+IMPLEMENT_ASN1_FUNCTIONS(MASKED_GOST_KEY)