-
Notifications
You must be signed in to change notification settings - Fork 8
/
compile_name_mappings.js
71 lines (62 loc) · 2.12 KB
/
compile_name_mappings.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
const https = require('https');
var httpRequest = function(params, callback) {
const req = https.request(params.options, res => {
var resp = [];
res.on('data', function(data) {
resp.push(data);
});
res.on('end', function() {
callback(false, {statusCode: res.statusCode, options: params.options, headers: res.headers, body: Buffer.concat(resp).toString()});
});
})
req.on('error', function(err) {
//console.log(err);
callback(false, {statusCode: false, options: params.options, headers: false, body: JSON.stringify(err)});
})
if(params.options.method=='POST') {
req.write(JSON.stringify(params.body));
}
req.end()
}
let options = {
host: 'raw.githubusercontent.com',
path: '/openssl/openssl/OpenSSL_1_1_1-stable/crypto/objects/objects.txt',
method: 'GET'
}
//stage old names
var oids = {
"Microsoft Universal Principal Name": "msUPN",
"Microsoft Smartcardlogin": "msSmartcardLogin"
}
httpRequest({options: options}, function(err, resp) {
if(err) {
console.error(err);
} else {
let lines = resp.body.split('\n');
for(let i = 0; i <= lines.length - 1; i++) {
if(lines[i] != '' && lines[i].charAt(0)!='#' && lines[i].charAt(0)!='!') {
//console.log(lines[i].charAt(0);
let line = lines[i].split(':');
let key;
let value;
//console.log(lines[i]);
//console.log(line);
if(line.length == 3) {
key = line[2].trim();
value = line[1].trim();
} else {
key = line[1].trim();
value = line[1].trim();
}
if(value != '') {
oids[key] = value;
} else {
oids[key] = key;
}
}
}
console.log('module.exports = ' + JSON.stringify(oids, null, 2));
let keys = Object.keys(oids);
console.error('Returned ' + keys.length + ' name mappings');
}
});