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