8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / man / man3c_db / td_ta_new.3c_db
blobd473bc454381dd7892da4243b2fe7e741585c327
1 '\" te
2 .\"  Copyright (c) 1998 Sun Microsystems, Inc.  All Rights Reserved
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH TD_TA_NEW 3C_DB "Oct 20, 1998"
7 .SH NAME
8 td_ta_new, td_ta_delete, td_ta_get_ph \- allocate and deallocate process
9 handles for libc_db
10 .SH SYNOPSIS
11 .LP
12 .nf
13 cc [ \fIflag\fR... ] \fIfile\fR... -lc_db [ \fIlibrary\fR... ]
14 #include <proc_service.h>
15 #include <thread_db.h>
17 \fBtd_err_e\fR \fBtd_ta_new\fR(\fBconst struct ps_prochandle *\fR\fIph_p\fR, \fBtd_thragent_t **\fR\fIta_pp\fR);
18 .fi
20 .LP
21 .nf
22 \fBtd_err_e\fR \fBtd_ta_delete\fR(\fBconst td_thragent_t *\fR\fIta_p\fR);
23 .fi
25 .LP
26 .nf
27 \fBtd_err_e\fR \fBtd_ta_get_ph\fR(\fBconst td_thragent_t *\fR\fIta_p\fR, \fBstruct ps_prochandle **\fR\fIph_pp\fR);
28 .fi
30 .SH DESCRIPTION
31 .sp
32 .LP
33 The \fBtd_ta_new()\fR function registers a target process with
34 \fBlibc_db\fR(3LIB) and allocates an internal process handle of type
35 \fBtd_thragent_t\fR for this target process.  Subsequent calls to \fBlibc_db\fR
36 can use this handle to refer to this target process.
37 .sp
38 .LP
39 There are actually two process handles,  an internal process handle assigned by
40 \fBlibc_db\fR and an external process handle assigned by the \fBlibc_db\fR
41 client. There is a one-to-one correspondence between the two handles.  When the
42 client calls a \fBlibc_db\fR function, it uses the internal process handle.
43 When \fBlibc_db\fR calls one of the client-provided routines listed in
44 \fBproc_service\fR(3PROC), it uses the external process handle.
45 .sp
46 .LP
47 The \fIph\fR argument is the external process handle that \fBlibc_db\fR should
48 use to identify this target process to the controlling process when it calls
49 routines in the imported interface.
50 .sp
51 .LP
52 If this call is successful, the value of the newly allocated
53 \fBtd_thragent_t\fR handle is returned in  *\fIta_pp\fR. The
54 \fBtd_ta_delete()\fR function deregisters a target process with \fBlibc_db\fR,
55 which deallocates its internal process handle and frees any other resources
56 \fBlibc_db\fR has acquired with respect to the target process. The \fIta_p\fR
57 argument specifies the target process to be deregistered.
58 .sp
59 .LP
60 The \fBtd_ta_get_ph()\fR function returns in *\fIph_pp\fR the external process
61 handle that corresponds to the internal process handle \fIta_p\fR. This is
62 useful for checking internal consistency.
63 .SH RETURN VALUES
64 .sp
65 .ne 2
66 .na
67 \fB\fBTD_OK\fR\fR
68 .ad
69 .RS 18n
70 The call completed successfully.
71 .RE
73 .sp
74 .ne 2
75 .na
76 \fB\fBTD_BADPH\fR\fR
77 .ad
78 .RS 18n
79 A \fINULL\fR external process handle was passed to \fBtd_ta_new()\fR.
80 .RE
82 .sp
83 .ne 2
84 .na
85 \fB\fBTD_ERR\fR\fR
86 .ad
87 .RS 18n
88 The \fIta_pp\fR argument is \fINULL\fR or an internal error occurred.
89 .RE
91 .sp
92 .ne 2
93 .na
94 \fB\fBTD_DBERR\fR\fR
95 .ad
96 .RS 18n
97 A call to one of the imported interface routines failed.
98 .RE
101 .ne 2
103 \fB\fBTD_MALLOC\fR\fR
105 .RS 18n
106 Memory allocation failure.
110 .ne 2
112 \fB\fBTD_NOLIBTHREAD\fR\fR
114 .RS 18n
115 The target process does not appear to be multithreaded.
118 .SH ATTRIBUTES
121 See \fBattributes\fR(5) for description of the following attributes:
126 box;
127 c | c
128 l | l .
129 ATTRIBUTE TYPE  ATTRIBUTE VALUE
131 MT-Level        Safe
134 .SH SEE ALSO
137 \fBlibc_db\fR(3LIB), \fBproc_service\fR(3PROC), \fBattributes\fR(5)