rpc.h | rpc.h | |||
---|---|---|---|---|
skipping to change at line 63 | skipping to change at line 63 | |||
#include <rpc/auth_unix.h> /* protocol for unix style cred */ | #include <rpc/auth_unix.h> /* protocol for unix style cred */ | |||
#ifdef HAVE_AUTHDES | #ifdef HAVE_AUTHDES | |||
/* | /* | |||
* Uncomment-out the next line if you are building the rpc library with | * Uncomment-out the next line if you are building the rpc library with | |||
* DES Authentication (see the README file in the secure_rpc/ directory). | * DES Authentication (see the README file in the secure_rpc/ directory). | |||
*/ | */ | |||
#include <rpc/auth_des.h> /* protocol for des style cred */ | #include <rpc/auth_des.h> /* protocol for des style cred */ | |||
#endif /* HAVE_AUTHDES */ | #endif /* HAVE_AUTHDES */ | |||
#ifdef HAVE_RPCSEC_GSS | ||||
#include <rpc/auth_gss.h> /* RPCSEC_GSS */ | ||||
#endif | ||||
/* Server side only remote procedure callee */ | /* Server side only remote procedure callee */ | |||
#include <rpc/svc_auth.h> /* service side authenticator */ | #include <rpc/svc_auth.h> /* service side authenticator */ | |||
#include <rpc/svc.h> /* service manager and multiplexer */ | #include <rpc/svc.h> /* service manager and multiplexer */ | |||
/* Portmapper client, server, and protocol headers */ | /* Portmapper client, server, and protocol headers */ | |||
#include <rpc/pmap_clnt.h> | #include <rpc/pmap_clnt.h> | |||
#include <rpc/pmap_prot.h> | #include <rpc/pmap_prot.h> | |||
#ifndef _KERNEL | #ifndef _KERNEL | |||
#include <rpc/rpcb_clnt.h> /* rpcbind interface functions */ | #include <rpc/rpcb_clnt.h> /* rpcbind interface functions */ | |||
End of changes. 1 change blocks. | ||||
4 lines changed or deleted | 0 lines changed or added | |||
rpcsec_gss.h | rpcsec_gss.h | |||
---|---|---|---|---|
skipping to change at line 32 | skipping to change at line 32 | |||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | |||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF T HE | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF T HE | |||
* POSSIBILITY OF SUCH DAMAGE. | * POSSIBILITY OF SUCH DAMAGE. | |||
*/ | */ | |||
#ifndef _TIRPC_RPCSEC_GSS_H | #ifndef _TIRPC_RPCSEC_GSS_H | |||
#define _TIRPC_RPCSEC_GSS_H | #define _TIRPC_RPCSEC_GSS_H | |||
#include <sys/cdefs.h> | ||||
#include <sys/types.h> | #include <sys/types.h> | |||
#include <rpc/auth.h> | #include <rpc/auth.h> | |||
#include <rpc/clnt.h> | #include <rpc/clnt.h> | |||
#include <gssapi/gssapi.h> | #include <gssapi/gssapi.h> | |||
typedef enum { | typedef enum { | |||
rpcsec_gss_svc_default = 0, | rpcsec_gss_svc_default = 0, | |||
rpcsec_gss_svc_none = 1, | rpcsec_gss_svc_none = 1, | |||
skipping to change at line 109 | skipping to change at line 108 | |||
typedef struct { | typedef struct { | |||
int rpc_gss_error; | int rpc_gss_error; | |||
int system_error; | int system_error; | |||
} rpc_gss_error_t; | } rpc_gss_error_t; | |||
#define RPC_GSS_ER_SUCCESS 0 | #define RPC_GSS_ER_SUCCESS 0 | |||
#define RPC_GSS_ER_SYSTEMERROR 1 | #define RPC_GSS_ER_SYSTEMERROR 1 | |||
typedef gss_OID_desc rpc_gss_OID_desc; | typedef gss_OID_desc rpc_gss_OID_desc; | |||
typedef rpc_gss_OID_desc *rpc_gss_OID; | typedef rpc_gss_OID_desc *rpc_gss_OID; | |||
__BEGIN_DECLS | #ifdef __cplusplus | |||
extern "C" { | ||||
#endif | ||||
AUTH *rpc_gss_seccreate(CLIENT *, char *, char *, rpc_gss_service_t, | AUTH *rpc_gss_seccreate(CLIENT *, char *, char *, rpc_gss_service_t, | |||
char *, rpc_gss_options_req_t *, | char *, rpc_gss_options_req_t *, | |||
rpc_gss_options_ret_t *); | rpc_gss_options_ret_t *); | |||
bool_t rpc_gss_set_defaults(AUTH *, rpc_gss_service_t, char *); | bool_t rpc_gss_set_defaults(AUTH *, rpc_gss_service_t, char *); | |||
int rpc_gss_max_data_length(AUTH *, int); | int rpc_gss_max_data_length(AUTH *, int); | |||
int rpc_gss_svc_max_data_length(struct svc_req *, int); | int rpc_gss_svc_max_data_length(struct svc_req *, int); | |||
bool_t rpc_gss_set_svc_name(char *, char *, u_int, u_int, u_int); | bool_t rpc_gss_set_svc_name(char *, char *, u_int, u_int, u_int); | |||
bool_t rpc_gss_getcred(struct svc_req *, rpc_gss_rawcred_t **, | bool_t rpc_gss_getcred(struct svc_req *, rpc_gss_rawcred_t **, | |||
rpc_gss_ucred_t **, void **); | rpc_gss_ucred_t **, void **); | |||
bool_t rpc_gss_set_callback(rpc_gss_callback_t *); | bool_t rpc_gss_set_callback(rpc_gss_callback_t *); | |||
bool_t rpc_gss_get_principal_name(rpc_gss_principal_t *, char *, | bool_t rpc_gss_get_principal_name(rpc_gss_principal_t *, char *, | |||
char *, char *, char *); | char *, char *, char *); | |||
void rpc_gss_get_error(rpc_gss_error_t *); | void rpc_gss_get_error(rpc_gss_error_t *); | |||
char **rpc_gss_get_mechanisms(void); | char **rpc_gss_get_mechanisms(void); | |||
char **rpc_gss_get_mech_info(char *, rpc_gss_service_t *); | char **rpc_gss_get_mech_info(char *, rpc_gss_service_t *); | |||
bool_t rpc_gss_get_versions(u_int *, u_int *); | bool_t rpc_gss_get_versions(u_int *, u_int *); | |||
bool_t rpc_gss_is_installed(char *); | bool_t rpc_gss_is_installed(char *); | |||
bool_t rpc_gss_mech_to_oid(char *, rpc_gss_OID *); | bool_t rpc_gss_mech_to_oid(char *, rpc_gss_OID *); | |||
bool_t rpc_gss_qop_to_num(char *, char *, u_int *); | bool_t rpc_gss_qop_to_num(char *, char *, u_int *); | |||
__END_DECLS | ||||
#ifdef __cplusplus | ||||
} | ||||
#endif | ||||
#endif /* !_TIRPC_RPCSEC_GSS_H */ | #endif /* !_TIRPC_RPCSEC_GSS_H */ | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 8 lines changed or added | |||
svc_auth.h | svc_auth.h | |||
---|---|---|---|---|
skipping to change at line 44 | skipping to change at line 44 | |||
/* | /* | |||
* svc_auth.h, Service side of rpc authentication. | * svc_auth.h, Service side of rpc authentication. | |||
* | * | |||
* Copyright (C) 1984, Sun Microsystems, Inc. | * Copyright (C) 1984, Sun Microsystems, Inc. | |||
*/ | */ | |||
#ifndef _RPC_SVC_AUTH_H | #ifndef _RPC_SVC_AUTH_H | |||
#define _RPC_SVC_AUTH_H | #define _RPC_SVC_AUTH_H | |||
#include <rpc/rpcsec_gss.h> | ||||
typedef struct { | ||||
bool_t established; | ||||
rpc_gss_service_t service; | ||||
u_int qop_rcvd; | ||||
void *context; | ||||
u_int seq_num; | ||||
} svc_rpc_gss_parms_t; | ||||
/* | /* | |||
* Interface to server-side authentication flavors. | * Interface to server-side authentication flavors. | |||
*/ | */ | |||
typedef struct SVCAUTH { | typedef struct SVCAUTH { | |||
struct svc_auth_ops { | struct svc_auth_ops { | |||
int (*svc_ah_wrap)(struct SVCAUTH *, XDR *, xdrproc_t, | int (*svc_ah_wrap)(struct SVCAUTH *, XDR *, xdrproc_t, | |||
caddr_t); | caddr_t); | |||
int (*svc_ah_unwrap)(struct SVCAUTH *, XDR *, xdrproc_t, | int (*svc_ah_unwrap)(struct SVCAUTH *, XDR *, xdrproc_t, | |||
caddr_t); | caddr_t); | |||
int (*svc_ah_destroy)(struct SVCAUTH *); | int (*svc_ah_destroy)(struct SVCAUTH *); | |||
} *svc_ah_ops; | } *svc_ah_ops; | |||
caddr_t svc_ah_private; | caddr_t svc_ah_private; | |||
svc_rpc_gss_parms_t svc_gss_params; | ||||
rpc_gss_rawcred_t raw_cred; | ||||
} SVCAUTH; | } SVCAUTH; | |||
#define SVCAUTH_WRAP(auth, xdrs, xfunc, xwhere) \ | #define SVCAUTH_WRAP(auth, xdrs, xfunc, xwhere) \ | |||
((*((auth)->svc_ah_ops->svc_ah_wrap))(auth, xdrs, xfunc, xwhere)) | ((*((auth)->svc_ah_ops->svc_ah_wrap))(auth, xdrs, xfunc, xwhere)) | |||
#define SVCAUTH_UNWRAP(auth, xdrs, xfunc, xwhere) \ | #define SVCAUTH_UNWRAP(auth, xdrs, xfunc, xwhere) \ | |||
((*((auth)->svc_ah_ops->svc_ah_unwrap))(auth, xdrs, xfunc, xwhere)) | ((*((auth)->svc_ah_ops->svc_ah_unwrap))(auth, xdrs, xfunc, xwhere)) | |||
#define SVCAUTH_DESTROY(auth) \ | #define SVCAUTH_DESTROY(auth) \ | |||
((*((auth)->svc_ah_ops->svc_ah_destroy))(auth)) | ((*((auth)->svc_ah_ops->svc_ah_destroy))(auth)) | |||
/* | /* | |||
End of changes. 2 change blocks. | ||||
12 lines changed or deleted | 0 lines changed or added | |||