1 |
/* |
/* |
2 |
* GRUB -- GRand Unified Bootloader |
* GRUB -- GRand Unified Bootloader |
3 |
* Copyright (C) 2003 Free Software Foundation, Inc. |
* Copyright (C) 2003,2005 Free Software Foundation, Inc. |
4 |
* |
* |
5 |
* GRUB is free software; you can redistribute it and/or modify |
* GRUB is free software; you can redistribute it and/or modify |
6 |
* it under the terms of the GNU General Public License as published by |
* it under the terms of the GNU General Public License as published by |
24 |
#include <grub/err.h> |
#include <grub/err.h> |
25 |
#include <grub/types.h> |
#include <grub/types.h> |
26 |
|
|
27 |
|
struct grub_env_var; |
28 |
|
|
29 |
|
typedef char *(*grub_env_read_hook_t) (struct grub_env_var *var, |
30 |
|
const char *val); |
31 |
|
typedef char *(*grub_env_write_hook_t) (struct grub_env_var *var, |
32 |
|
const char *val); |
33 |
|
|
34 |
struct grub_env_var |
struct grub_env_var |
35 |
{ |
{ |
36 |
char *name; |
char *name; |
37 |
char *value; |
char *value; |
38 |
grub_err_t (*read_hook) (struct grub_env_var *var, char **val); |
grub_env_read_hook_t read_hook; |
39 |
grub_err_t (*write_hook) (struct grub_env_var *var); |
grub_env_write_hook_t write_hook; |
40 |
struct grub_env_var *next; |
struct grub_env_var *next; |
41 |
struct grub_env_var **prevp; |
struct grub_env_var **prevp; |
42 |
struct grub_env_var *sort_next; |
struct grub_env_var *sort_next; |
48 |
void EXPORT_FUNC(grub_env_unset) (const char *name); |
void EXPORT_FUNC(grub_env_unset) (const char *name); |
49 |
void EXPORT_FUNC(grub_env_iterate) (int (* func) (struct grub_env_var *var)); |
void EXPORT_FUNC(grub_env_iterate) (int (* func) (struct grub_env_var *var)); |
50 |
grub_err_t EXPORT_FUNC(grub_register_variable_hook) (const char *var, |
grub_err_t EXPORT_FUNC(grub_register_variable_hook) (const char *var, |
51 |
grub_err_t (*read_hook) |
grub_env_read_hook_t read_hook, |
52 |
(struct grub_env_var *var, char **val), |
grub_env_write_hook_t write_hook); |
|
grub_err_t (*write_hook) |
|
|
(struct grub_env_var *var)); |
|
53 |
|
|
54 |
#endif /* ! GRUB_ENV_HEADER */ |
#endif /* ! GRUB_ENV_HEADER */ |