File: yaffs_error.c

package info (click to toggle)
u-boot 2014.10%2Bdfsg1-5
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 86,340 kB
  • ctags: 382,377
  • sloc: ansic: 1,071,015; asm: 34,076; perl: 8,007; python: 6,290; makefile: 5,210; sh: 2,297; cpp: 1,826; php: 1,299; yacc: 604; lex: 363; sql: 71; tcl: 28; sed: 14; awk: 6
file content (58 lines) | stat: -rw-r--r-- 1,254 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
 * YAFFS: Yet another FFS. A NAND-flash specific file system.
 *
 * Copyright (C) 2002-2011 Aleph One Ltd.
 *   for Toby Churchill Ltd and Brightstar Engineering
 *
 * Created by Timothy Manning <timothy@yaffs.net>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#include "yaffsfs.h"

struct error_entry {
	int code;
	const char *text;
};

static const struct error_entry error_list[] = {
	{ ENOMEM , "ENOMEM" },
	{ EBUSY , "EBUSY"},
	{ ENODEV , "ENODEV"},
	{ EINVAL , "EINVAL"},
	{ EBADF , "EBADF"},
	{ EACCES , "EACCES"},
	{ EXDEV , "EXDEV" },
	{ ENOENT , "ENOENT"},
	{ ENOSPC , "ENOSPC"},
	{ ERANGE , "ERANGE"},
	{ ENODATA, "ENODATA"},
	{ ENOTEMPTY, "ENOTEMPTY"},
	{ ENAMETOOLONG, "ENAMETOOLONG"},
	{ ENOMEM , "ENOMEM"},
	{ EEXIST , "EEXIST"},
	{ ENOTDIR , "ENOTDIR"},
	{ EISDIR , "EISDIR"},
	{ ENFILE, "ENFILE"},
	{ EROFS, "EROFS"},
	{ EFAULT, "EFAULT"},
	{ 0, NULL }
};

const char *yaffs_error_to_str(int err)
{
	const struct error_entry *e = error_list;

	if (err < 0)
		err = -err;

	while (e->code && e->text) {
		if (err == e->code)
			return e->text;
		e++;
	}
	return "Unknown error code";
}