[PATCH]: libpayload: Document readline

No code changes.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3550 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Jordan Crouse 2008-08-28 23:11:29 +00:00
parent e2ad806285
commit 617120c828
2 changed files with 29 additions and 4 deletions

View File

@ -418,6 +418,9 @@ void fatal(const char* msg) __attribute__ ((noreturn));
/**
* @defgroup readline Readline Functions
* This interface provides a simple implementation of the standard
* readline and getline functions. They are suitable for reading a
* line of input from the console.
* @{
*/
char * readline(const char * prompt);

View File

@ -27,16 +27,26 @@
* SUCH DAMAGE.
*/
/** @file libc/readline.c
* @brief Simple readline implementation
*/
#include <libpayload.h>
static char * readline_buffer;
static int readline_bufferlen;
/**
* This readline implementation is rather simple, but it does more than the
* original readline() because it allows us to have a pre-filled buffer. To
* pre-fill the buffer, use the getline() function.
* @brief Read a line from the terminal and return it
* @param prompt A prompt to display on the line
* @return A pointer to the input string
*
* Read a line from the terminal and return it. This readline implementation
* is rather simple, but it does more than the original readline() because
* it allows us to have a pre-filled buffer. To pre-fill the buffer, use the
* getline() function.
*/
char * readline(const char * prompt)
{
char *buffer;
@ -50,7 +60,7 @@ char * readline(const char * prompt)
}
buffer = readline_buffer;
/* print prompt */
if (prompt) {
current = 0;
@ -140,6 +150,18 @@ out:
return buffer;
}
/**
* @brief Read a line from the input and store it in a buffer
* @param prompt A buffer to store the line in
* @param len Length of the buffer
* @return The final length of the string
* This function allows the user to pass a predefined buffer to
* readline(). The buffer may be filled with a default value
* which will be displayed by readline and can be edited as normal.
* The final input string returned by readline will be returned in
* the buffer and the function will return the length of the string.
*/
int getline(char *buffer, int len)
{
readline_buffer = buffer;