blob: da20f3de126f00fe7f99be6b3528a69e36305029 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0 */
/*
* C++ stream style string formatter and printer used in KUnit for outputting
* KUnit messages.
*
* Copyright (C) 2019, Google LLC.
* Author: Mike Krinkin <krinkin@google.com>
*/
#include <linux/types.h>
/**
* strerror() - returns a string representation for the given error code.
* @errno: an error code defined in include/uapi/asm-generic/errno-base.h or
* include/uapi/asm-generic/errno.h
*
* This function returns mnemonic representation of error code (for example,
* EPERM, ENOENT, ESRCH, etc). For unsupported errors this function returns
* NULL.
*/
const char *strerror(int errno);
/**
* strerror_r() - returns a string representation of the given error code.
* Unlike strerror() it may use provided buffer to store the string, so in
* the case of unknown error it returns a message containing an error code
* instead of returning NULL.
* @errno: an error code defined in include/uapi/asm-generic/errno-base.h or
* include/uapi/asm-generic/errno.h
* @buf: pointer to a buffer that could be used to store the string.
* @buflen: contains the capacity of the buffer
*
* When function uses provided buffer and it's capacity is not enough to
* store the whole string the string is truncated and always contains '\0'.
* If buflen == 0, the function returns NULL pointer as there is not enough
* space to store even '\0'.
*/
const char *strerror_r(int errno, char *buf, size_t buflen);