keyring-getmsg man page on Inferno

Man page or keyword search:  
man Server   579 pages
apropos Keyword Search (all sections)
Output format
Inferno logo
[printable version]

KEYRING-GETMSG(2)					     KEYRING-GETMSG(2)

NAME
       keyring:	 getmsg,  sendmsg,  senderrmsg	- send and receive messages on
       undelimited streams

SYNOPSIS
       include "keyring.m";
       keyring := load Keyring Keyring->PATH;

       getmsg:	fn(fd: ref Sys->FD): array of byte;
       sendmsg: fn(fd: ref Sys->FD, buf: array of byte, n: int): int;
       senderrmsg: fn(fd: ref Sys->FD, s: string): int;

DESCRIPTION
       These functions allow arbitrary data, packed into arrays of  bytes,  to
       be exchanged on network connections using connection-oriented transport
       protocols that do not preserve record boundaries	 (eg,  TCP/IP  without
       ssl(3)).	  They are used to implement various authentication protocols,
       including auth(6), as implemented by keyring-auth(2).

       Each data message is transmitted with a five-byte header	 containing  a
       four-character  zero-padded  decimal  count  n terminated by a newline,
       followed by n bytes of message data.  An error message  has  a  similar
       structure,  except that the first character of the count is replaced by
       an exclamation mark (!); the message data following contains the	 diag‐
       nostic string in its UTF-8 encoding (see utf(6)).

       Getmsg reads the next message from fd and returns its data content.

       Sendmsg	sends the first n bytes of buf as a message on fd, and returns
       n.

       Senderrmsg sends the error message s.

SOURCE
       /libinterp/keyring.c

DIAGNOSTICS
       Sendmsg and senderrmsg return -1 if there was an error writing  to  fd;
       they  set  the system error string.  Getmsg returns nil if there was an
       error reading from fd; it sets the system error string to  reflect  the
       cause.  It also returns nil if an error message was received instead of
       a data message; the system error string will  contain  the  error  mes‐
       sage's diagnostic.

							     KEYRING-GETMSG(2)
[top]

List of man pages available for Inferno

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net