]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/nbsd-nat.c
Convert struct target_ops to C++
[thirdparty/binutils-gdb.git] / gdb / nbsd-nat.c
CommitLineData
84c5b489
MK
1/* Native-dependent code for NetBSD.
2
e2882c85 3 Copyright (C) 2006-2018 Free Software Foundation, Inc.
84c5b489
MK
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
84c5b489
MK
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/>. */
84c5b489
MK
19
20#include "defs.h"
21
84c5b489
MK
22#include "nbsd-nat.h"
23
766062f6 24/* Return the name of a file that can be opened to get the symbols for
84c5b489
MK
25 the child process identified by PID. */
26
27char *
f6ac5f3d 28nbsd_nat_target::pid_to_exec_file (int pid)
84c5b489 29{
b4ab256d
HZ
30 ssize_t len;
31 static char buf[PATH_MAX];
32 char name[PATH_MAX];
84c5b489 33
b4ab256d
HZ
34 xsnprintf (name, PATH_MAX, "/proc/%d/exe", pid);
35 len = readlink (name, buf, PATH_MAX - 1);
36 if (len != -1)
84c5b489 37 {
b4ab256d
HZ
38 buf[len] = '\0';
39 return buf;
84c5b489
MK
40 }
41
b4ab256d 42 return NULL;
84c5b489 43}