]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/posix-hdep.c
Update Copyright year range in all files maintained by GDB.
[thirdparty/binutils-gdb.git] / gdb / posix-hdep.c
CommitLineData
121ce6e5
DJ
1/* Host support routines for MinGW, for GDB, the GNU debugger.
2
ecd75fc8 3 Copyright (C) 2006-2014 Free Software Foundation, Inc.
121ce6e5
DJ
4
5 This file is part of GDB.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
121ce6e5
DJ
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
121ce6e5
DJ
19
20#include "defs.h"
b803fb0f 21#include "event-loop.h"
121ce6e5 22
0e9f083f 23#include <string.h>
121ce6e5 24
0ea3f30e
DJ
25#include "gdb_select.h"
26
121ce6e5
DJ
27/* The strerror() function can return NULL for errno values that are
28 out of range. Provide a "safe" version that always returns a
0df8b418 29 printable string. */
121ce6e5
DJ
30
31char *
32safe_strerror (int errnum)
33{
34 char *msg;
35
36 msg = strerror (errnum);
37 if (msg == NULL)
38 {
39 static char buf[32];
ad3bbd48 40
121ce6e5
DJ
41 xsnprintf (buf, sizeof buf, "(undocumented errno %d)", errnum);
42 msg = buf;
43 }
44 return (msg);
45}
46
0ea3f30e
DJ
47/* Wrapper for select. Nothing special needed on POSIX platforms. */
48
49int
50gdb_select (int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
51 struct timeval *timeout)
52{
53 return select (n, readfds, writefds, exceptfds, timeout);
54}
b803fb0f
DJ
55
56/* Wrapper for the body of signal handlers. Nothing special needed on
57 POSIX platforms. */
58
59void
60gdb_call_async_signal_handler (struct async_signal_handler *handler,
61 int immediate_p)
62{
63 if (immediate_p)
64 call_async_signal_handler (handler);
65 else
66 mark_async_signal_handler (handler);
67}