This repository has been archived by the owner on May 16, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 40
/
Copy patherror.c
132 lines (112 loc) · 3.26 KB
/
error.c
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
/*
libxbee - a C/C++ library to aid the use of Digi's XBee wireless modules
running in API mode.
Copyright (C) 2009 onwards Attie Grande ([email protected])
libxbee is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
libxbee is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with libxbee. If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdio.h>
#include <stdlib.h>
#include "internal.h"
EXPORT const char *xbee_errorToStr(xbee_err error) {
char *str = "Unknown error...";
switch (error) {
case XBEE_ENONE:
str = "No error";
break;
case XBEE_EUNKNOWN:
default:
str = "Unknown error...";
break;
case XBEE_ENOMEM:
str = "Out of memory";
break;
case XBEE_ESELECT:
str = "select() failed";
break;
case XBEE_ESELECTINTERRUPTED:
str = "select() was interrupted";
break;
case XBEE_EEOF:
str = "An EOF character was read";
break;
case XBEE_EIO:
str = "An I/O request failed";
break;
case XBEE_ESEMAPHORE:
str = "A semaphore error occured";
break;
case XBEE_EMUTEX:
str = "A mutex error occured";
break;
case XBEE_ETHREAD:
str = "A pthread error occured";
break;
case XBEE_ELINKEDLIST:
str = "A linkedlist error occured";
break;
case XBEE_ESETUP:
str = "Setup failed";
break;
case XBEE_EMISSINGPARAM:
str = "A crucial parameter was missing";
break;
case XBEE_EINVAL:
str = "An invalid argument was provided";
break;
case XBEE_ERANGE:
str = "Requested data falls outside the boundaries";
break;
case XBEE_ELENGTH:
str = "A length mis-match occured";
break;
case XBEE_EFAILED:
str = "A function call failed";
break;
case XBEE_ETIMEOUT:
str = "A timeout occured";
break;
case XBEE_EWOULDBLOCK:
str = "The call would block, but something is marked 'non-blocking'";
break;
case XBEE_EINUSE:
str = "A the item request is currently in use";
break;
case XBEE_EEXISTS:
str = "An item already exists by that name or identifier";
break;
case XBEE_ENOTEXISTS:
str = "The requested item does not exist";
break;
case XBEE_ENOFREEFRAMEID:
str = "There is currently no free frame ID that can be used for the request";
break;
case XBEE_ESTALE:
str = "Stale information was used during this function call";
break;
case XBEE_ENOTIMPLEMENTED:
str = "The called functionality has not yet been implemented";
break;
case XBEE_ETX:
str = "Transmission failed (check the retVal)";
break;
case XBEE_EREMOTE:
str = "An error occured on the remote host, or an error was encountered while communicating with the remote host";
break;
case XBEE_ESLEEPING:
str = "The given connection is not currently awake";
break;
case XBEE_ECATCHALL:
str = "The given connection is a catch-all connection";
break;
}
return str;
}