grub/kern
okuji 385bd9c12e 2006-05-02 Yoshinori K. Okuji <okuji@enbug.org>
* kern/env.c (struct grub_env_context): Removed "sorted". Renamed
        "next" to "prev" for readability.
        (struct grub_env_sorted_var): New struct.
        (grub_env_context): Renamed to ...
        (initial_context): ... this.
        (grub_env_var_context): Renamed to ...
        (current_context): ... this.
        (grub_env_find): Look only at CURRENT_CONTEXT.
        (grub_env_context_open): Rewritten to copy exported variables from
        previous context.
        (grub_env_context_close): Rewritten according to the new
        scheme. Also, add an assertion to prevent the initial context from
        removed.
        (grub_env_insert): Removed the code for the sorted list.
        (grub_env_remove): Likewise.
        (grub_env_export): Simply mark the variable with
        GRUB_ENV_VAR_GLOBAL.
        (grub_env_set): A cosmetic change for naming consistency.
        (grub_env_get): Likewise.
        (grub_env_unset): Likewise.
        (grub_env_iterate): Rewritten to sort variables within this
        function.
        (grub_register_variable_hook): Fixed for naming consistency. Call
        grub_env_find again, only if NAME is not found at the first time.
        (mangle_data_slot_name): New function.
        (grub_env_set_data_slot): Likewise.
        (grub_env_get_data_slot): Likewise.
        (grub_env_unset_data_slot): Likewise.

        * include/grub/env.h (grub_env_var_type): New enum.
        (GRUB_ENV_VAR_LOCAL): New constant.
        (GRUB_ENV_VAR_GLOBAL): Likewise.
        (GRUB_ENV_VAR_DATA): Likewise.
        (struct grub_env_var): Removed "sort_next" and "sort_prevp". Added
        "type".
        (grub_env_set): Replace VAR with NAME for consistency.
        (grub_register_variable_hook): Likewise.
        (grub_env_export): Specify the name of the argument.
        (grub_env_set_data_slot): New prototype.
        (grub_env_get_data_slot): Likewise.
        (grub_env_unset_data_slot): Likewise.
2006-05-01 23:30:51 +00:00
..
efi 2006-04-30 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-30 21:09:37 +00:00
i386 2006-04-25 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-25 20:08:31 +00:00
ieee1275 2005-08-21 Vincent Pelletier <subdino2004@yahoo.fr> 2005-08-21 18:42:55 +00:00
powerpc 2006-04-25 Hollis Blanchard <hollis@penguinppc.org> 2006-04-26 02:20:13 +00:00
sparc64 2006-04-25 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-25 20:08:31 +00:00
device.c 2005-08-20 Yoshinori K. Okuji <okuji@enbug.org> 2005-08-20 07:49:02 +00:00
disk.c 2005-08-18 Yoshinori K. Okuji <okuji@enbug.org> 2005-08-18 03:14:39 +00:00
dl.c 2005-12-09 Hollis Blanchard <hollis@penguinppc.org> 2005-12-10 05:24:59 +00:00
env.c 2006-05-02 Yoshinori K. Okuji <okuji@enbug.org> 2006-05-01 23:30:51 +00:00
err.c 2006-04-23 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-23 13:37:36 +00:00
file.c 2005-10-15 Yoshinori K. Okuji <okuji@enbug.org> 2005-10-15 17:28:36 +00:00
fs.c 2005-07-03 Yoshinori Okuji <okuji@enbug.org> 2005-07-03 18:06:56 +00:00
loader.c 2006-04-30 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-30 21:09:37 +00:00
main.c 2006-04-25 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-25 20:08:31 +00:00
misc.c 2006-04-25 Hollis Blanchard <hollis@penguinppc.org> 2006-04-25 23:47:48 +00:00
mm.c 2006-04-25 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-25 20:08:31 +00:00
parser.c 2005-11-22 Hollis Blanchard <hollis@penguinppc.org> 2005-11-23 03:36:25 +00:00
partition.c 2005-08-20 Yoshinori K. Okuji <okuji@enbug.org> 2005-08-20 07:49:02 +00:00
rescue.c 2006-04-23 Yoshinori K. Okuji <okuji@enbug.org> 2006-04-23 13:37:36 +00:00
term.c 2005-11-03 Hollis Blanchard <hollis@penguinppc.org> 2005-11-04 03:00:59 +00:00