From e932a1ac997273282602be69f8ac909a65d37ad5 Mon Sep 17 00:00:00 2001 From: Bryan Roe Date: Thu, 28 Jan 2021 22:22:47 -0800 Subject: [PATCH] Improved getLibInfo() to work even if ldconfig doesn't exist --- microscript/ILibDuktape_Polyfills.c | 2 +- modules/monitor-info.js | 45 ++++++++++++++++++++--------- 2 files changed, 33 insertions(+), 14 deletions(-) diff --git a/microscript/ILibDuktape_Polyfills.c b/microscript/ILibDuktape_Polyfills.c index 6a6ae46..d889c93 100644 --- a/microscript/ILibDuktape_Polyfills.c +++ b/microscript/ILibDuktape_Polyfills.c @@ -2289,7 +2289,7 @@ void ILibDuktape_Polyfills_JS_Init(duk_context *ctx) #endif // monitor-info: Refer to modules/monitor-info.js - duk_peval_string_noresult(ctx, "addCompressedModule('monitor-info', Buffer.from('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', 'base64'));"); + duk_peval_string_noresult(ctx, "addCompressedModule('monitor-info', Buffer.from('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', 'base64'));"); // service-host. Refer to modules/service-host.js duk_peval_string_noresult(ctx, "addCompressedModule('service-host', Buffer.from('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', 'base64'));"); diff --git a/modules/monitor-info.js b/modules/monitor-info.js index 69d1a8a..5baddb4 100644 --- a/modules/monitor-info.js +++ b/modules/monitor-info.js @@ -44,22 +44,41 @@ function getLibInfo(libname) child.stdin.write("whereis ldconfig | awk '{ print $2 }'\nexit\n"); child.waitExit(); - var ldconfig = child.stdout.str.trim(); - - child = require('child_process').execFile('/bin/sh', ['sh']); - child.stdout.str = ''; - child.stdout.on('data', function (chunk) { this.str += chunk.toString(); }); - child.stdin.write(ldconfig + " -p | grep '" + libname + ".so.' | tr '\\n' '^' | awk -F^ '{ printf \"[\"; for(i=1;i<=NF;++i) {" + ' split($i, plat, ")"); split(plat[1], plat2, "("); ifox=split(plat2[2], ifo, ","); libc=""; hwcap="0"; for(ifoi=1;ifoi<=ifox;++ifoi) { if(split(ifo[ifoi], jnk, "libc")==2) { libc=ifo[ifoi]; } if(split(ifo[ifoi], jnk, "hwcap:")==2) { split(ifo[ifoi], jnk, "0x"); hwcap=jnk[2]; } } x=split($i, tok, " "); if(tok[1]!="") { printf "%s{\\"lib\\": \\"%s\\", \\"path\\": \\"%s\\", \\"hwcap\\": \\"%s\\", \\"libc\\": \\"%s\\"}", (i!=1?",":""), tok[1], tok[x], hwcap, libc; }} printf "]"; }\'\nexit\n'); - child.waitExit(); - - try + if (child.stdout.str.trim() == '') { - var v = JSON.parse(child.stdout.str.trim()); - return (v); + // No ldconfig + child = require('child_process').execFile('/bin/sh', ['sh']); + child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); }); + child.stderr.on('data', function () { }); + child.stdin.write('ls /lib/' + libname + '.*' + " | tr '\\n' '`' | awk -F'`' '{" + ' DEL=""; printf "["; for(i=1;i