RetroZilla/security/nss/lib/crmf/crmfenc.c
2018-05-19 22:01:21 +08:00

56 lines
1.4 KiB
C

/* -*- Mode: C; tab-width: 8 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "crmf.h"
#include "crmfi.h"
SECStatus
CRMF_EncodeCertReqMsg(CRMFCertReqMsg *inCertReqMsg,
CRMFEncoderOutputCallback fn,
void *arg)
{
struct crmfEncoderOutput output;
output.fn = fn;
output.outputArg = arg;
return SEC_ASN1Encode(inCertReqMsg,CRMFCertReqMsgTemplate,
crmf_encoder_out, &output);
}
SECStatus
CRMF_EncodeCertRequest(CRMFCertRequest *inCertReq,
CRMFEncoderOutputCallback fn,
void *arg)
{
struct crmfEncoderOutput output;
output.fn = fn;
output.outputArg = arg;
return SEC_ASN1Encode(inCertReq, CRMFCertRequestTemplate,
crmf_encoder_out, &output);
}
SECStatus
CRMF_EncodeCertReqMessages(CRMFCertReqMsg **inCertReqMsgs,
CRMFEncoderOutputCallback fn,
void *arg)
{
struct crmfEncoderOutput output;
CRMFCertReqMessages msgs;
output.fn = fn;
output.outputArg = arg;
msgs.messages = inCertReqMsgs;
return SEC_ASN1Encode(&msgs, CRMFCertReqMessagesTemplate,
crmf_encoder_out, &output);
}