Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
WS_REQUEST_KEY(3)	   libdill Library Functions	     WS_REQUEST_KEY(3)

NAME
       ws_request_key -	generates an unique value for Sec-WebSocket-Key	field

SYNOPSIS
	      #include <libdill.h>

	      int ws_request_key(
		  char*	request_key);

DESCRIPTION
       WARNING:	 This  is experimental functionality and the API may change in
       the future.

       WebSocket is a message-based protocol defined in	RFC 6455.  It  can  be
       used  as	a bidirectional	communication channel for communication	with a
       web server.

       This is a helper	function that can be used when	doing  a  custom  HTTP
       handshake  for  the WebSocket protocol (see WS_NOHTTP flag).  It	gener-
       ates an unique RFC-compliant key	to be filled into Sec-WebSocket-Key of
       the HTTP	request.

       The generated key is null-terminated.

       request_key:  Buffer  to	hold the generated request key.	 It must be at
       least WS_KEY_SIZE bytes long.

       This function is	not available  if  libdill  is	compiled  with	--dis-
       able-sockets option.

RETURN VALUE
       In case of success the function returns 0.  In case of error it returns
       -1 and sets errno to one	of the values below.

ERRORS
       o EINVAL: Invalid argument.

EXAMPLE
	      char request_key[WS_KEY_SIZE];
	      ws_request_key(request_key);
	      http_sendfield(s,	"Sec-WebSocket-Key", request_key, -1);

SEE ALSO
       mrecv(3)	 mrecvl(3)  msend(3)  msendl(3)	  ws_attach_client(3)	ws_at-
       tach_client_mem(3)  ws_attach_server(3)	ws_attach_server_mem(3)	ws_de-
       tach(3) ws_done(3) ws_recv(3) ws_recvl(3) ws_response_key(3) ws_send(3)
       ws_sendl(3) ws_status(3)

libdill							     WS_REQUEST_KEY(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | EXAMPLE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ws_request_key&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help