SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG
DONATE


YUM REPOSITORY

 
 

MAN page from PCLinuxOS lib64tirpc-devel-1.0.1-1pclos2017.x86_64.rpm

RPC_GSS_SECCREATE

Section: C Library Functions (3)
Index
BSD mandoc
 

NAME

RPCSEC_GSS - GSS-API based authentication for RPC 

SYNOPSIS

In rpc/rpcsec_gss.h 

DESCRIPTION

is a security mechanism for the RPC protocol.It uses the Generic Security Service API (GSS-API) to establish asecurity context between a client and a server and to ensure that allsubsequent communication between client and server are properlyauthenticated.Optionally, extra protection can be applied to the connection.The integrity service uses checksums to ensure that all data sent bya peer is received without modification.The privacy service uses encryption to ensure that no third party canaccess the data for a connection.

To use this system, an application must first useFn rpc_gss_seccreateto establish a security context. 

DATA STRUCTURES

Data structures used byappear below.

Vt rpc_gss_service_t
This type defines the types of security service required forFn rpc_gss_seccreate .
typedef enum {        rpc_gss_svc_default     = 0,        rpc_gss_svc_none        = 1,        rpc_gss_svc_integrity   = 2,        rpc_gss_svc_privacy     = 3} rpc_gss_service_t;
Vt rpc_gss_options_ret_t
This structure contains various optional values which are used whilecreating a security context.
typedef struct {        int             req_flags;      /* GSS request bits */        int             time_req;       /* requested lifetime */        gss_cred_id_t   my_cred;        /* GSS credential */        gss_channel_bindings_t input_channel_bindings;} rpc_gss_options_req_t;
Vt rpc_gss_options_ret_t
Various details of the created security context are returned usingthis structure.
typedef struct {        int             major_status;        int             minor_status;        u_int           rpcsec_version;        int             ret_flags;        int             time_req;        gss_ctx_id_t    gss_context;        char            actual_mechanism[MAX_GSS_MECH];} rpc_gss_options_ret_t;
Vt rpc_gss_principal_t
This type is used to refer to an client principal which is representedin GSS-API exported name form(seegss_export_name3for more details).Names in this format may be stored in access control lists or comparedwith other names in exported name form.This structure is returned byFn rpc_gss_get_principal_nameand is also referenced by theVt rpc_gss_rawcred_tstructure.
typedef struct {        int             len;        char            name[1];} *rpc_gss_principal_t;
Vt rpc_gss_rawcred_t
This structure is used to access the raw credentials associated with asecurity context.
typedef struct {        u_int           version;        /* RPC version number */        const char      *mechanism;     /* security mechanism */        const char      *qop;           /* quality of protection */        rpc_gss_principal_t client_principal; /* client name */        const char      *svc_principal; /* server name */        rpc_gss_service_t service;      /* service type */} rpc_gss_rawcred_t;
Vt rpc_gss_ucred_t
Unix credentials which are derived form the raw credentials,accessed viaFn rpc_gss_getcred .
typedef struct {        uid_t           uid;            /* user ID */        gid_t           gid;            /* group ID */        short           gidlen;        gid_t           *gidlist;       /* list of groups */} rpc_gss_ucred_t;
Vt rpc_gss_lock_t
Structure used to enforce a particular QOP and service.
typedef struct {        bool_t          locked;        rpc_gss_rawcred_t *raw_cred;} rpc_gss_lock_t;
Vt rpc_gss_callback_t
Callback structure used byFn rpc_gss_set_callback .
typedef struct {        u_int           program;        /* RPC program number */        u_int           version;        /* RPC version number */                                        /* user defined callback */        bool_t          (*callback)(struct svc_req *req,                                    gss_cred_id_t deleg,                                    gss_ctx_id_t gss_context,                                    rpc_gss_lock_t *lock,                                    void **cookie);} rpc_gss_callback_t;
Vt rpc_gss_error_t
Structure used to return error information byFn rpc_gss_get_error .
typedef struct {        int             rpc_gss_error;        int             system_error;   /* same as errno */} rpc_gss_error_t;/* * Values for rpc_gss_error */#define RPC_GSS_ER_SUCCESS      0       /* no error */#define RPC_GSS_ER_SYSTEMERROR  1       /* system error */

 

INDEX

rpc_gss_seccreate3
Create a new security context
rpc_gss_set_defaults3
Set service and quality of protection for a context
rpc_gss_max_data_length3
Calculate maximum client message sizes.
rpc_gss_get_error3
Get details of the last error
rpc_gss_mech_to_oid3
Convert a mechanism name to the corresponding GSS-API oid.
rpc_gss_oid_to_mech3
Convert a GSS-API oid to a mechanism name
rpc_gss_qop_to_num3
Convert a quality of protection name to the corresponding number
rpc_gss_get_mechanisms3
Get a list of security mechanisms.
rpc_gss_get_mech_info3
Return extra information about a security mechanism
rpc_gss_get_versions3
Return the maximum and minimum supported versions of theprotocol
rpc_gss_is_installed3
Query for the presence of a particular security mechanism
rpc_gss_set_svc_name3
Set the name of a service principal which matches a given RPC programplus version pair
rpc_gss_getcred3
Get credential details for the security context of an RPC request
rpc_gss_set_callback3
Install a callback routine which is called on the server when newsecurity contexts are created
rpc_gss_get_principal_name3
Create a client principal name from various strings
rpc_gss_svc_max_data_length3
Calculate maximum server message sizes.

 

AVAILABILITY

These functions are part of libtirpc. 

SEE ALSO

rpc(3),gssapi(3) 

AUTHORS

Thismanual page was written byAn Doug Rabson Aq dfrAATTFreeBSD.org .


 

Index

NAME
SYNOPSIS
DESCRIPTION
DATA STRUCTURES
INDEX
AVAILABILITY
SEE ALSO
AUTHORS

This document was created byman2html,using the manual pages.