summaryrefslogtreecommitdiffstats
path: root/security/nss/lib/crmf/crmfenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'security/nss/lib/crmf/crmfenc.c')
-rw-r--r--security/nss/lib/crmf/crmfenc.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/security/nss/lib/crmf/crmfenc.c b/security/nss/lib/crmf/crmfenc.c
new file mode 100644
index 0000000000..6d01a45cea
--- /dev/null
+++ b/security/nss/lib/crmf/crmfenc.c
@@ -0,0 +1,48 @@
+/* -*- 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);
+}