RPC_GSS_SECCREATE - Online Linux Manual Page

Section : 3
Updated : January 26, 2010

NAME RPCSEC_GSS GSS-API based authentication for RPC

SYNOPSIS #include <rpc/rpcsec_gss.h>

DESCRIPTION RPCSEC_GSS is a security mechanism for the RPC protocol. It uses the Generic Security Service API (GSS-API) to establish a security context between a client and a server and to ensure that all subsequent communication between client and server are properly authenticated. Optionally, extra protection can be applied to the connection. The integrity service uses checksums to ensure that all data sent by a peer is received without modification. The privacy service uses encryption to ensure that no third party can access the data for a connection. To use this system, an application must first use rpc_gss_seccreate() to establish a security context.

DATA STRUCTURESData structures used by RPCSEC_GSS appear below. Vt rpc_gss_service_t  This type defines the types of security service required for 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 while creating 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 using this 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 represented in GSS-API exported name form (see gss_export_name(3) for more details). Names in this format may be stored in access control lists or compared with other names in exported name form. This structure is returned by rpc_gss_get_principal_name() and is also referenced by the rpc_gss_rawcred_t structure. 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 a security 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 via 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 by 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 by 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_seccreate 3Create a new security context rpc_gss_set_defaults 3Set service and quality of protection for a context rpc_gss_max_data_length 3Calculate maximum client message sizes. rpc_gss_get_error 3Get details of the last error rpc_gss_mech_to_oid 3Convert a mechanism name to the corresponding GSS-API oid. Xr rpc_gss_oid_to_mech 3  Convert a GSS-API oid to a mechanism name rpc_gss_qop_to_num 3Convert a quality of protection name to the corresponding number rpc_gss_get_mechanisms 3Get a list of security mechanisms. rpc_gss_get_mech_info 3Return extra information about a security mechanism rpc_gss_get_versions 3Return the maximum and minimum supported versions of the RPCSEC_GSS protocol rpc_gss_is_installed 3Query for the presence of a particular security mechanism rpc_gss_set_svc_name 3Set the name of a service principal which matches a given RPC program plus version pair rpc_gss_getcred 3Get credential details for the security context of an RPC request rpc_gss_set_callback 3Install a callback routine which is called on the server when new security contexts are created rpc_gss_get_principal_name 3Create a client principal name from various strings rpc_gss_svc_max_data_length 3Calculate maximum server message sizes.

AVAILABILITYThese functions are part of libtirpc.

SEE ALSOrpc(3), gssapi(3)

AUTHORSThis manual page was written by Doug Rabson dfr@FreeBSD.org.
0
Johanes Gumabo
Data Size   :   17,263 byte
man-rpcsec_gss.3tBuild   :   2025-03-22, 13:26   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   28 / 2,324,809
Visitor ID   :     :  
Visitor IP   :   216.73.216.66   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   20   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 25.03.22
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36


Very long time ago, I have the best tutor, Wenzel Svojanovsky. If someone knows the email address of Wenzel Svojanovsky, please send an email to johanesgumabo@gmail.com.
Help me, linux0001.com will expire on July 16, 2025. I have no money to renew it. View detail

If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.

ERROR : Need New Coding :         (mdoc_err|80|rpcsec_gss.3t|56|Vt|.It Vt rpc_gss_service_t )         (mdoc_err|80|rpcsec_gss.3t|56|Vt|.It Vt rpc_gss_service_t )         (mdoc_err|80|rpcsec_gss.3t|67|Vt|.It Vt rpc_gss_options_ret_t )         (mdoc_err|80|rpcsec_gss.3t|67|Vt|.It Vt rpc_gss_options_ret_t )         (mdoc_err|80|rpcsec_gss.3t|78|Vt|.It Vt rpc_gss_options_ret_t )         (mdoc_err|80|rpcsec_gss.3t|78|Vt|.It Vt rpc_gss_options_ret_t )         (mdoc_err|80|rpcsec_gss.3t|92|Vt|.It Vt rpc_gss_principal_t )         (mdoc_err|80|rpcsec_gss.3t|92|Vt|.It Vt rpc_gss_principal_t )         (mdoc_err|80|rpcsec_gss.3t|111|Vt|.It Vt rpc_gss_rawcred_t )         (mdoc_err|80|rpcsec_gss.3t|111|Vt|.It Vt rpc_gss_rawcred_t )         (mdoc_err|80|rpcsec_gss.3t|124|Vt|.It Vt rpc_gss_ucred_t )         (mdoc_err|80|rpcsec_gss.3t|124|Vt|.It Vt rpc_gss_ucred_t )         (mdoc_err|80|rpcsec_gss.3t|136|Vt|.It Vt rpc_gss_lock_t )         (mdoc_err|80|rpcsec_gss.3t|136|Vt|.It Vt rpc_gss_lock_t )         (mdoc_err|80|rpcsec_gss.3t|144|Vt|.It Vt rpc_gss_callback_t )         (mdoc_err|80|rpcsec_gss.3t|144|Vt|.It Vt rpc_gss_callback_t )         (mdoc_err|80|rpcsec_gss.3t|159|Vt|.It Vt rpc_gss_error_t )         (mdoc_err|80|rpcsec_gss.3t|159|Vt|.It Vt rpc_gss_error_t )         (mdoc_err|80|rpcsec_gss.3t|187|Xr|.It Xr rpc_gss_oid_to_mech 3 )