History log of /freebsd/lib/libefivar/efivar.c (Results 1 – 25 of 27)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 259eac01 02-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Kill needless sys/cdefs.h

Sponsored by: Netflix


# 8d136fb0 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Use struct guid_table instead of uuid_table

uuid_table was the linux name. When libefivar was started, I tried to
make it compatible with Linux. However, that's no longer relevant: (a)
littl

efivar: Use struct guid_table instead of uuid_table

uuid_table was the linux name. When libefivar was started, I tried to
make it compatible with Linux. However, that's no longer relevant: (a)
little to no Linux code was subsequently ported and (b) Linux compat has
eroded. This erodes it a bit more to cope with the uuid_t -> efi_guid_t
changes. This also moves a couple of functions around to reduce copying and
updates consumers for the visible parts of this change.

Sponsored by: Netflix
Reviewed by: tsoome, kib
Differential Revision: https://reviews.freebsd.org/D50060

show more ...


# daeb975f 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Use bool instead of int

Sponsored by: Netflix
Reviewed by: tsoome, kib
Differential Revision: https://reviews.freebsd.org/D50059


# 4c317815 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Move to new ioctl struct

Move to the newer ioctl 'struct efi_var_ioctl' which uses efi_guid_t
instead of struct uuid. This allows for direct assignment agaain.

Sponsored by: Netflix
Review

efivar: Move to new ioctl struct

Move to the newer ioctl 'struct efi_var_ioctl' which uses efi_guid_t
instead of struct uuid. This allows for direct assignment agaain.

Sponsored by: Netflix
Reviewed by: tsoome, kib
Differential Revision: https://reviews.freebsd.org/D50058

show more ...


# 20c5e4b3 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Allow uuid_t and efi_guid_t to be different types.

While they are binarily the same, the API are different. To use EDK2
more effectively, we need to transition to using EDK@'s API rather tha

efivar: Allow uuid_t and efi_guid_t to be different types.

While they are binarily the same, the API are different. To use EDK2
more effectively, we need to transition to using EDK@'s API rather than
the uuid_t API. This change makes the code neutral on the subject.

Sponsored by: Netflix
Reviewed by: tsoome
Differential Revision: https://reviews.freebsd.org/D50035

show more ...


# 5f2dd25a 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Test uuid against zero

Test the passed in GuID against a guid of all 0's. This removes another
place that has to worry about the difference between uuit_t and
EFI_GUID.

Sponsored by: Netfl

efivar: Test uuid against zero

Test the passed in GuID against a guid of all 0's. This removes another
place that has to worry about the difference between uuit_t and
EFI_GUID.

Sponsored by: Netflix
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D50034

show more ...


# 3eb80ef8 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Use memcmp instead of uuid_ functions to compare

In these cases, memcmp is a perfectly fine substitute for the uuid
functions. We don't need checking to make sure the uuids are good, we
know

efivar: Use memcmp instead of uuid_ functions to compare

In these cases, memcmp is a perfectly fine substitute for the uuid
functions. We don't need checking to make sure the uuids are good, we
know the pointers are non-ULL, etc. memcmp will reduce the number of
places we need to know these are actually UUIDs, or similar.

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

show more ...


# cdfaf4e9 01-May-2025 Warner Losh <imp@FreeBSD.org>

efivar: Add some explicit casts to uuid_t

Since we know we're type-punning the EFI_GUID to a uuid_t, add some
explicit casts even though, at the moment, we typedef one to the other.

Sponsored by:

efivar: Add some explicit casts to uuid_t

Since we know we're type-punning the EFI_GUID to a uuid_t, add some
explicit casts even though, at the moment, we typedef one to the other.

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

show more ...


# 5e9af2b9 24-Apr-2025 Warner Losh <imp@FreeBSD.org>

libefivar: Simplify Z / zero define

This really onl needs to be one zero long for the entire structure to be
initialized. Use this form instead.

Sponsored by: Netflix


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, release/14.0.0
# 1d386b48 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line .c pattern

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


Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0, release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0
# 8e69ae1c 05-Feb-2019 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r343712 through r343806.


# 52467047 04-Feb-2019 Warner Losh <imp@FreeBSD.org>

Regularize the Netflix copyright

Use recent best practices for Copyright form at the top of
the license:
1. Remove all the All Rights Reserved clauses on our stuff. Where we
piggybacked others, u

Regularize the Netflix copyright

Use recent best practices for Copyright form at the top of
the license:
1. Remove all the All Rights Reserved clauses on our stuff. Where we
piggybacked others, use a separate line to make things clear.
2. Use "Netflix, Inc." everywhere.
3. Use a single line for the copyright for grep friendliness.
4. Use date ranges in all places for our stuff.

Approved by: Netflix Legal (who gave me the form), adrian@ (pmc files)

show more ...


Revision tags: release/12.0.0, release/11.2.0
# 6decf2cc 02-Mar-2018 Ed Maste <emaste@FreeBSD.org>

libefivar: use standard 2-Clause FreeBSD license

Approved by: imp
Sponsored by: The FreeBSD Foundation


# 55b1c6e7 15-Nov-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Merge ^/head r325663 through r325841.


# 831bec11 11-Nov-2017 Warner Losh <imp@FreeBSD.org>

Simplify the efivar interface a little.

We started out having Linux compatible libefivar interfaces. This was
in anticipation of porting the GPL'd efibootmgr to FreeBSD via a
port. However, since we

Simplify the efivar interface a little.

We started out having Linux compatible libefivar interfaces. This was
in anticipation of porting the GPL'd efibootmgr to FreeBSD via a
port. However, since we need that functionality in the base, that port
isn't going to happened. It also appears that efivar is a private
library that's not used much outside a command line util and
efibootmgr. Reduce compatibility with the Linux version a little by
removing the mode parameter to efi_set_variable (which was unused on
FreeBSD, and not set to something useful in the code we'd
written). Also remove some efi error routines that were never
implemented and existed only to placate early GPL efibootmgr porting
experiments.

Suggested by: Matt Williams
Sponsored by: Netflix

show more ...


Revision tags: release/10.4.0
# 8fcbcc2d 16-Sep-2017 Enji Cooper <ngie@FreeBSD.org>

MFhead@r323635


# b754c279 13-Sep-2017 Navdeep Parhar <np@FreeBSD.org>

MFH @ r323558.


# 0e5d7678 13-Sep-2017 Warner Losh <imp@FreeBSD.org>

Minor fixes to edge cases in efi_get_next_variable_name

Fix allocating more memory for the names (unlikely to be needed, but
still best to get right) to ask for the length the kernel told use we
nee

Minor fixes to edge cases in efi_get_next_variable_name

Fix allocating more memory for the names (unlikely to be needed, but
still best to get right) to ask for the length the kernel told use we
needed, not the old length of the variable. Mind the proper NUL that
we add in the space we allocate. Free the old name string before we
allcoate a new one to limit what we leak to the last one (free passed
in name for the last one in the list), and detect the last one by rv
!= 0 and errno == ENOENT, rather then just the former to avoid false
positives if errno happens to be ENOENT on entry.

Sponsored by: Netflix

show more ...


Revision tags: release/11.1.0
# bea9d78b 09-Mar-2017 Warner Losh <imp@FreeBSD.org>

Share UCS2/UTF8 routines between boot loader and userland.

Move the UCS2 to UTF8 routines over into sys/boot/efi and have
libefivar grab them from there.

Sponsored by: Netflix


# 8ff15e86 03-Mar-2017 Warner Losh <imp@FreeBSD.org>

Make sure guid table is compiled before we use it.

Sponsored by: Netflix


# 80967c8e 03-Mar-2017 Warner Losh <imp@FreeBSD.org>

Only compile the known uuid table once.

Sponsored by: Netflix


# e1745513 03-Mar-2017 Warner Losh <imp@FreeBSD.org>

Move uuid_table definition to efivar.h.
Create new function efi_known_guid() to return list of guids.

Sponsored by: Netflix


# d630701f 25-Feb-2017 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r314178 through r314269.


# 589c673b 25-Feb-2017 Warner Losh <imp@FreeBSD.org>

Don't convert ENOENT to nothing for individual lookup, just for the
iterative get_next interface. This prevents efivar(3) from printing 4k
of 0's when a variable isn't set.

Sponsored by: Netflix


# a0e610c4 16-Oct-2016 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r306906 through r307382.


12