From 26f676a069f68ce1c6688e777c166c60b03a88fd Mon Sep 17 00:00:00 2001 From: Bryan Roe Date: Mon, 29 Jul 2019 22:54:59 -0700 Subject: [PATCH] Added ability to query HotFix Status for Windows --- modules/win-qfe.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 modules/win-qfe.js diff --git a/modules/win-qfe.js b/modules/win-qfe.js new file mode 100644 index 0000000..9a97fcb --- /dev/null +++ b/modules/win-qfe.js @@ -0,0 +1,42 @@ +/* +Copyright 2019 Intel Corporation + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +function qfe() +{ + var child = require('child_process').execFile(process.env['windir'] + '\\System32\\wbem\\wmic.exe', ['wmic', 'qfe', 'list', 'full', '/FORMAT:CSV']); + child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); }); + child.waitExit(); + + var lines = child.stdout.str.trim().split('\r\n'); + var keys = lines[0].split(','); + var i, key; + var tokens; + var result = []; + + for (i = 1; i < lines.length; ++i) + { + var obj = {}; + tokens = lines[i].split(','); + for (key = 0; key < keys.length; ++key) + { + if (tokens[key]) { obj[keys[key]] = tokens[key]; } + } + result.push(obj); + } + return (result); +} + +module.exports = qfe; \ No newline at end of file