1 /* ----> DO NOT REMOVE THE FOLLOWING NOTICE <---- 2 * 3 * Copyright (c) 2014-2015 Datalight, Inc. 4 * All Rights Reserved Worldwide. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; use version 2 of the License. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but "AS-IS," WITHOUT ANY WARRANTY; without even the implied warranty 12 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License along 16 * with this program; if not, write to the Free Software Foundation, Inc., 17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 18 */ 19 20 /* Businesses and individuals that for commercial or other reasons cannot 21 * comply with the terms of the GPLv2 license may obtain a commercial license 22 * before incorporating Reliance Edge into proprietary software for 23 * distribution in any form. Visit http://www.datalight.com/reliance-edge for 24 * more information. 25 */ 26 27 /** @file 28 * @brief Error values for Reliance Edge APIs 29 */ 30 #ifndef REDERRNO_H 31 #define REDERRNO_H 32 33 34 /** @brief Return type for Reliance Edge error values. 35 */ 36 typedef int32_t REDSTATUS; 37 38 39 /* The errno numbers are the same as Linux. 40 */ 41 42 /** Operation not permitted. */ 43 #define RED_EPERM 1 44 45 /** No such file or directory. */ 46 #define RED_ENOENT 2 47 48 /** I/O error. */ 49 #define RED_EIO 5 50 51 /** Bad file number. */ 52 #define RED_EBADF 9 53 54 /** Out of memory */ 55 #define RED_ENOMEM 12 56 57 /** Device or resource busy. */ 58 #define RED_EBUSY 16 59 60 /** File exists. */ 61 #define RED_EEXIST 17 62 63 /** Cross-device link. */ 64 #define RED_EXDEV 18 65 66 /** Not a directory. */ 67 #define RED_ENOTDIR 20 68 69 /** Is a directory. */ 70 #define RED_EISDIR 21 71 72 /** Invalid argument. */ 73 #define RED_EINVAL 22 74 75 /** File table overflow. */ 76 #define RED_ENFILE 23 77 78 /** Too many open files. */ 79 #define RED_EMFILE 24 80 81 /** File too large. */ 82 #define RED_EFBIG 27 83 84 /** No space left on device. */ 85 #define RED_ENOSPC 28 86 87 /** Read-only file system. */ 88 #define RED_EROFS 30 89 90 /** Too many links. */ 91 #define RED_EMLINK 31 92 93 /** Math result not representable. */ 94 #define RED_ERANGE 34 95 96 /** File name too long. */ 97 #define RED_ENAMETOOLONG 36 98 99 /** Function not implemented. */ 100 #define RED_ENOSYS 38 101 102 /** Directory not empty. */ 103 #define RED_ENOTEMPTY 39 104 105 /** No data available. */ 106 #define RED_ENODATA 61 107 108 /** Too many users. */ 109 #define RED_EUSERS 87 110 111 /** Nothing will be okay ever again. */ 112 #define RED_EFUBAR RED_EINVAL 113 114 115 #endif /* ifndef REDERRNO_H */ 116