Documentation
WASIX
sock_get_opt_flag

sock_get_opt_flag()

Retrieves the status of a particular socket setting.

Description

The sock_get_opt_flag() function retrieves the status of a specific socket option for the given socket descriptor. It is similar to the getsockopt function in POSIX for the SO_REUSEADDR option.

Syntax

  ;;; Note: This is similar to `getsockopt` in POSIX for SO_REUSEADDR
  ;;; Retrieve status of particular socket seting
  (@interface func (export "sock_get_opt_flag")
    ;;; Socket descriptor
    (param $fd $fd)
    ;;; Socket option to be retrieved
    (param $sockopt $sock_option)
    (result $error (expected $bool (error $errno)))
  )

Parameters

  • ctx: A mutable reference to the function environment.
  • sock: The socket descriptor.
  • opt: The socket option to be retrieved.
  • ret_flag: A WebAssembly pointer to store the retrieved flag value.

Return Value

The function returns an Errno value indicating the outcome of the operation. If the operation is successful, Errno::Success is returned. If an error occurs, an appropriate Errno value is returned.

Notes

  • The sock_get_opt_flag() function retrieves the status of a particular socket setting for the specified socket descriptor.
  • The specific socket setting to retrieve is determined by the opt parameter.
  • The retrieved flag value is stored in the memory location pointed to by the ret_flag parameter, which should be a valid WebAssembly pointer to a Bool value.
  • The function is similar to the getsockopt function in POSIX, specifically for retrieving the value of the SO_REUSEADDR option.
  • The retrieved flag value indicates the status of the socket setting. It will be either Bool::True or Bool::False.
  • The behavior and limitations of the sock_get_opt_flag() function may vary depending on the specific runtime environment and underlying networking implementation. It is important to consult the documentation or specifications of the specific environment to understand its behavior in that context.