| /* Copyright (c) 2015 Google Inc |
| * Davide Libenzi <dlibenzi@google.com> |
| * See LICENSE for details. |
| */ |
| |
| #pragma once |
| |
| extern bool booting; |
| |
| /** |
| * @brief Fetches a given boot commond line parameter. |
| * |
| * @param base The base pointer from which to start the search. Should be set |
| * to NULL the first time is being called, and, for command line |
| * parameters with multiple instances, should be set to the value |
| * returned by the previous successful call to this API. |
| * @param option The name of the option to retrieve. By convention, options |
| * should start with the '-' character. |
| * @param param The pointer to the buffer where to store the eventual value of |
| * the parameter (in a "-option=value" format). Can be NULL if the |
| * caller is not interested in the parameter value (because of a |
| * value-less parameter (example "-enable-acpi"). |
| * @param max_param Maximum length of the @a param buffer, or 0 if @a param is |
| * NULL. |
| * |
| * @return Returns a pointer different from NULL if the given @a option has been |
| * successfully parsed, or NULL otherwise. The returned pointer should |
| * be treated as opaque value by the caller, and used only for the |
| * following calls to this API, in case of multiple instance parameters |
| * (example "-map=0x12345678,0x1000 -map=0x987654321,0x2000"). |
| */ |
| const char *get_boot_option(const char *base, const char *option, char *param, |
| size_t max_param); |