xref: /openbsd-src/lib/libc/gen/getdomainname.3 (revision b2ea75c1b17e1a9a339660e7ed45cd24946b230e)
1.\"	$OpenBSD: getdomainname.3,v 1.18 2000/12/24 00:30:48 aaron Exp $
2.\"
3.\" Copyright (c) 1983, 1991, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. All advertising materials mentioning features or use of this software
15.\"    must display the following acknowledgement:
16.\"	This product includes software developed by the University of
17.\"	California, Berkeley and its contributors.
18.\" 4. Neither the name of the University nor the names of its contributors
19.\"    may be used to endorse or promote products derived from this software
20.\"    without specific prior written permission.
21.\"
22.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32.\" SUCH DAMAGE.
33.\"
34.Dd May 6, 1994
35.Dt GETDOMAINNAME 3
36.Os
37.Sh NAME
38.Nm getdomainname ,
39.Nm setdomainname
40.Nd get/set YP domain name of current host
41.Sh SYNOPSIS
42.Fd #include <unistd.h>
43.Ft int
44.Fn getdomainname "char *name" "size_t namelen"
45.Ft int
46.Fn setdomainname "const char *name" "size_t namelen"
47.Sh DESCRIPTION
48The
49.Fn getdomainname
50function returns the YP domain name for the current processor, as
51previously set by
52.Fn setdomainname .
53The parameter
54.Fa namelen
55specifies the size of the
56.Fa name
57array.
58If insufficient space is provided, the returned name is truncated.
59The returned name is always null terminated.
60.Pp
61.Fn setdomainname
62sets the domain name of the host machine to be
63.Fa name ,
64which has length
65.Fa namelen .
66This call is restricted to the superuser and
67is normally used only when the system is bootstrapped.
68.Sh RETURN VALUES
69If the call succeeds a value of 0 is returned.
70If the call fails, a value of \-1 is returned and an error code is
71placed in the global variable
72.Va errno .
73.Sh ERRORS
74The following errors may be returned by these calls:
75.Bl -tag -width Er
76.It Bq Er EFAULT
77The
78.Fa name
79or
80.Fa namelen
81parameter gave an
82invalid address.
83.It Bq Er EPERM
84The caller tried to set the domain name and was not the superuser.
85.El
86.Sh SEE ALSO
87.Xr domainname 1 ,
88.Xr gethostid 3 ,
89.Xr gethostname 3 ,
90.Xr sysctl 3 ,
91.Xr sysctl 8 ,
92.Xr yp 8
93.Sh BUGS
94Domain names are limited to
95.Dv MAXHOSTNAMELEN
96(from
97.Ao Pa sys/param.h Ac )
98characters, currently 256.
99This includes the terminating NUL character.
100.Pp
101If the buffer passed to
102.Fn getdomainname
103is too small, other operating systems may not guarantee termination with NUL.
104.Sh HISTORY
105The
106.Nm
107function call appeared in
108SunOS 3.x.
109