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

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/