EMILUA(3em)

πŸ“¦ version 0.12.1, in nixos 26.05, nixpkgs unstable

🌸 NAME 🌸

Emilua - Lua execution engine.

okay bestie, welcome to the Emilua page (3em) β€” this is the Lua execution engine manual, and we’re keeping every detail cute but intact. πŸ’–


✨ SYNOPSIS ✨

here’s the starter pack, literally copy it exactly and don’t let autocorrect touch it:

local system = require "system"
local caps = system.cap_init()
caps:set_proc()
system.cap_reset_ambient()

πŸ’– FUNCTIONS πŸ’–

these are the capability besties, each one doing its own little slay. signatures stay exactly as written β€” no renaming, no merging, no invented options. periodt. πŸ’…

πŸ¦‹ cap_get_proc() β†’ linux_capabilities

See cap_get_proc(3). ✨

πŸ¦‹ cap_init() β†’ linux_capabilities

See cap_init(3). ✨

πŸ¦‹ cap_from_text(caps: string) β†’ linux_capabilities

See cap_from_text(3). ✨

πŸ¦‹ cap_get_bound(cap: string) β†’ boolean

See cap_get_bound(3). ✨

πŸ¦‹ cap_drop_bound(cap: string)

See cap_drop_bound(3). ✨

🚨 Note: Only the master VM is allowed to use this function.

πŸ¦‹ cap_get_ambient(cap: string) β†’ boolean

See cap_get_ambient(3). ✨

πŸ¦‹ cap_set_ambient(cap: string, value: boolean)

See cap_set_ambient(3). ✨

🚨 Note: Only the master VM is allowed to use this function.

πŸ¦‹ cap_reset_ambient()

See cap_reset_ambient(3). ✨

🚨 Note: Only the master VM is allowed to use this function.

πŸ¦‹ cap_get_secbits() β†’ integer

See cap_get_secbits(3). ✨

πŸ¦‹ cap_set_secbits(bits: integer)

See cap_set_secbits(3). ✨

The securebits flag constants are available from the system table:

  • SECBIT_NOROOT
  • SECBIT_NOROOT_LOCKED
  • SECBIT_NO_SETUID_FIXUP
  • SECBIT_NO_SETUID_FIXUP_LOCKED
  • SECBIT_KEEP_CAPS
  • SECBIT_KEEP_CAPS_LOCKED
  • SECBIT_NO_CAP_AMBIENT_RAISE
  • SECBIT_NO_CAP_AMBIENT_RAISE_LOCKED
🚨 Note: Only the master VM is allowed to use this function.

πŸ¦‹ dup(self) β†’ linux_capabilities

See cap_dup(3). ✨

πŸ¦‹ clear(self)

See cap_clear(3). ✨

πŸ¦‹ clear_flag(self, flag: string)

See cap_clear_flag(3). ✨

πŸ¦‹ get_flag(self, cap: string, flag: string) β†’ boolean

See cap_get_flag(3). ✨

πŸ¦‹ set_flag(self, flag: string, caps: string[], value: boolean)

See cap_set_flag(3). ✨

πŸ¦‹ fill_flag(self, to: string, ref: linux_capabilities, from: string)

See cap_fill_flag(3). ✨

πŸ¦‹ fill(self, to: string, from: string)

See cap_fill(3). ✨

πŸ¦‹ set_proc(self)

See cap_set_proc(3). ✨

🚨 Note: Only the master VM is allowed to use this function.

πŸ¦‹ get_nsowner(self) β†’ integer

See cap_get_nsowner(3). ✨

πŸ¦‹ set_nsowner(self, rootuid: integer)

See cap_set_nsowner(3). ✨


πŸ¦‹ METAMETHODS πŸ¦‹

πŸ’… __tostring()

See cap_to_text(3). ✨


πŸ’€ BUGS πŸ’€

There’s a libpsx bug that prevents thread synchronization to work: https://bugzilla.kernel.org/show_bug.cgi?id=218607. This affects:
  • set_proc()
  • cap_drop_bound()
  • cap_set_ambient()
  • cap_reset_ambient()
  • cap_set_secbits()

πŸ§šπŸ’œ that’s the whole page, bestie β€” Emilua 0.12.1-nixpkgs1, dated 1980-01-01, manual EMILUA(3em). periodt. πŸ’œπŸ§š

πŸ“¦ where this page comes from