Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(3ncs)

rpc_register(3ncs)

rpc_register_mgr(3ncs)

rpc_unregister(3ncs)

rpc_register_object(3ncs)

Name

rpc_register_object − register an object (server only)

Syntax

#include <idl/c/rpc.h>
 
void rpc_$register_object(object, type, status)

uuid_$t *object;
uuid_$t *type;
status_$t *status;

Arguments

object The UUID of the object being registered. 

type The UUID of the type of the object. 

status The completion status.  If the completion status returned in status.all is equal to status_$ok , then the routine that supplied it was successful. 

Description

The rpc_$register_object routine declares that a server supports operations on a particular object and declares the type of that object.

A server must register objects with rpc_$register_object only if it registers generic interfaces with rpc_$register_mgr. When a server receives a call, the RPC runtime library searches for the object identified in the call (that is the object that the client specified in the handle) among the objects registered by the server. If the object is found, the type of the object determines which of the manager EPVs should be used to operate on the object.

Diagnostics

This section lists status codes for errors returned by this rpc_$ routine in status.all.

rpc_$op_rng_error
The requested operation does not correspond to a valid operation in the requested interface.

rpc_$unk_if The requested interface is not known.  It is not registered in the server, the version number of the registered interface is different from the version number specified in the request, or the UUID in the request does not match the UUID of the registered interface. 

rpc_$too_many_ifs
The maximum number of interfaces is already registered with the RPC runtime library; the server must unregister some interface before it registers an additional interface.

rpc_$not_in_call An internal error. 

rpc_$proto_error An internal protocol error. 

rpc_$illegal_register
You are trying to register an interface that is already registered and you are using an EPV different from the one used when the interface was first registered. An interface can be multiply registered, but you must use the same EPV in each rpc_$register routine.

Files

/usr/include/idl/c/rpc.h
/usr/include/idl/rpc.idl

See Also

intro(3ncs), rpc_register(3ncs), rpc_register_mgr(3ncs), rpc_unregister(3ncs)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026