1/* get-errno.c - get and set errno.
2
3 Copyright (C) 2002, 2006, 2009-2015, 2018-2019 Free Software
4 Foundation, Inc.
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, either version 3 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>. */
18
19/* Written by Paul Eggert. */
20
21#include <config.h>
22
23#include "get-errno.h"
24
25#include <errno.h>
26
27/* Get and set errno. A source file that needs to set or get errno,
28 but doesn't need to test for specific errno values, can use these
29 functions to avoid namespace pollution. For example, a file that
30 defines EQUAL should not include <errno.h>, since <errno.h> might
31 define EQUAL; such a file can include <get-errno.h> instead. */
32
33int
34get_errno (void)
35{
36 return errno;
37}
38
39void
40set_errno (int e)
41{
42 errno = e;
43}
44