Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/cddl/lib/libdtrace/libproc_compat.h
39536 views
1
/*
2
* Copyright (c) 2010 The FreeBSD Foundation
3
* All rights reserved.
4
*
5
* This software was developed by Rui Paulo under sponsorship from the
6
* FreeBSD Foundation.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
* 1. Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* 2. Redistributions in binary form must reproduce the above copyright
14
* notice, this list of conditions and the following disclaimer in the
15
* documentation and/or other materials provided with the distribution.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
18
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
21
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27
* SUCH DAMAGE.
28
*/
29
30
/*
31
* Compatibility functions between Solaris libproc and FreeBSD libproc.
32
* Functions sorted alphabetically.
33
*/
34
#define PR_LMID_EVERY 0
35
#define PGRAB_RDONLY PATTACH_RDONLY
36
#define PGRAB_FORCE PATTACH_FORCE
37
38
#define Psetrun(p, a1, a2) proc_continue((p))
39
#define Pxlookup_by_addr(p, a, n, s, sym, i) \
40
proc_addr2sym(p, a, n, s, sym)
41
#define Pxlookup_by_name(p, l, s1, s2, sym, a) \
42
proc_name2sym(p, s1, s2, sym, a)
43
#define Paddr_to_map proc_addr2map
44
#define Pcreate_error strerror
45
#define Pdelbkpt proc_bkptdel
46
#define Pgrab_error strerror
47
#define Plmid(p, a, l) (-1)
48
#define Plmid_to_map(p, l, o) proc_name2map(p, o)
49
#define Plookup_by_addr proc_addr2sym
50
#define Pname_to_ctf(p, obj) (ctf_file_t *)proc_name2ctf(p, obj)
51
#define Pname_to_map proc_name2map
52
#define Pobject_iter proc_iter_objs
53
#define Pobject_iter_resolved(p, f, arg) proc_iter_objs(p, f, arg)
54
#define Pobjname proc_objname
55
#define Pread proc_read
56
#define Prd_agent proc_rdagent
57
#define Prelease proc_detach
58
#define Psetbkpt proc_bkptset
59
#define Pstate proc_state
60
#define Psymbol_iter_by_addr proc_iter_symbyaddr
61
#define Pupdate_maps proc_rdagent
62
#define Pupdate_syms proc_updatesyms
63
#define Pxecbkpt proc_bkptexec
64
65