@ai-ecoverse/wasm-gawk 5.4.1-2 → 5.4.1-3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/gawk +43 -22
- package/bin/gawk.wasm +0 -0
- package/package.json +1 -1
package/bin/gawk
CHANGED
|
@@ -1560,8 +1560,10 @@ async function createWasm() {
|
|
|
1560
1560
|
path = FS.cwd() + '/' + path;
|
|
1561
1561
|
}
|
|
1562
1562
|
|
|
1563
|
-
// limit max consecutive symlinks to 40 (SYMLOOP_MAX)
|
|
1564
|
-
|
|
1563
|
+
// limit max consecutive symlinks to 40 (SYMLOOP_MAX): pass 0 follows
|
|
1564
|
+
// none, so 40 follows take 41 passes and the 41st follow is ELOOP, as
|
|
1565
|
+
// on Linux (homescoop#461).
|
|
1566
|
+
linkloop: for (var nlinks = 0; nlinks <= 40; nlinks++) {
|
|
1565
1567
|
// split the absolute path
|
|
1566
1568
|
var parts = path.split('/').filter((p) => !!p);
|
|
1567
1569
|
|
|
@@ -3679,6 +3681,15 @@ async function createWasm() {
|
|
|
3679
3681
|
}
|
|
3680
3682
|
}
|
|
3681
3683
|
|
|
3684
|
+
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => {
|
|
3685
|
+
return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
3686
|
+
};
|
|
3687
|
+
var ___syscall_uname = (buf) => {
|
|
3688
|
+
if (!buf) return -21;
|
|
3689
|
+
['Emscripten', 'emscripten', '4.0.23', '#1', 'wasm32'].forEach((field, i) => stringToUTF8(field, buf + i * 65, 65));
|
|
3690
|
+
return 0;
|
|
3691
|
+
};
|
|
3692
|
+
|
|
3682
3693
|
var __abort_js = () =>
|
|
3683
3694
|
abort('');
|
|
3684
3695
|
|
|
@@ -3827,9 +3838,6 @@ async function createWasm() {
|
|
|
3827
3838
|
return BigInt(ret);
|
|
3828
3839
|
};
|
|
3829
3840
|
|
|
3830
|
-
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => {
|
|
3831
|
-
return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
|
3832
|
-
};
|
|
3833
3841
|
var __tzset_js = (timezone, daylight, std_name, dst_name) => {
|
|
3834
3842
|
// TODO: Use (malleable) environment variables instead of system settings.
|
|
3835
3843
|
var currentYear = new Date().getFullYear();
|
|
@@ -4158,23 +4166,22 @@ async function createWasm() {
|
|
|
4158
4166
|
|
|
4159
4167
|
/** @param {number=} offset */
|
|
4160
4168
|
var doWritev = (stream, iov, iovcnt, offset) => {
|
|
4161
|
-
|
|
4162
|
-
|
|
4163
|
-
var ptr = HEAPU32[((iov)>>2)];
|
|
4164
|
-
var len = HEAPU32[(((iov)+(4))>>2)];
|
|
4165
|
-
iov += 8;
|
|
4166
|
-
var curr = FS.write(stream, HEAP8, ptr, len, offset);
|
|
4167
|
-
if (curr < 0) return -1;
|
|
4168
|
-
ret += curr;
|
|
4169
|
-
if (curr < len) {
|
|
4170
|
-
// No more space to write.
|
|
4171
|
-
break;
|
|
4172
|
-
}
|
|
4173
|
-
if (typeof offset != 'undefined') {
|
|
4174
|
-
offset += curr;
|
|
4175
|
-
}
|
|
4169
|
+
if (iovcnt == 1) {
|
|
4170
|
+
return FS.write(stream, HEAP8, HEAPU32[iov >> 2], HEAPU32[(iov + 4) >> 2], offset);
|
|
4176
4171
|
}
|
|
4177
|
-
|
|
4172
|
+
var total = 0;
|
|
4173
|
+
for (var i = 0, p = iov; i < iovcnt; i++, p += 8) {
|
|
4174
|
+
total += HEAPU32[(p + 4) >> 2];
|
|
4175
|
+
}
|
|
4176
|
+
var view = new Uint8Array(total);
|
|
4177
|
+
var voff = 0;
|
|
4178
|
+
for (var i = 0; i < iovcnt; i++, iov += 8) {
|
|
4179
|
+
var ptr = HEAPU32[iov >> 2];
|
|
4180
|
+
var len = HEAPU32[(iov + 4) >> 2];
|
|
4181
|
+
view.set(HEAPU8.subarray(ptr, ptr + len), voff);
|
|
4182
|
+
voff += len;
|
|
4183
|
+
}
|
|
4184
|
+
return FS.write(stream, view, 0, total, offset);
|
|
4178
4185
|
};
|
|
4179
4186
|
|
|
4180
4187
|
function _fd_write(fd, iov, iovcnt, pnum) {
|
|
@@ -4276,6 +4283,10 @@ if (Module['wasmBinary']) wasmBinary = Module['wasmBinary'];
|
|
|
4276
4283
|
|
|
4277
4284
|
// end include: postlibrary.js
|
|
4278
4285
|
|
|
4286
|
+
function slicc_cred_js(out) { const k = Module.sliccKernel; if (!k || !k.cred) return -52; const c = k.cred(); if (typeof c === 'number') return c; ['ruid', 'euid', 'suid', 'rgid', 'egid', 'sgid'].forEach((key, i) => { HEAPU32[(out >> 2) + i] = c[key] >>> 0; }); return 0; }
|
|
4287
|
+
function slicc_groups_js(list,cap) { const k = Module.sliccKernel; if (!k || !k.cred) return -52; const c = k.cred(); if (typeof c === 'number') return c; if (cap === 0) return c.groups.length; if (cap < c.groups.length) return -28; c.groups.forEach((g, i) => { HEAPU32[(list >> 2) + i] = g >>> 0; }); return c.groups.length; }
|
|
4288
|
+
function slicc_setcred_js(ruid,euid,suid,rgid,egid,sgid) { const k = Module.sliccKernel; if (!k || !k.setcred) return -52; const change = {}; const ids = { ruid, euid, suid, rgid, egid, sgid }; for (const key in ids) if (ids[key] !== -1) change[key] = ids[key] >>> 0; const r = k.setcred(change); return typeof r === 'number' ? r : 0; }
|
|
4289
|
+
function slicc_setgroups_js(list,n) { const k = Module.sliccKernel; if (!k || !k.setcred) return -52; const groups = []; for (let i = 0; i < n; i++) groups.push(HEAPU32[(list >> 2) + i]); const r = k.setcred({ groups }); return typeof r === 'number' ? r : 0; }
|
|
4279
4290
|
function slicc_net_ready() { return Module.sliccKernel && Module.sliccKernel.net ? 1 : 0; }
|
|
4280
4291
|
function slicc_socket_js(unix_domain,nonblock,cloexec) { return Module.sliccKernel.net.socket(unix_domain ? 'unix' : 'inet', !!nonblock, !!cloexec); }
|
|
4281
4292
|
function slicc_socketpair_js(unix_domain,nonblock,cloexec,fds) { const r = Module.sliccKernel.net.socketpair(unix_domain ? 'unix' : 'inet', !!nonblock, !!cloexec); if (typeof r === 'number') return r; HEAP32[fds >> 2] = r[0]; HEAP32[(fds >> 2) + 1] = r[1]; return 0; }
|
|
@@ -4304,7 +4315,8 @@ function slicc_poll_js(fds,n,timeout_ms) { const IN = 0x001 | 0x040; const OUT =
|
|
|
4304
4315
|
function slicc_jobs_js(op,a,b) { const k = Module.sliccKernel; if (!k || !k.setpgid) return -0x40000000; switch (op) { case 0: return k.setpgid(a, b); case 1: return k.getpgid(a); case 2: return k.getsid(a); case 3: return k.setsid(); case 4: return k.tcgetpgrp(a); case 5: return k.tcsetpgrp(a, b); } return -52; }
|
|
4305
4316
|
|
|
4306
4317
|
// Imports from the Wasm binary.
|
|
4307
|
-
var
|
|
4318
|
+
var _slicc_cred_euid,
|
|
4319
|
+
_fflush,
|
|
4308
4320
|
_main,
|
|
4309
4321
|
_slicc_sigpipe,
|
|
4310
4322
|
_slicc_raise,
|
|
@@ -4321,6 +4333,7 @@ var _fflush,
|
|
|
4321
4333
|
|
|
4322
4334
|
|
|
4323
4335
|
function assignWasmExports(wasmExports) {
|
|
4336
|
+
_slicc_cred_euid = Module['_slicc_cred_euid'] = wasmExports['slicc_cred_euid'];
|
|
4324
4337
|
_fflush = wasmExports['fflush'];
|
|
4325
4338
|
_main = Module['_main'] = wasmExports['__main_argc_argv'];
|
|
4326
4339
|
_slicc_sigpipe = Module['_slicc_sigpipe'] = wasmExports['slicc_sigpipe'];
|
|
@@ -4365,6 +4378,8 @@ var wasmImports = {
|
|
|
4365
4378
|
/** @export */
|
|
4366
4379
|
__syscall_stat64: ___syscall_stat64,
|
|
4367
4380
|
/** @export */
|
|
4381
|
+
__syscall_uname: ___syscall_uname,
|
|
4382
|
+
/** @export */
|
|
4368
4383
|
_abort_js: __abort_js,
|
|
4369
4384
|
/** @export */
|
|
4370
4385
|
_emscripten_runtime_keepalive_clear: __emscripten_runtime_keepalive_clear,
|
|
@@ -4433,6 +4448,8 @@ var wasmImports = {
|
|
|
4433
4448
|
/** @export */
|
|
4434
4449
|
slicc_bind_js,
|
|
4435
4450
|
/** @export */
|
|
4451
|
+
slicc_cred_js,
|
|
4452
|
+
/** @export */
|
|
4436
4453
|
slicc_default_getpid_js,
|
|
4437
4454
|
/** @export */
|
|
4438
4455
|
slicc_default_getppid_js,
|
|
@@ -4443,6 +4460,8 @@ var wasmImports = {
|
|
|
4443
4460
|
/** @export */
|
|
4444
4461
|
slicc_execve_js,
|
|
4445
4462
|
/** @export */
|
|
4463
|
+
slicc_groups_js,
|
|
4464
|
+
/** @export */
|
|
4446
4465
|
slicc_in_emulated_fork,
|
|
4447
4466
|
/** @export */
|
|
4448
4467
|
slicc_jobs_js,
|
|
@@ -4453,6 +4472,8 @@ var wasmImports = {
|
|
|
4453
4472
|
/** @export */
|
|
4454
4473
|
slicc_net_ready,
|
|
4455
4474
|
/** @export */
|
|
4475
|
+
slicc_pause_js,
|
|
4476
|
+
/** @export */
|
|
4456
4477
|
slicc_poll_js,
|
|
4457
4478
|
/** @export */
|
|
4458
4479
|
slicc_recv_js,
|
package/bin/gawk.wasm
CHANGED
|
Binary file
|