sethostname()

Updated: April 19, 2023

Set the name of the current host

Synopsis:

#include <unistd.h>

int sethostname( const char * name, 
                 size_t namelen );

Arguments:

name
The name that you want to use for the host machine. Hostnames are limited to MAXHOSTNAMELEN characters (defined in <sys/param.h>).
namelen
The length of the name.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The sethostname() function sets the name of the host machine to be name. Only the superuser can call this function; this is normally done only at boot time.

Note: This function sets the value of the _CS_HOSTNAME configuration string, not that of the HOSTNAME environment variable.

Returns:

0
Success.
-1
An error occurred (errno is set).

Errors:

EFAULT
Either name or namelen gave an invalid address.
EPERM
Although the caller wasn't the superuser, it tried to set the hostname.

Classification:

Unix

Safety:  
Cancellation point Yes
Interrupt handler No
Signal handler Yes
Thread Yes

Caveats:

This function is restricted to the superuser, and is normally used only at boot time.