API docs to .h
This commit is contained in:
parent
2ddbac101e
commit
8bc4551f5e
|
@ -10,42 +10,7 @@
|
||||||
#define SHRT_SHIFT ((int)((sizeof(unsigned short)*CHAR_BIT) - 4))
|
#define SHRT_SHIFT ((int)((sizeof(unsigned short)*CHAR_BIT) - 4))
|
||||||
#define CHAR_SHIFT ((int)((sizeof(unsigned char)*CHAR_BIT) - 4))
|
#define CHAR_SHIFT ((int)((sizeof(unsigned char)*CHAR_BIT) - 4))
|
||||||
|
|
||||||
/** @file
|
/** @file */
|
||||||
*
|
|
||||||
* printf and friends.
|
|
||||||
*
|
|
||||||
* Etherboot's printf() functions understand the following format
|
|
||||||
* specifiers:
|
|
||||||
*
|
|
||||||
* - Hexadecimal integers
|
|
||||||
* - @c %[#]x - 4 bytes int (8 hex digits, lower case)
|
|
||||||
* - @c %[#]X - 4 bytes int (8 hex digits, upper case)
|
|
||||||
* - @c %[#]lx - 8 bytes long (16 hex digits, lower case)
|
|
||||||
* - @c %[#]lX - 8 bytes long (16 hex digits, upper case)
|
|
||||||
* - @c %[#]hx - 2 bytes int (4 hex digits, lower case)
|
|
||||||
* - @c %[#]hX - 2 bytes int (4 hex digits, upper case)
|
|
||||||
* - @c %[#]hhx - 1 byte int (2 hex digits, lower case)
|
|
||||||
* - @c %[#]hhX - 1 byte int (2 hex digits, upper case)
|
|
||||||
* .
|
|
||||||
* If the optional # prefix is specified, the output will
|
|
||||||
* be prefixed with 0x (or 0X).
|
|
||||||
*
|
|
||||||
* - Other integers
|
|
||||||
* - @c %d - decimal int
|
|
||||||
* .
|
|
||||||
* Note that any width specification (e.g. the @c 02 in @c %02x)
|
|
||||||
* will be accepted but ignored.
|
|
||||||
*
|
|
||||||
* - Strings and characters
|
|
||||||
* - @c %c - char
|
|
||||||
* - @c %s - string
|
|
||||||
* - @c %m - error message text (i.e. strerror(errno))
|
|
||||||
*
|
|
||||||
* - Etherboot-specific specifiers
|
|
||||||
* - @c %@ - IP in ddd.ddd.ddd.ddd notation
|
|
||||||
* - @c %! - MAC address in xx:xx:xx:xx:xx:xx notation
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Write a formatted string to a buffer.
|
* Write a formatted string to a buffer.
|
||||||
|
|
|
@ -1,10 +1,46 @@
|
||||||
#ifndef VSPRINTF_H
|
#ifndef VSPRINTF_H
|
||||||
#define VSPRINTF_H
|
#define VSPRINTF_H
|
||||||
|
|
||||||
/*
|
/** @file
|
||||||
* Note that we cannot use __attribute__ (( format ( printf, ... ) ))
|
*
|
||||||
* to get automatic type checking on arguments, because we use
|
* printf and friends.
|
||||||
* non-standard format characters such as "%!" and "%@".
|
*
|
||||||
|
* Etherboot's printf() functions understand the following format
|
||||||
|
* specifiers:
|
||||||
|
*
|
||||||
|
* - Hexadecimal integers
|
||||||
|
* - @c %[#]x - 4 bytes int (8 hex digits, lower case)
|
||||||
|
* - @c %[#]X - 4 bytes int (8 hex digits, upper case)
|
||||||
|
* - @c %[#]lx - 8 bytes long (16 hex digits, lower case)
|
||||||
|
* - @c %[#]lX - 8 bytes long (16 hex digits, upper case)
|
||||||
|
* - @c %[#]hx - 2 bytes int (4 hex digits, lower case)
|
||||||
|
* - @c %[#]hX - 2 bytes int (4 hex digits, upper case)
|
||||||
|
* - @c %[#]hhx - 1 byte int (2 hex digits, lower case)
|
||||||
|
* - @c %[#]hhX - 1 byte int (2 hex digits, upper case)
|
||||||
|
* .
|
||||||
|
* If the optional # prefix is specified, the output will
|
||||||
|
* be prefixed with 0x (or 0X).
|
||||||
|
*
|
||||||
|
* - Other integers
|
||||||
|
* - @c %d - decimal int
|
||||||
|
* .
|
||||||
|
* Note that any width specification (e.g. the @c 02 in @c %02x)
|
||||||
|
* will be accepted but ignored.
|
||||||
|
*
|
||||||
|
* - Strings and characters
|
||||||
|
* - @c %c - char
|
||||||
|
* - @c %s - string
|
||||||
|
* - @c %m - error message text (i.e. strerror(errno))
|
||||||
|
*
|
||||||
|
* - Etherboot-specific specifiers
|
||||||
|
* - @c %@ - IP address in ddd.ddd.ddd.ddd notation
|
||||||
|
* - @c %! - MAC address in xx:xx:xx:xx:xx:xx notation
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @note Unfortunately, we cannot use <tt> __attribute__ (( format (
|
||||||
|
* printf, ... ) )) </tt> to get automatic type checking on arguments,
|
||||||
|
* because we use non-standard format characters such as @c %! and
|
||||||
|
* @c %@.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
Reference in New Issue