[coreboot-gerrit] New patch to review for coreboot: 813462f libpayload: Add strerror

Stefan Tauner (stefan.tauner@gmx.at) gerrit at coreboot.org
Tue Jun 25 19:29:30 CEST 2013


Stefan Tauner (stefan.tauner at gmx.at) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3537

-gerrit

commit 813462f246ffb0ca50302ea1a0356c6cbbb16183
Author: Stefan Tauner <stefan.tauner at gmx.at>
Date:   Tue Jun 25 19:07:32 2013 +0200

    libpayload: Add strerror
    
    Change-Id: I33d45ad7d09473b8c6f5b7ee5fbadc0d184f9dcd
    Signed-off-by: Stefan Tauner <stefan.tauner at gmx.at>
---
 payloads/libpayload/include/string.h |  5 +++--
 payloads/libpayload/libc/string.c    | 14 ++++++++++++++
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/payloads/libpayload/include/string.h b/payloads/libpayload/include/string.h
index 9e4f791..952261f 100644
--- a/payloads/libpayload/include/string.h
+++ b/payloads/libpayload/include/string.h
@@ -63,8 +63,9 @@ char *strstr(const char *h, const char *n);
 char *strsep(char **stringp, const char *delim);
 size_t strspn(const char *s, const char *a);
 size_t strcspn(const char *s, const char *a);
-char* strtok(char *str, const char *delim);
-char* strtok_r(char *str, const char *delim, char **ptr);
+char *strtok(char *str, const char *delim);
+char *strtok_r(char *str, const char *delim, char **ptr);
+char *strerror(int errnum);
 /** @} */
 
 /**
diff --git a/payloads/libpayload/libc/string.c b/payloads/libpayload/libc/string.c
index 6151164..0c48f35 100644
--- a/payloads/libpayload/libc/string.c
+++ b/payloads/libpayload/libc/string.c
@@ -639,3 +639,17 @@ void perror(const char *s)
 {
 	printf("%s: %d\n", s?s:"(none)", errno);
 }
+
+/**
+ * Get a message string describing the given error number.
+ *
+ * @param errnum The error number to be interpreted
+ * @return A pointer to a string describing the given error number
+ */
+char *strerror(int errnum)
+{
+	/* Reserve enough space for the string below + INT32_MAX in decimal + \0 */
+	static char errstr[27];
+	snprintf(errstr, sizeof(errstr), "Error %d occurred\n", errnum & INT32_MAX);
+	return errstr;
+}



More information about the coreboot-gerrit mailing list