9330 stack overflow when creating a deeply nested dataset
[unleashed.git] / usr / src / man / man3nsl / nlsgetcall.3nsl
blobdd199d56d9b007d297fc9f66b8a3d59f7ee4bec5
1 '\" te
2 .\"  Copyright 1989 AT&T  Copyright (c) 2002, 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 NLSGETCALL 3NSL "Nov 14, 2002"
7 .SH NAME
8 nlsgetcall \- get client's data passed via the listener
9 .SH SYNOPSIS
10 .LP
11 .nf
12 #include <sys/tiuser.h>
16 \fBstruct t_call *\fR\fBnlsgetcall\fR(\fBint\fR \fIfildes\fR);
17 .fi
19 .SH DESCRIPTION
20 .sp
21 .LP
22 \fBnlsgetcall()\fR allows server processes started by the listener process to
23 access the client's \fBt_call\fR structure, that is, the \fIsndcall\fR argument
24 of \fBt_connect\fR(3NSL).
25 .sp
26 .LP
27 The \fBt_call\fR structure returned by \fBnlsgetcall()\fR can be released using
28 \fBt_free\fR(3NSL).
29 .sp
30 .LP
31 \fBnlsgetcall()\fR returns the address of an allocated \fBt_call\fR structure
32 or NULL if a \fBt_call\fR structure cannot be allocated. If the \fBt_alloc()\fR
33 succeeds, undefined environment variables are indicated by a negative \fIlen\fR
34 field in the appropriate \fBnetbuf\fR structure.   A \fIlen\fR field of zero in
35 the \fBnetbuf\fR structure is valid and means that the original buffer in the
36 listener's \fBt_call\fR structure was NULL.
37 .SH RETURN VALUES
38 .sp
39 .LP
40 A NULL pointer is returned if a \fBt_call\fR structure cannot be allocated by
41 \fBt_alloc()\fR. \fBt_errno\fR can be inspected for further error information.
42 Undefined environment variables are indicated by a negative length field
43 (\fIlen\fR) in the appropriate \fBnetbuf\fR structure.
44 .SH FILES
45 .sp
46 .ne 2
47 .na
48 \fB\fB/usr/lib/libnls.so.1\fR\fR
49 .ad
50 .RS 24n
51 shared object
52 .RE
54 .SH ATTRIBUTES
55 .sp
56 .LP
57 See \fBattributes\fR(5) for descriptions of the following attributes:
58 .sp
60 .sp
61 .TS
62 box;
63 c | c
64 l | l .
65 ATTRIBUTE TYPE  ATTRIBUTE VALUE
67 MT-Level        Unsafe
68 .TE
70 .SH SEE ALSO
71 .sp
72 .LP
73 \fBnlsadmin\fR(1M), \fBgetenv\fR(3C), \fBt_alloc\fR(3NSL),
74 \fBt_connect\fR(3NSL), \fBt_error\fR(3NSL), \fBt_free\fR(3NSL),
75 \fBt_sync\fR(3NSL), \fBattributes\fR(5)
76 .SH WARNINGS
77 .sp
78 .LP
79 The \fIlen\fR field in the \fBnetbuf\fR structure is defined as being unsigned.
80 In order to check for error returns, it should first be cast to an int.
81 .sp
82 .LP
83 The listener process limits the amount of user data (\fIudata\fR) and options
84 data (\fIopt\fR) to 128 bytes each.   Address data \fIaddr\fR is limited to 64
85 bytes. If the original data was longer,  no indication of overflow is given.
86 .SH NOTES
87 .sp
88 .LP
89 Server processes must call \fBt_sync\fR(3NSL) before calling this routine.
90 .sp
91 .LP
92 This interface is unsafe in multithreaded applications.  Unsafe interfaces
93 should be called only from the main thread.