History log of /freebsd-14.2/stand/liblua/lutils.c (Results 1 – 25 of 25)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/13.4.0-p5, release/13.5.0-p1, release/14.2.0-p3, release/13.5.0, release/14.2.0-p2, release/14.1.0-p8, release/13.4.0-p4, release/14.1.0-p7, release/14.2.0-p1, release/13.4.0-p3, release/14.2.0, release/13.4.0, release/14.1.0, release/13.3.0
# 5e850907 27-Feb-2024 Warner Losh <[email protected]>

loader: Add loader.exit

Add loader.exit(status). While one can get alomst this behavior with
loader.perform("quit"), quit doesn't allow a value to be returned to the
firmware. The interpretation of

loader: Add loader.exit

Add loader.exit(status). While one can get alomst this behavior with
loader.perform("quit"), quit doesn't allow a value to be returned to the
firmware. The interpretation of 'status' is firmware specific. This can
be used when autobooting doesn't work in scripts, for example, to allow
the firmware to try something else...

Sponsored by: Netflix

Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D44094

(cherry picked from commit 9398a495eb305d5bf240bc998ee2f6128d75f4ca)

show more ...


# 73fac51c 16-Feb-2024 Warner Losh <[email protected]>

loader: Create new gfx table

Create a new gfx global table. Put into it all the graphics bindings
that we have in loader today. For now, have compatability binding for
loader. Remove them from loade

loader: Create new gfx table

Create a new gfx global table. Put into it all the graphics bindings
that we have in loader today. For now, have compatability binding for
loader. Remove them from loader.

Sponsored by: Netflix
Reviewed by: kevans, jhb
Differential Revision: https://reviews.freebsd.org/D43902

(cherry picked from commit 9b16231032ddb40be282d76ec0d82b3a0ec96d60)

show more ...


# 8929f845 16-Feb-2024 Warner Losh <[email protected]>

loader: Separate gfx to a new file.

Move gfx lua hook registration to a new file.

Sponsored by: Netflix
Reviewed by: kevans, jhb
Differential Revision: https://reviews.freebsd.org/D43901

(cherry

loader: Separate gfx to a new file.

Move gfx lua hook registration to a new file.

Sponsored by: Netflix
Reviewed by: kevans, jhb
Differential Revision: https://reviews.freebsd.org/D43901

(cherry picked from commit 061b68a76030f4147f5a30e60ab5f4296c1376b7)

show more ...


# 5bbe8ec0 16-Feb-2024 Warner Losh <[email protected]>

loader: Register the gfx stuff separately.

Move registration of the gfx stuff to separate function. However, no
change in functionality is intended.

Sponsored by: Netflix
Reviewed by: kevans, jhb

loader: Register the gfx stuff separately.

Move registration of the gfx stuff to separate function. However, no
change in functionality is intended.

Sponsored by: Netflix
Reviewed by: kevans, jhb
Differential Revision: https://reviews.freebsd.org/D43900

(cherry picked from commit 1dac5a34b64e2573236f38b23f8b1f92bd6a1d7c)

show more ...


# c5465397 16-Feb-2024 Warner Losh <[email protected]>

loader: Simplify the loader.has_command

luaL_checkstring already checks for the right number of
arguments. There's no need to do that by hand here. Now an exception
will be thrown like any other fun

loader: Simplify the loader.has_command

luaL_checkstring already checks for the right number of
arguments. There's no need to do that by hand here. Now an exception
will be thrown like any other function with the wrong args. Also,
push a boolean instead of an int.

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D43820

(cherry picked from commit 7fc95c31f007ef01c53aa5f9d8802e9579f408ee)

show more ...


# 3601f439 14-Feb-2024 Warner Losh <[email protected]>

loader: export the CMD_ constants in loader table

Export the CMD_OK, etc constants in the loader table. They are the
return values of loader.perform, etc.

Sponsored by: Netflix
Differential Revisi

loader: export the CMD_ constants in loader table

Export the CMD_OK, etc constants in the loader table. They are the
return values of loader.perform, etc.

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D43821

(cherry picked from commit 62a52c15422470f97fc7b311d89c83f910bcc1b1)

show more ...


# 8b9bc821 24-Nov-2023 Warner Losh <[email protected]>

stand: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Rem

stand: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix

(cherry picked from commit 7c43148a974877188a930e4078a164f83da8e652)

show more ...


# 566ac8bc 08-Dec-2023 Kyle Evans <[email protected]>

loader: provide a features table for binary compatibility advertisement

liblua now provides a loader.has_feature() function to probe the loader
binary for features advertised. name => desc mappings

loader: provide a features table for binary compatibility advertisement

liblua now provides a loader.has_feature() function to probe the loader
binary for features advertised. name => desc mappings are provided in
loader.features to get a list of all of the features loader *can*
support. core.hasFeature is provided as a shim to loader.has_feature
so that individual consumers don't need to think about the logic of the
loader module not providing has_feature; we know that means the feature
isn't enabled.

The first consumer of this will be EARLY_ACPI to advertise that the
loader binary probes for ACPI presence before the interpreter has
started, so that we know whether we can trust the presence of acpi.rsdp
as relatively authoritative. In general, it's intended to be used to
avoid breaking new scripts on older loaders within reason.

This will be used in lua as `core.hasFeature("EARLY_ACPI")`, while the
C bits of loader will `feature_enable(FEATURE_EARLY_ACPI)`.

Reviewed by: imp

(cherry picked from commit 1631382cf2820245cc72965498ff174bb548dd63)

show more ...


Revision tags: release/14.0.0
# 1d386b48 16-Aug-2023 Warner Losh <[email protected]>

Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# a50d73d5 17-Apr-2023 Stephen J. Kiernan <[email protected]>

loader: Change version calculation to be more consistent.

Use 1000 * major + minor when calculating the version number that
gets set in the Ficl environment or lua loader property. This allows
for m

loader: Change version calculation to be more consistent.

Use 1000 * major + minor when calculating the version number that
gets set in the Ficl environment or lua loader property. This allows
for more room if the minor number needs to go above 9.

Add loader.version property to lua loader.

Reviewed by: imp
Obtained from: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D39631

show more ...


Revision tags: release/13.2.0, release/12.4.0
# 29fc4075 01-Sep-2022 Warner Losh <[email protected]>

stand: Add lua binding loader.has_command

Give scripts the ability to determine if the currently running loader
has provided a command.

Sponsored by: Netflix
Differential Revision: https://reviews

stand: Add lua binding loader.has_command

Give scripts the ability to determine if the currently running loader
has provided a command.

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D36365

show more ...


Revision tags: release/13.1.0, release/12.3.0, release/13.0.0
# 3630506b 21-Dec-2020 Toomas Soome <[email protected]>

loader: implement framebuffer console

Draw console on efi.
Add vbe framebuffer for BIOS loader (vbe off, vbe on, vbe list,
vbe set xxx).
autoload font (/boot/fonts) based on resolution and font size

loader: implement framebuffer console

Draw console on efi.
Add vbe framebuffer for BIOS loader (vbe off, vbe on, vbe list,
vbe set xxx).
autoload font (/boot/fonts) based on resolution and font size.
Add command loadfont (set font by file) and
variable screen.font (set font by size). Pass loaded font to kernel.

Export variables:
screen.height
screen.width
screen.depth

Add gfx primitives to draw the screen and put png image on the screen.
Rework menu draw to iterate list of consoles to enamble device specific
output.

Probably something else I forgot...

Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D27420

show more ...


Revision tags: release/12.2.0, release/11.4.0
# 63172bf6 02-Nov-2019 Kyle Evans <[email protected]>

liblua: add loader.lua_path

As described previously, loader.lua_path is absolute path where scripts are
installed. A future commit will use this to build paths for dofile in
try_include, rather than

liblua: add loader.lua_path

As described previously, loader.lua_path is absolute path where scripts are
installed. A future commit will use this to build paths for dofile in
try_include, rather than the current pcall/require setup that makes it more
difficult to coordinate loader aborts from local.lua -- we do not need the
flexibility of require(), and local.lua is in-fact not a 'module-like' file
as we will not be referencing anything from it.

show more ...


Revision tags: release/12.1.0, release/11.3.0, release/12.0.0
# 3078173c 25-Oct-2018 Kyle Evans <[email protected]>

lualoader: Improve module loading diagnostics

Some fixes:

- Maintain historical behavior more accurately w.r.t verbose_loading;
verbose_loading strictly prints "${module_name...}" and later "fail

lualoader: Improve module loading diagnostics

Some fixes:

- Maintain historical behavior more accurately w.r.t verbose_loading;
verbose_loading strictly prints "${module_name...}" and later "failed!"
or "ok" based on load success
- With or without verbose_loading, dump command_errbuf on load failure.
This usually happens prior to ok/failed if we're verbose_loading

Reviewed by: imp
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D17694

show more ...


Revision tags: release/11.2.0
# 697f127d 07-Mar-2018 Kyle Evans <[email protected]>

lualoader: Expose loader.parse and add cli_execute_unparsed

This will be used for scenarios where the command to execute is coming in
via the environment (from, for example, loader.conf(5)) and is t

lualoader: Expose loader.parse and add cli_execute_unparsed

This will be used for scenarios where the command to execute is coming in
via the environment (from, for example, loader.conf(5)) and is thus not
necessarily trusted.

cli_execute_unparsed will immediately be used for handling
module_{before,after,error} as well as menu_timeout_command. We still want
to offer these variables the ability to execute Lua-intercepted loader
commands, but we don't want them to be able to execute arbitrary Lua.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D14580

show more ...


# dc4e0284 03-Mar-2018 Kyle Evans <[email protected]>

liblua: Add loader.interpret

This allows lua to pass back a command string to be executed as if it were
typed at the loader prompt- loader tries to execute the string first as pure
lua, then parses

liblua: Add loader.interpret

This allows lua to pass back a command string to be executed as if it were
typed at the loader prompt- loader tries to execute the string first as pure
lua, then parses it and gives lua a chance to intercept before it tries to
execute it itself.

This will be used to implement menu_timeout_command, among other things,
which *should* be used to execute basic loader commands independent of the
chosen interpreter.

show more ...


# a16664ce 02-Mar-2018 Kyle Evans <[email protected]>

liblua: Use putc instead of printf for printc

printc does not need the features or the overhead of printf. It does not
take formatting strings, and it pipes the single string argument through an
"%s

liblua: Use putc instead of printf for printc

printc does not need the features or the overhead of printf. It does not
take formatting strings, and it pipes the single string argument through an
"%s" format.

Instead, use putc directly. This pipes the string through in its entirety as
a series of 'unsigned char's, generally straight to the console emulator.

Discussed with: tsoome

show more ...


# 59cccc5b 02-Mar-2018 Kyle Evans <[email protected]>

lualoader: Register loader.printc as global printc


# 82c85a42 24-Feb-2018 Kyle Evans <[email protected]>

liblua: Implement write support

Write support (even if it only works on UFS) will be needed for nextboot
functionality.

Reviewed by: cem, imp
Differential Revision: https://reviews.freebsd.org/D144

liblua: Implement write support

Write support (even if it only works on UFS) will be needed for nextboot
functionality.

Reviewed by: cem, imp
Differential Revision: https://reviews.freebsd.org/D14478

show more ...


# 2630b89b 20-Feb-2018 Kyle Evans <[email protected]>

liblua: Add loader.machine and loader.machine_arch properties

Provisioned from MACHINE/MACHINE_ARCH on the system, expose loader.machine
and loader.machine_arch respectively.

These may be used to h

liblua: Add loader.machine and loader.machine_arch properties

Provisioned from MACHINE/MACHINE_ARCH on the system, expose loader.machine
and loader.machine_arch respectively.

These may be used to hide ACPI option on non-applicable archs.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D14446

show more ...


# a83546e5 20-Feb-2018 Warner Losh <[email protected]>

Implement loader.command

This is just like loader.perform, except it takes pre-parsed arguments.

Review: https://reviews.freebsd.org/D14448


# 929c9bd0 18-Feb-2018 Kyle Evans <[email protected]>

liblua: Fix missing '}' in lutil.c after r329499


# 6771d4a8 18-Feb-2018 Conrad Meyer <[email protected]>

interp_lua: Register io/loader with regular Lua module system

Reviewed by: kevans
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D14421


# f276951a 17-Feb-2018 Conrad Meyer <[email protected]>

liblua: Clean up io/loader C module registration

Utilize registration APIs Lua provides to make module definition a little
cleaner.

Discussed with: imp
Sponsored by: Dell EMC Isilon


# 7cafeaa1 12-Feb-2018 Warner Losh <[email protected]>

Add Lua as a scripting langauge to /boot/loader

liblua glues the lua run time into the boot loader. It implements all
the runtime routines that lua expects. In addition, it has a few
standard 'C' he

Add Lua as a scripting langauge to /boot/loader

liblua glues the lua run time into the boot loader. It implements all
the runtime routines that lua expects. In addition, it has a few
standard 'C' headers that nueter various aspects of the LUA build that
are too specific to lua to be in libsa. Many refinements from the
original code to improve implementation and the number of included lua
libraries. Use int64_t for lua_Number. Have "/boot/lua" be the default
module path. Numerous cleanups from the original GSoC project,
including hacking libsa to allow lua to be built with only one change
outside luaconf.h.

Add the final bit of lua glue to bring in liblua and plug into the
multiple interpreter framework, previously committed.

Add LOADER_LUA option, currently off by default.

Presently, this is an experimental option. One must opt-in to using
this by defining WITH_LOADER_LUA and WITHOUT_FORTH. It's been
lightly tested, so keep a backup copy of your old loader handy.
The menu code, coming in the next commit, hasn't been exhaustively
tested. A LUA boot loader is 60k larger than a FORTH one, which is
80k larger than a no-interpreter one. Subtle changes in size
may tip things past some subtle limit (the binary is ~430k now
when built with LUA). A future version may offer coexistance.

Bump FreeBSD version to 1200058 to mark the milestone.

Pedro Souza's 2014 Summer of Code project. Rui Paulo, Pedro Arthur,
Zakary Nafziger and Wojciech A. Koszek also contributed. Warner Losh
reworked it extensively into its current form.

Obtained from: https://wiki.freebsd.org/SummerOfCode2014/LuaLoader
Sponsored by: Google Summer of Code
Relnotes: Yes
MFC After: 1 month
Differential Review: https://reviews.freebsd.org/D14295

show more ...