From eac445b650d60b54bae2e6738ef45117adacd90a Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Wed, 11 Feb 2015 13:32:57 +0000 Subject: [build] Allow error message URI to be customised via config/branding.h Signed-off-by: Michael Brown --- src/config/branding.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'src/config') diff --git a/src/config/branding.h b/src/config/branding.h index abb32612a..4bd7e3cc7 100644 --- a/src/config/branding.h +++ b/src/config/branding.h @@ -28,6 +28,51 @@ FILE_LICENCE ( GPL2_OR_LATER ); #define PRODUCT_SHORT_NAME "iPXE" #define PRODUCT_URI "http://ipxe.org" +/* + * Error messages + * + * iPXE error messages comprise a summary error message + * (e.g. "Permission denied") and a 32-bit error number. This number + * is incorporated into an error URI such as + * + * "No such file or directory (http://ipxe.org/2d0c613b)" + * + * or + * + * "Operation not supported (http://ipxe.org/3c092003)" + * + * Users may browse to the URI within the error message, which is + * provided by a database running on the iPXE web site + * (http://ipxe.org). This database provides details for all possible + * errors generated by iPXE, including: + * + * - the detailed error message (e.g. "Not an OCSP signing + * certificate") to complement the summary message (e.g. "Permission + * denied") which is compiled into the iPXE binary. + * + * - an instruction to the user to upgrade, if the error cannot be + * generated by the latest version of iPXE. + * + * - hints on how to fix the error (e.g. "This error indicates that + * the file was not found on the TFTP server. Check that you can + * retrieve the file using an alternative TFTP client, such as + * tftp-hpa on Linux.") + * + * - details of which source file within the iPXE codebase generated + * the error. + * + * - a direct link to the line(s) of code which generated the error. + * + * If you have a customer support team and would like your customers + * to contact your support team for all problems, instead of using the + * existing support infrastructure provided by http://ipxe.org, then + * you may define a custom URI to be included within error messages. + * + * Note that the custom URI is a printf() format string which must + * include a format specifier for the 32-bit error number. + */ +#define PRODUCT_ERROR_URI "http://ipxe.org/%08x" + #include #endif /* CONFIG_BRANDING_H */ -- cgit