]> git.proxmox.com Git - ceph.git/blame - ceph/src/common/aix_errno.cc
update sources to v12.1.0
[ceph.git] / ceph / src / common / aix_errno.cc
CommitLineData
7c673cae
FG
1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2// vim: ts=8 sw=2 smarttab
3/*
4 * Ceph - scalable distributed file system
5 *
6 * Copyright (C) 2011 New Dream Network
7 *
8 * This is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License version 2.1, as published by the Free Software
11 * Foundation. See file COPYING.
12 *
13 */
14
15#include <errno.h>
16#include "include/types.h"
17
18
19// converts from linux errno values to host values
31f18b77 20__s32 ceph_to_hostos_errno(__s32 r)
7c673cae
FG
21{
22 if (r < -34) {
23 switch (r) {
24 case -35:
25 return -EDEADLK;
26 case -36:
27 return -ENAMETOOLONG;
28 case -37:
29 return -ENOLCK;
30 case -38:
31 return -ENOSYS;
32 case -39:
33 return -ENOTEMPTY;
34 case -40:
35 return -ELOOP;
36 case -42:
37 return -ENOMSG;
38 case -43:
39 return -EIDRM;
40 case -44:
41 return -ECHRNG;
42 case -45:
43 return -EL2NSYNC;
44 case -46:
45 return -EL3HLT;
46 case -47:
47 return -EL3RST;
48 case -48:
49 return -ELNRNG;
50 case -49:
51 return -EUNATCH;
52 case -51:
53 return -EL2HLT;
54 case -52:
55 return -EPERM; //TODO EBADE
56 case -53:
57 return -EPERM; //TODO EBADR
58 case -54:
59 return -EPERM; //TODO EXFULL
60 case -55:
61 return -EPERM; //TODO ENOANO
62 case -56:
63 return -EPERM; //TODO EBADRQC
64 case -57:
65 return -EPERM; //TODO EBADSLT
66 case -59:
67 return -EPERM; //TODO EBFONT
68 case -60:
69 return -ENOSTR;
70 case -61:
71 return -ENODATA;
72 case -62:
73 return -ETIME;
74 case -63:
75 return -ENOSR;
76 case -64:
77 return -EPERM; //TODO ENONET
78 case -65:
79 return -EPERM; //TODO ENOPKG
80 case -66:
81 return -EREMOTE;
82 case -67:
83 return -ENOLINK;
84 case -68:
85 return -EPERM; //TODO EADV
86 case -69:
87 return -EPERM; //TODO ESRMNT
88 case -70:
89 return -EPERM; //TODO ECOMM
90 case -71:
91 return -EPROTO;
92 case -72:
93 return -EMULTIHOP;
94 case -73:
95 return -EPERM; //TODO EDOTDOT
96 case -74:
97 return -EBADMSG;
98 case -75:
99 return -EOVERFLOW;
100 case -76:
101 return -EPERM; //TODO ENOTUNIQ
102 case -77:
103 return -EPERM; //TODO EBADFD
104 case -78:
105 return -EPERM; //TODO EREMCHG
106 case -79:
107 return -EPERM; //TODO ELIBACC
108 case -80:
109 return -EPERM; //TODO ELIBBAD
110 case -81:
111 return -EPERM; //TODO ELIBSCN
112 case -82:
113 return -EPERM; //TODO ELIBMAX
114 case -83:
115 return -EPERM; // TODO ELIBEXEC
116 case -84:
117 return -EILSEQ;
118 case -85:
119 return -ERESTART;
120 case -86:
121 return -EPERM; //ESTRPIPE;
122 case -87:
123 return -EUSERS;
124 case -88:
125 return -ENOTSOCK;
126 case -89:
127 return -EDESTADDRREQ;
128 case -90:
129 return -EMSGSIZE;
130 case -91:
131 return -EPROTOTYPE;
132 case -92:
133 return -ENOPROTOOPT;
134 case -93:
135 return -EPROTONOSUPPORT;
136 case -94:
137 return -ESOCKTNOSUPPORT;
138 case -95:
139 return -EOPNOTSUPP;
140 case -96:
141 return -EPFNOSUPPORT;
142 case -97:
143 return -EAFNOSUPPORT;
144 case -98:
145 return -EADDRINUSE;
146 case -99:
147 return -EADDRNOTAVAIL;
148 case -100:
149 return -ENETDOWN;
150 case -101:
151 return -ENETUNREACH;
152 case -102:
153 return -ENETRESET;
154 case -103:
155 return -ECONNABORTED;
156 case -104:
157 return -ECONNRESET;
158 case -105:
159 return -ENOBUFS;
160 case -106:
161 return -EISCONN;
162 case -107:
163 return -ENOTCONN;
164 case -108:
165 return -ESHUTDOWN;
166 case -109:
167 return -ETOOMANYREFS;
168 case -110:
169 return -ETIMEDOUT;
170 case -111:
171 return -ECONNREFUSED;
172 case -112:
173 return -EHOSTDOWN;
174 case -113:
175 return -EHOSTUNREACH;
176 case -114:
177 return -EALREADY;
178 case -115:
179 return -EINPROGRESS;
180 case -116:
181 return -ESTALE;
182 case -117:
183 return -EPERM; //TODO EUCLEAN
184 case -118:
185 return -EPERM; //TODO ENOTNAM
186 case -119:
187 return -EPERM; //TODO ENAVAIL
188 case -120:
189 return -EPERM; //TODO EISNAM
190 case -121:
191 return -EPERM; //TODO EREMOTEIO
192 case -122:
193 return -EDQUOT;
194 case -123:
195 return -EPERM; //TODO ENOMEDIUM
196 case -124:
197 return -EPERM; //TODO EMEDIUMTYPE - not used
198 case -125:
199 return -ECANCELED;
200 case -126:
201 return -EPERM; //TODO ENOKEY
202 case -127:
203 return -EPERM; //TODO EKEYEXPIRED
204 case -128:
205 return -EPERM; //TODO EKEYREVOKED
206 case -129:
207 return -EPERM; //TODO EKEYREJECTED
208 case -130:
209 return -EOWNERDEAD;
210 case -131:
211 return -ENOTRECOVERABLE;
212 case -132:
213 return -EPERM; //TODO ERFKILL
214 case -133:
215 return -EPERM; //TODO EHWPOISON
216
217 default: {
218 break;
219 }
220 }
221 }
222 return r; // otherwise return original value
223}
224
31f18b77
FG
225// converts Host OS errno values to linux/Ceph values
226// XXX Currently not worked out
227__s32 hostos_to_ceph_errno(__s32 r)
228{
229 return r;
230}
7c673cae 231