1 /*
2  * Copyright (C) 2017 The Android Open Source Project
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *  * Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  *  * Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in
12  *    the documentation and/or other materials provided with the
13  *    distribution.
14  *
15  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
16  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
17  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
18  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
19  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
20  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
22  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
25  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26  * SUCH DAMAGE.
27  */
28 
29 #include <errno.h>
30 
31 #include "header_checks.h"
32 
errno_h()33 static void errno_h() {
34   int error = errno;
35 
36   MACRO(E2BIG);
37   MACRO(EACCES);
38   MACRO(EADDRINUSE);
39   MACRO(EADDRNOTAVAIL);
40   MACRO(EAFNOSUPPORT);
41   MACRO(EAGAIN);
42   MACRO(EALREADY);
43   MACRO(EBADF);
44   MACRO(EBADMSG);
45   MACRO(EBUSY);
46   MACRO(ECANCELED);
47   MACRO(ECHILD);
48   MACRO(ECONNABORTED);
49   MACRO(ECONNRESET);
50   MACRO(EDEADLK);
51   MACRO(EDESTADDRREQ);
52   MACRO(EDOM);
53   MACRO(EDQUOT);
54   MACRO(EEXIST);
55   MACRO(EFAULT);
56   MACRO(EFBIG);
57   MACRO(EHOSTUNREACH);
58   MACRO(EIDRM);
59   MACRO(EILSEQ);
60   MACRO(EINPROGRESS);
61   MACRO(EINTR);
62   MACRO(EINVAL);
63   MACRO(EIO);
64   MACRO(EISCONN);
65   MACRO(EISDIR);
66   MACRO(ELOOP);
67   MACRO(EMFILE);
68   MACRO(EMLINK);
69   MACRO(EMSGSIZE);
70   MACRO(EMULTIHOP);
71   MACRO(ENAMETOOLONG);
72   MACRO(ENETDOWN);
73   MACRO(ENETRESET);
74   MACRO(ENETUNREACH);
75   MACRO(ENFILE);
76   MACRO(ENOBUFS);
77   MACRO(ENODATA);
78   MACRO(ENODEV);
79   MACRO(ENOENT);
80   MACRO(ENOEXEC);
81   MACRO(ENOLCK);
82   MACRO(ENOLINK);
83   MACRO(ENOMEM);
84   MACRO(ENOMSG);
85   MACRO(ENOPROTOOPT);
86   MACRO(ENOSPC);
87   MACRO(ENOSR);
88   MACRO(ENOSTR);
89   MACRO(ENOSYS);
90   MACRO(ENOTCONN);
91   MACRO(ENOTDIR);
92   MACRO(ENOTEMPTY);
93   MACRO(ENOTRECOVERABLE);
94   MACRO(ENOTSOCK);
95   MACRO(ENOTSUP);
96   MACRO(ENOTTY);
97   MACRO(ENXIO);
98   MACRO(EOPNOTSUPP);
99   MACRO(EOVERFLOW);
100   MACRO(EOWNERDEAD);
101   MACRO(EPERM);
102   MACRO(EPIPE);
103   MACRO(EPROTO);
104   MACRO(EPROTONOSUPPORT);
105   MACRO(EPROTOTYPE);
106   MACRO(ERANGE);
107   MACRO(EROFS);
108   MACRO(ESPIPE);
109   MACRO(ESRCH);
110   MACRO(ESTALE);
111   MACRO(ETIME);
112   MACRO(ETIMEDOUT);
113   MACRO(ETXTBSY);
114   MACRO(EWOULDBLOCK);
115   MACRO(EXDEV);
116 }
117