RGET(2)

NAME
rget, rforget - Find tagged storage on a LAM remote node.

SYNOPSIS
char *rget (int node, int tag);
char *rforget (int node, int tag);

DESCRIPTION
The flat storage service allows data to be loaded onto a remote node, stored in a remote file, and assigned a reference tag by the client. The client can then send the tag to any process on the remote node and that process can convert the tag locally, using either rget() or rforget(), to the stored filename. The flat storage service has two important purposes. It allows remote servers to remain stateless vis-a-vis incoming message packets when a large dataset or file need to be transferred to the server (e.g. loading and running a program). There is no load on the buffers and no chance of memory deadlock. Secondly, in multicast operations, it gives the client the power to refer to remote storage by the same tag value on several nodes. Thus, one message containing a tag value can be efficiently multicasted.

The tag is preserved by rget() but removed by rforget(). The latter function should be used if the tag will not be used again, to avoid overflow of the associated tables.

RETURN VALUE
Upon successful completion, the actual filename of the remote storage is returned. If an error occurred, -1 is returned and the global variable errno is set to indicate the error.

ERRORS

EBADTAG
    The tag is unknown.

SEE ALSO
rflat(2), rload(2)