PreviousNext

rpc_ss_bind_authn_client(3rpc)

Authenticates a client's identity to a server from a client stub

Synopsis

#include <rpc.h>

void rpc_ss_bind_authn_client(

rpc_binding_handle_t *binding,

if_handle_t if_handle,

error_status_t *status);

Parameters

Input/Output

binding
A pointer to the server binding handle for the remote procedure call to which the routine will add authentication and authorization context.

Input

if_handle
A stub-generated data structure that specifies the interface of interest. The routine can use this parameter to resolve a partial binding or to distinguish between interfaces.

Output

status
Returns the status code from this routine. This status code indicates whether the routine completed successfully or, if not, why not.

Description
The rpc_ss_bind_authn_client( ) routine is a DCE-supplied binding callout routine for use with the binding_callout ACF interface attribute.

The binding_callout attribute enables applications to specify the name of a routine that the client stub will call automatically to modify a server binding handle with additional information before it initiates a remote procedure call. This attribute is especially useful for applications using the automatic binding method, where it is the client stub that obtains the binding handle, rather than the application code. The binding_callout attribute provides these applications with a way to gain access to a server binding handle from the client stub, since the handle is not accessible from the application code.

Applications can specify rpc_ss_bind_authn_client( ) to the binding_callout ACF interface attribute in order to authenticate the client's identity to a server from the client stub before the remote procedure call to the server is initiated. This routine performs one-way authentication: the client does not care which server principal receives the remote procedure call request, but the server verifies that the client is who the client claims to be.

The routine sets the protection level used, the authentication identity, and the authentication service used to their default values; see rpc_binding_set_auth_info(3rpc) for more information on these default values. It sets the authorization service to perform authorization based on the client's principal name.

Applications can also specify user-written binding callout routines with the binding_callout attribute to modify server binding handles from client stubs with other types of information. See the OSF DCE Application Development Guide - Core Components for more information on using the binding_callout ACF attribute.

Return Values
None.

Errors

The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.

error_status_ok
Success.

rpc_s_no_more_bindings
Directs the client stub not to look for another server binding.

Related Information
Functions: rpc_binding_set_auth_info(3rpc)

rpc_ep_resolve_binding(3rpc)

rpc_mgmt_inq_server_princ_name(3rpc)

Books:

OSF DCE Application Development Guide - Introduction and Style Guide

OSF DCE Application Development Guide - Core Components