示例#1
0
文件: io_gfsl.c 项目: ddk50/gfarm_v2
/* free resources which were allocated by gfp_xdr_set_secsession() */
void
gfp_xdr_reset_secsession(struct gfp_xdr *conn)
{
	struct io_gfsl *io = gfp_xdr_cookie(conn);

	if (io != NULL)
		free_secsession(io);
	gfp_xdr_set(conn, &gfp_xdr_secsession_iobuffer_ops, NULL, -1);
}
示例#2
0
gfarm_error_t
gfp_xdr_set_secsession(struct gfp_xdr *conn,
	gfarmSecSession *secsession, gss_cred_id_t cred_to_be_freed)
{
	struct io_gfsl *io;

	GFARM_MALLOC(io);
	if (io == NULL)
		return (GFARM_ERR_NO_MEMORY);
	io->session = secsession;
	io->cred_to_be_freed = cred_to_be_freed;
	io->exported_credential = NULL;
	io->buffer = NULL;
	io->p = io->residual = 0;
	gfp_xdr_set(conn, &gfp_xdr_secsession_iobuffer_ops,
	    io, secsession->fd);
	return (GFARM_ERR_NO_ERROR);
}
示例#3
0
文件: io_gfsl.c 项目: ddk50/gfarm_v2
gfarm_error_t
gfp_xdr_set_secsession(struct gfp_xdr *conn,
	gfarmSecSession *secsession, gss_cred_id_t cred_to_be_freed)
{
	struct io_gfsl *io;

	GFARM_MALLOC(io);
	if (io == NULL) {
		gflog_debug(GFARM_MSG_1001480,
			"allocation of 'io_gfsl' failed: %s",
			gfarm_error_string(GFARM_ERR_NO_MEMORY));
		return (GFARM_ERR_NO_MEMORY);
	}
	io->session = secsession;
	io->cred_to_be_freed = cred_to_be_freed;
	io->exported_credential = NULL;
	io->buffer = NULL;
	io->p = io->residual = 0;
	gfp_xdr_set(conn, &gfp_xdr_secsession_iobuffer_ops,
	    io, secsession->fd);
	return (GFARM_ERR_NO_ERROR);
}
示例#4
0
文件: io_gfsl.c 项目: ddk50/gfarm_v2
void
gfp_xdr_downgrade_to_insecure_session(struct gfp_xdr *conn)
{
	gfp_xdr_set(conn, &gfp_xdr_insecure_gsi_session_iobuffer_ops,
	    gfp_xdr_cookie(conn), gfp_xdr_fd(conn));
}