YAZ
5.34.0
|
Internal header for GFS. More...
#include <yaz/comstack.h>
#include <yaz/cql.h>
#include <yaz/ccl.h>
#include <yaz/odr.h>
#include <yaz/proto.h>
#include <yaz/backend.h>
#include <yaz/retrieval.h>
#include "eventl.h"
Go to the source code of this file.
Data Structures | |
struct | gfs_server |
struct | gfs_listen |
struct | request |
struct | request_q |
struct | association |
Typedefs | |
typedef struct request | request |
typedef struct request_q | request_q |
typedef struct association | association |
Enumerations | |
enum | request_state { REQUEST_IDLE , REQUEST_PENDING } |
enum | association_state { ASSOC_NEW , ASSOC_UP , ASSOC_DEAD } |
Functions | |
association * | create_association (IOCHAN channel, COMSTACK link, const char *apdufile) |
void | destroy_association (association *h) |
void | ir_session (IOCHAN h, int event) |
void | request_enq (request_q *q, request *r) |
request * | request_head (request_q *q) |
request * | request_deq (request_q *q) |
request * | request_deq_x (request_q *q, request *r) |
void | request_initq (request_q *q) |
void | request_delq (request_q *q) |
request * | request_get (request_q *q) |
void | request_release (request *r) |
int | control_association (association *assoc, const char *host, int force) |
int | ir_read (IOCHAN h, int event) |
Internal header for GFS.
Definition in file session.h.
typedef struct association association |
enum association_state |
enum request_state |
int control_association | ( | association * | assoc, |
const char * | host, | ||
int | force | ||
) |
Definition at line 267 of file statserv.c.
References association::backend, statserv_options_block::bend_close, gfs_server::cb, iochan::chan_id, association::client_chan, association::client_link, statserv_options_block::configname, control_block, cs_set_max_recv_bytes(), gfs_server_chdir(), gfs_server_list, gfs_server::host, association::init, association::last_control, gfs_server::listen_ref, association::maximumRecordSize, statserv_options_block::maxrecordsize, gfs_server::next, association::preferredMessageSize, association::server, statserv_setcontrol(), xfree, statserv_options_block::xml_config, yaz_log(), and YLOG_DEBUG.
Referenced by process_http_request(), and process_initRequest().
association* create_association | ( | IOCHAN | channel, |
COMSTACK | link, | ||
const char * | apdufile | ||
) |
Definition at line 148 of file seshigh.c.
References ASSOC_NEW, association::backend, association::client_chan, association::client_link, association::cs_accept_mask, association::cs_get_mask, cs_getproto, association::cs_put_mask, association::decode, association::encode, get_logbits(), association::incoming, association::init, association::input_buffer, association::input_buffer_len, association::last_control, logbits_set, odr_createmem(), ODR_DECODE, ODR_ENCODE, ODR_PRINT, odr_setprint(), association::outgoing, association::print, association::proto, request_initq(), association::server, association::state, association::version, xmalloc, yaz_log(), yaz_log_file(), YLOG_ERRNO, and YLOG_WARN.
Referenced by inetd_connection(), and new_session().
void destroy_association | ( | association * | h | ) |
Definition at line 207 of file seshigh.c.
References association::backend, statserv_options_block::bend_close, association::decode, association::encode, association::incoming, association::init, association::input_buffer, odr_destroy(), association::outgoing, association::print, request_delq(), request_deq(), request_release(), statserv_getcontrol(), xfree, and xmalloc_trav.
Referenced by ir_read(), and ir_session().
int ir_read | ( | IOCHAN | h, |
int | event | ||
) |
Definition at line 266 of file seshigh.c.
References ASSOC_DEAD, association::client_link, cs_close, cs_errmsg(), cs_errno, cs_get, association::cs_get_mask, cs_more, association::cs_put_mask, CS_WANT_WRITE, CSBUFSIZE, association::decode, destroy_association(), do_close(), do_close_req(), association::encode, odr::error, EVENT_INPUT, EVENT_OUTPUT, request::gdu_request, association::incoming, association::input_buffer, association::input_buffer_len, comstack::io_pending, iochan_destroy, iochan_getdata, iochan_setflag, log_session, odr_dumpBER(), odr_errmsg(), odr_extract_mem(), odr_getelement(), odr_geterror(), odr_offset(), odr_reset(), odr_setbuf(), OHTTP, association::print, process_gdu_response(), request_enq(), request_get(), request::request_mem, request_release(), association::state, yaz_log(), yaz_log_file(), YLOG_DEBUG, YLOG_WARN, Z_Close_protocolError, z_GDU(), and z_get_HTTP_Response().
Referenced by iochan_is_alive(), and ir_session().
void ir_session | ( | IOCHAN | h, |
int | event | ||
) |
Definition at line 365 of file seshigh.c.
References ASSOC_DEAD, ASSOC_UP, association::client_chan, association::client_link, cs_accept, association::cs_accept_mask, cs_close, association::cs_get_mask, cs_put, association::cs_put_mask, CS_WANT_READ, CS_WANT_WRITE, destroy_association(), do_close(), EVENT_EXCEPT, EVENT_INPUT, EVENT_OUTPUT, EVENT_TIMEOUT, association::incoming, comstack::io_pending, iochan_clearflag, iochan_destroy, iochan_getdata, iochan_setevent, iochan_setflag, ir_read(), request::len_response, log_session, log_sessiondetail, association::outgoing, process_gdu_request(), request_deq(), request_head(), REQUEST_IDLE, REQUEST_PENDING, request_release(), request::response, request::state, association::state, yaz_log(), YLOG_DEBUG, YLOG_WARN, and Z_Close_lackOfActivity.
Referenced by inetd_connection(), and new_session().
void request_delq | ( | request_q * | q | ) |
Definition at line 55 of file requestq.c.
References request_q::list, request::next, request::response, and xfree.
Referenced by destroy_association().
Definition at line 36 of file requestq.c.
References request_q::head, request::next, request_q::num, and request_q::tail.
Referenced by destroy_association(), do_close_req(), ir_session(), and process_gdu_response().
Definition at line 21 of file requestq.c.
References request_q::head, request::next, request_q::num, and request_q::tail.
Referenced by ir_read(), and process_gdu_response().
Definition at line 67 of file requestq.c.
References request::apdu_request, request::clientData, request::gdu_request, request::len_response, request_q::list, request::next, request::q, REQUEST_IDLE, request::request_mem, request::response, request::size_response, request::state, and xmalloc.
Referenced by do_close(), and ir_read().
Definition at line 31 of file requestq.c.
References request_q::head.
Referenced by ir_session(), and process_gdu_response().
void request_initq | ( | request_q * | q | ) |
Definition at line 49 of file requestq.c.
References request_q::head, request_q::list, request_q::num, and request_q::tail.
Referenced by create_association().
void request_release | ( | request * | r | ) |
Definition at line 91 of file requestq.c.
References request_q::list, request::next, nmem_destroy(), request::q, and request::request_mem.
Referenced by destroy_association(), do_close_req(), ir_read(), and ir_session().