JSPM

split-ca

1.0.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1620042
  • Score
    100M100P100Q197846F
  • License ISC

Simple module to split a single certificate authority chain file (aka: bundle, ca-bundle, ca-chain, etc.) into an array, as expected by the node.js tls api.

Package Exports

  • split-ca

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (split-ca) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

split-ca

Simple node.js module to split a single certificate authority chain file (bundle, ca-bundle, ca-chain, etc.) into an array, as expected by the node.js tls api

Installation

npm install split-ca

Usage

Usage will depend on your server module of choice, but most https modules require an options hash with ca, key, and cert. Simply give split-ca the filepath of your bundle file.

var https = require('https');
var fs = require('fs');

var splitca = require('split-ca');

var options = {
  ca: splitca("path/to/ca_bundle_file"),
  key:fs.readFileSync("path/to/server_key_file"),
  cert:fs.readFileSync("path/to/server_cert_file"),
  requestCert: true,
  rejectUnauthorized: true
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(8000);

Args

split-ca('filepath','split-string','encoding')

filepath

A standard node path to your object. An error is thrown if the file cannot be parsed, is not formatted properly.

split-string

Optional. Defaults to "\n", can be replaced with anything.

encoding

Optional. Defaults to "utf-8", can be replaced with anything accepted by node's fs module.

Credits

Thanks to Benjie Gillam for the blog post and sample code that was unashamedly ripped for this module.