Winsock2 (JNA API)
Description: declaration: package: com.sun.jna.platform.win32, interface: Winsock2

Package com.sun.jna.platform.win32

# Interface Winsock2

All Superinterfaces:
  `Library`

public interface Winsock2 extends Library

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface com.sun.jna.Library

  `Library.Handler`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Winsock2`
  `INSTANCE`

  ### Fields inherited from interface com.sun.jna.Library

  `OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_SYMBOL_PROVIDER, OPTION_TYPE_MAPPER`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `gethostname(byte[] name, int namelen)`
  The gethostname function retrieves the standard host name for the local computer.

- ## Field Details

  - ### INSTANCE

    static final Winsock2 INSTANCE

- ## Method Details

  - ### gethostname

    int gethostname(byte[] name, int namelen)
    The gethostname function retrieves the standard host name for the local computer.

    Remarks

    The gethostname function returns the name of the local host into the buffer specified by the name parameter. The host name is returned as a null-terminated string. The form of the host name is dependent on the Windows Sockets provider—it can be a simple host name, or it can be a fully qualified domain name. However, it is guaranteed that the name returned will be successfully parsed by gethostbyname and WSAAsyncGetHostByName.

    The maximum length of the name returned in the buffer pointed to by the name parameter is dependent on the namespace provider.

    If the gethostname function is used on a cluster resource on Windows Server 2008, Windows Server 2003, or Windows 2000 Server and the _CLUSTER_NETWORK_NAME_ environment variable is defined, then the value in this environment variable overrides the actual hostname and is returned. On a cluster resource, the _CLUSTER_NETWORK_NAME_ environment variable contains the name of the cluster.

    The gethostname function queries namespace providers to determine the local host name using the SVCID_HOSTNAME GUID defined in the Svgguid.h header file. If no namespace provider responds, then the gethostname function returns the NetBIOS name of the local computer.

    The maximum length, in bytes, of the string returned in the buffer pointed to by the name parameter is dependent on the namespace provider, but this string must be 256 bytes or less. So if a buffer of 256 bytes is passed in the name parameter and the namelen parameter is set to 256, the buffer size will always be adequate.

    Parameters:
      `name` - A bytearray that receives the local host name.
      `namelen` - The length, in bytes, of the buffer pointed to by the name parameter.
    Returns:
      If no error occurs, gethostname returns zero. Otherwise, it returns SOCKET_ERROR and a specific error code can be retrieved by calling WSAGetLastError.