YAZ  5.34.0
Functions | Variables
zoom-c.c File Reference

Implements ZOOM C interface. More...

#include <assert.h>
#include <string.h>
#include <errno.h>
#include "zoom-p.h"
#include <yaz/yaz-util.h>
#include <yaz/xmalloc.h>
#include <yaz/otherinfo.h>
#include <yaz/log.h>
#include <yaz/diagbib1.h>
#include <yaz/charneg.h>
#include <yaz/query-charset.h>
#include <yaz/snprintf.h>
#include <yaz/facet.h>
#include <yaz/shptr.h>

Go to the source code of this file.

Functions

static void resultset_destroy (ZOOM_resultset r)
 
static zoom_ret do_write_ex (ZOOM_connection c, char *buf_out, int len_out)
 
static void initlog (void)
 
static zoom_ret send_HTTP_redirect (ZOOM_connection c, const char *uri)
 
void ZOOM_set_dset_error (ZOOM_connection c, int error, const char *dset, const char *addinfo, const char *addinfo2)
 
int ZOOM_uri_to_code (const char *uri)
 
void ZOOM_set_error (ZOOM_connection c, int error, const char *addinfo)
 
static void clear_error (ZOOM_connection c)
 
void ZOOM_connection_show_task (ZOOM_task task)
 
void ZOOM_connection_show_tasks (ZOOM_connection c)
 
ZOOM_task ZOOM_connection_add_task (ZOOM_connection c, int which)
 
 ZOOM_API (int)
 
ZOOM_task ZOOM_connection_insert_task (ZOOM_connection c, int which)
 
void ZOOM_connection_remove_task (ZOOM_connection c)
 
void ZOOM_connection_remove_tasks (ZOOM_connection c)
 
static void odr_wrbuf_write (ODR o, void *handle, int type, const char *buf, int len)
 
 ZOOM_connection_create (ZOOM_options options)
 
 ZOOM_API (void)
 
char ** ZOOM_connection_get_databases (ZOOM_connection con, ZOOM_options options, int *num, ODR odr)
 
 ZOOM_connection_new (const char *host, int portnum)
 
static zoom_sru_mode get_sru_mode_from_string (const char *s)
 
 ZOOM_connection_connect (ZOOM_connection c, const char *host, int portnum)
 
 ZOOM_connection_destroy (ZOOM_connection c)
 
void ZOOM_resultset_addref (ZOOM_resultset r)
 
static int resultset_use (int delta)
 
int resultsets_count (void)
 
ZOOM_resultset ZOOM_resultset_create (void)
 
 ZOOM_connection_search_pqf (ZOOM_connection c, const char *q)
 
 ZOOM_connection_search (ZOOM_connection c, ZOOM_query q)
 
 ZOOM_resultset_sort (ZOOM_resultset r, const char *sort_type, const char *sort_spec)
 
 ZOOM_resultset_sort1 (ZOOM_resultset r, const char *sort_type, const char *sort_spec)
 
 ZOOM_resultset_destroy (ZOOM_resultset r)
 
 ZOOM_resultset_size (ZOOM_resultset r)
 
int ZOOM_test_reconnect (ZOOM_connection c)
 
static void ZOOM_resultset_retrieve (ZOOM_resultset r, int force_sync, int start, int count)
 
 ZOOM_resultset_records (ZOOM_resultset r, ZOOM_record *recs, size_t start, size_t count)
 
 ZOOM_resultset_facets_size (ZOOM_resultset r)
 
 ZOOM_resultset_get_facet_field (ZOOM_resultset r, const char *name)
 
 ZOOM_resultset_get_facet_field_by_index (ZOOM_resultset r, int idx)
 
 ZOOM_resultset_facets (ZOOM_resultset r)
 
 ZOOM_resultset_facets_names (ZOOM_resultset r)
 
 ZOOM_facet_field_name (ZOOM_facet_field field)
 
 ZOOM_facet_field_term_count (ZOOM_facet_field field)
 
 ZOOM_facet_field_get_term (ZOOM_facet_field field, size_t idx, int *freq)
 
static void get_cert (ZOOM_connection c)
 
static zoom_ret do_connect_host (ZOOM_connection c, const char *logical_url)
 
static zoom_ret do_connect (ZOOM_connection c)
 
 ZOOM_resultset_record_immediate (ZOOM_resultset s, size_t pos)
 
 ZOOM_resultset_record (ZOOM_resultset r, size_t pos)
 
 ZOOM_connection_scan (ZOOM_connection c, const char *start)
 
 ZOOM_connection_scan1 (ZOOM_connection c, ZOOM_query q)
 
 ZOOM_scanset_destroy (ZOOM_scanset scan)
 
static zoom_ret send_package (ZOOM_connection c)
 
 ZOOM_scanset_size (ZOOM_scanset scan)
 
static void ZOOM_scanset_term_x (ZOOM_scanset scan, size_t pos, size_t *occ, const char **value_term, size_t *value_len, const char **disp_term, size_t *disp_len)
 
 ZOOM_scanset_term (ZOOM_scanset scan, size_t pos, size_t *occ, size_t *len)
 
 ZOOM_scanset_display_term (ZOOM_scanset scan, size_t pos, size_t *occ, size_t *len)
 
 ZOOM_scanset_option_get (ZOOM_scanset scan, const char *key)
 
 ZOOM_scanset_option_set (ZOOM_scanset scan, const char *key, const char *val)
 
 ZOOM_connection_package (ZOOM_connection c, ZOOM_options options)
 
 ZOOM_package_destroy (ZOOM_package p)
 
 ZOOM_package_option_get (ZOOM_package p, const char *key)
 
 ZOOM_package_option_getl (ZOOM_package p, const char *key, int *lenp)
 
 ZOOM_package_option_set (ZOOM_package p, const char *key, const char *val)
 
 ZOOM_package_option_setl (ZOOM_package p, const char *key, const char *val, int len)
 
 ZOOM_connection_exec_task (ZOOM_connection c)
 executes non-blocking tasks for connection More...
 
zoom_ret ZOOM_send_GDU (ZOOM_connection c, Z_GDU *gdu)
 
void ZOOM_set_HTTP_error (ZOOM_connection c, int error, const char *addinfo, const char *addinfo2)
 
static void handle_http (ZOOM_connection c, Z_HTTP_Response *hres)
 
static int do_read (ZOOM_connection c)
 
zoom_ret ZOOM_send_buf (ZOOM_connection c)
 
 ZOOM_connection_option_get (ZOOM_connection c, const char *key)
 
 ZOOM_connection_option_getl (ZOOM_connection c, const char *key, int *lenp)
 
 ZOOM_connection_option_set (ZOOM_connection c, const char *key, const char *val)
 
 ZOOM_connection_option_setl (ZOOM_connection c, const char *key, const char *val, int len)
 
 ZOOM_resultset_option_get (ZOOM_resultset r, const char *key)
 
 ZOOM_resultset_option_set (ZOOM_resultset r, const char *key, const char *val)
 
 ZOOM_connection_errcode (ZOOM_connection c)
 
 ZOOM_connection_errmsg (ZOOM_connection c)
 
 ZOOM_connection_addinfo (ZOOM_connection c)
 
 ZOOM_connection_diagset (ZOOM_connection c)
 
 ZOOM_diag_str (int error)
 
 ZOOM_connection_error_x (ZOOM_connection c, const char **cp, const char **addinfo, const char **diagset)
 
 ZOOM_connection_error (ZOOM_connection c, const char **cp, const char **addinfo)
 
static void ZOOM_connection_do_io (ZOOM_connection c, int mask)
 
 ZOOM_connection_last_event (ZOOM_connection cs)
 
 ZOOM_connection_process (ZOOM_connection c)
 process one event for connection More...
 
 ZOOM_event_nonblock (int no, ZOOM_connection *cs)
 process one event for one of connections given More...
 

Variables

static int log_api0 = 0
 
static int log_details0 = 0
 
static int g_resultsets = 0
 
static YAZ_MUTEX g_resultset_mutex = 0
 

Detailed Description

Implements ZOOM C interface.

Definition in file zoom-c.c.

Function Documentation

◆ clear_error()

static void clear_error ( ZOOM_connection  c)
static

◆ do_connect()

static zoom_ret do_connect ( ZOOM_connection  c)
static

Definition at line 1069 of file zoom-c.c.

References do_connect_host(), and ZOOM_connection_p::host_port.

Referenced by ZOOM_connection_exec_task().

◆ do_connect_host()

static zoom_ret do_connect_host ( ZOOM_connection  c,
const char *  logical_url 
)
static

◆ do_read()

static int do_read ( ZOOM_connection  c)
static

◆ do_write_ex()

static zoom_ret do_write_ex ( ZOOM_connection  c,
char *  buf_out,
int  len_out 
)
static

◆ get_cert()

static void get_cert ( ZOOM_connection  c)
static

◆ get_sru_mode_from_string()

static zoom_sru_mode get_sru_mode_from_string ( const char *  s)
static

◆ handle_http()

static void handle_http ( ZOOM_connection  c,
Z_HTTP_Response hres 
)
static

◆ initlog()

static void initlog ( void  )
static

◆ odr_wrbuf_write()

static void odr_wrbuf_write ( ODR  o,
void *  handle,
int  type,
const char *  buf,
int  len 
)
static

Definition at line 229 of file zoom-c.c.

References wrbuf_write().

Referenced by ZOOM_API().

◆ resultset_destroy()

static void resultset_destroy ( ZOOM_resultset  r)
static

◆ resultset_use()

static int resultset_use ( int  delta)
static

◆ resultsets_count()

int resultsets_count ( void  )

Definition at line 678 of file zoom-c.c.

References resultset_use().

◆ send_HTTP_redirect()

static zoom_ret send_HTTP_redirect ( ZOOM_connection  c,
const char *  uri 
)
static

◆ send_package()

static zoom_ret send_package ( ZOOM_connection  c)
static

◆ ZOOM_API() [1/2]

ZOOM_API ( int  )

Definition at line 166 of file zoom-c.c.

References ZOOM_connection_p::tasks.

◆ ZOOM_API() [2/2]

ZOOM_API ( void  )

◆ ZOOM_connection_add_task()

ZOOM_task ZOOM_connection_add_task ( ZOOM_connection  c,
int  which 
)

◆ ZOOM_connection_addinfo()

ZOOM_connection_addinfo ( ZOOM_connection  c)

Definition at line 1860 of file zoom-c.c.

References ZOOM_connection_error().

◆ ZOOM_connection_connect()

ZOOM_connection_connect ( ZOOM_connection  c,
const char *  host,
int  portnum 
)

◆ ZOOM_connection_create()

ZOOM_connection_create ( ZOOM_options  options)

Definition at line 237 of file zoom-c.c.

References ZOOM_connection_p::addinfo, ZOOM_connection_p::async, ZOOM_connection_p::buf_in, ZOOM_connection_p::buf_out, ZOOM_connection_p::charset, ZOOM_connection_p::client_IP, ZOOM_connection_p::cookie_in, ZOOM_connection_p::cookie_out, ZOOM_connection_p::cookies, ZOOM_connection_p::cs, ZOOM_connection_p::diagset, ZOOM_connection_p::group, ZOOM_connection_p::host_port, initlog(), ZOOM_connection_p::lang, ZOOM_connection_p::last_event, ZOOM_connection_p::len_in, ZOOM_connection_p::len_out, ZOOM_connection_p::location, ZOOM_connection_p::log_api, log_api0, ZOOM_connection_p::log_details, log_details0, ZOOM_connection_p::m_queue_back, ZOOM_connection_p::m_queue_front, ZOOM_connection_p::maximum_record_size, ZOOM_connection_p::no_redirects, odr_createmem(), ODR_DECODE, ODR_ENCODE, ZOOM_connection_p::odr_in, ZOOM_connection_p::odr_out, ZOOM_connection_p::odr_print, ZOOM_connection_p::odr_save, options(), ZOOM_connection_p::options, ZOOM_connection_p::password, ZOOM_connection_p::preferred_message_size, ZOOM_connection_p::proto, PROTO_Z3950, ZOOM_connection_p::proxy, ZOOM_connection_p::proxy_mode, ZOOM_connection_p::reconnect_ok, ZOOM_connection_p::resultsets, ZOOM_connection_p::saveAPDU_wrbuf, ZOOM_connection_p::sru_version, ZOOM_connection_p::state, STATE_IDLE, ZOOM_connection_p::support_named_resultsets, ZOOM_connection_p::tasks, ZOOM_connection_p::tproxy, ZOOM_connection_p::url_authentication, ZOOM_connection_p::user, xmalloc, yaz_log(), ZOOM_connection_set_mask(), ZOOM_ERROR_NONE, ZOOM_EVENT_NONE, ZOOM_memcached_init(), ZOOM_options_create_with_parent(), and ZOOM_set_error().

Referenced by ZOOM_connection_new(), and ZOOM_query_cql2rpn().

◆ ZOOM_connection_destroy()

ZOOM_connection_destroy ( ZOOM_connection  c)

◆ ZOOM_connection_diagset()

ZOOM_connection_diagset ( ZOOM_connection  c)

Definition at line 1868 of file zoom-c.c.

References ZOOM_connection_error_x().

◆ ZOOM_connection_do_io()

static void ZOOM_connection_do_io ( ZOOM_connection  c,
int  mask 
)
static

◆ ZOOM_connection_errcode()

ZOOM_connection_errcode ( ZOOM_connection  c)

Definition at line 1846 of file zoom-c.c.

References ZOOM_connection_error().

◆ ZOOM_connection_errmsg()

ZOOM_connection_errmsg ( ZOOM_connection  c)

Definition at line 1852 of file zoom-c.c.

References ZOOM_connection_error().

◆ ZOOM_connection_error()

ZOOM_connection_error ( ZOOM_connection  c,
const char **  cp,
const char **  addinfo 
)

◆ ZOOM_connection_error_x()

ZOOM_connection_error_x ( ZOOM_connection  c,
const char **  cp,
const char **  addinfo,
const char **  diagset 
)

Definition at line 1926 of file zoom-c.c.

References yaz_diag_srw_str(), z_HTTP_errmsg(), and ZOOM_diag_str().

Referenced by ZOOM_connection_diagset(), and ZOOM_connection_error().

◆ ZOOM_connection_exec_task()

ZOOM_connection_exec_task ( ZOOM_connection  c)

executes non-blocking tasks for connection

Parameters
cconnection
Return values
0no task was executed
1task was executed (but probably not completed)

This function, unlike, ZOOM_connection_process, does not try to return any events (and remove them). But events may be generated from it. These are saved and may later be retrieved with ZOOM_connection_process and ZOOM_connection_last_event .

Definition at line 1435 of file zoom-c.c.

References do_connect(), PROTO_HTTP, ZOOM_task_p::running, send_package(), send_Z3950_sort(), ZOOM_task_p::which, yaz_log(), zoom_complete, ZOOM_connection_remove_task(), ZOOM_connection_remove_tasks(), ZOOM_connection_srw_send_scan(), ZOOM_connection_srw_send_search(), ZOOM_connection_Z3950_search(), ZOOM_connection_Z3950_send_scan(), ZOOM_ERROR_NONE, ZOOM_query_get_sortspec(), ZOOM_TASK_CONNECT, ZOOM_TASK_PACKAGE, ZOOM_TASK_SCAN, ZOOM_TASK_SEARCH, and ZOOM_TASK_SORT.

Referenced by do_connect_host(), ZOOM_connection_do_io(), ZOOM_connection_process(), and ZOOM_handle_Z3950_apdu().

◆ ZOOM_connection_get_databases()

char** ZOOM_connection_get_databases ( ZOOM_connection  con,
ZOOM_options  options,
int *  num,
ODR  odr 
)

◆ ZOOM_connection_insert_task()

ZOOM_task ZOOM_connection_insert_task ( ZOOM_connection  c,
int  which 
)

◆ ZOOM_connection_last_event()

ZOOM_connection_last_event ( ZOOM_connection  cs)

Definition at line 2035 of file zoom-c.c.

References ZOOM_EVENT_NONE.

◆ ZOOM_connection_new()

ZOOM_connection_new ( const char *  host,
int  portnum 
)

Definition at line 337 of file zoom-c.c.

References ZOOM_connection_connect(), and ZOOM_connection_create().

◆ ZOOM_connection_option_get()

ZOOM_connection_option_get ( ZOOM_connection  c,
const char *  key 
)

Definition at line 1770 of file zoom-c.c.

References wrbuf_cstr(), and ZOOM_options_get().

Referenced by cql2pqf().

◆ ZOOM_connection_option_getl()

ZOOM_connection_option_getl ( ZOOM_connection  c,
const char *  key,
int *  lenp 
)

Definition at line 1781 of file zoom-c.c.

References wrbuf_cstr(), wrbuf_len, and ZOOM_options_getl().

◆ ZOOM_connection_option_set()

ZOOM_connection_option_set ( ZOOM_connection  c,
const char *  key,
const char *  val 
)

◆ ZOOM_connection_option_setl()

ZOOM_connection_option_setl ( ZOOM_connection  c,
const char *  key,
const char *  val,
int  len 
)

Definition at line 1825 of file zoom-c.c.

References ZOOM_options_setl().

Referenced by get_cert().

◆ ZOOM_connection_package()

ZOOM_connection_package ( ZOOM_connection  c,
ZOOM_options  options 
)

◆ ZOOM_connection_process()

ZOOM_connection_process ( ZOOM_connection  c)

process one event for connection

Parameters
cconnection
Return values
0no event was processed
1event was processed for connection

This function attemps to deal with outstandings events in a non-blocking fashion. If no event was processed (return value of 0), then the system should attempt to deal with sockets in blocking mode using socket select/poll which means calling the following functions: ZOOM_connection_get_socket, ZOOM_connection_get_mask, ZOOM_connection_get_timeout. If an event was processed call this function again.

Definition at line 2057 of file zoom-c.c.

References ZOOM_connection_exec_task(), ZOOM_connection_get_event(), and ZOOM_Event_destroy().

Referenced by ZOOM_event_nonblock().

◆ ZOOM_connection_remove_task()

void ZOOM_connection_remove_task ( ZOOM_connection  c)

◆ ZOOM_connection_remove_tasks()

void ZOOM_connection_remove_tasks ( ZOOM_connection  c)

◆ ZOOM_connection_scan()

ZOOM_connection_scan ( ZOOM_connection  c,
const char *  start 
)

◆ ZOOM_connection_scan1()

ZOOM_connection_scan1 ( ZOOM_connection  c,
ZOOM_query  q 
)

◆ ZOOM_connection_search()

ZOOM_connection_search ( ZOOM_connection  c,
ZOOM_query  q 
)

◆ ZOOM_connection_search_pqf()

ZOOM_connection_search_pqf ( ZOOM_connection  c,
const char *  q 
)

◆ ZOOM_connection_show_task()

void ZOOM_connection_show_task ( ZOOM_task  task)

◆ ZOOM_connection_show_tasks()

void ZOOM_connection_show_tasks ( ZOOM_connection  c)

◆ ZOOM_diag_str()

ZOOM_diag_str ( int  error)

◆ ZOOM_event_nonblock()

ZOOM_event_nonblock ( int  no,
ZOOM_connection cs 
)

process one event for one of connections given

Parameters
nonumber of connections (size of cs)
csconnection array
Return values
0no event was processed
>0event was processed for connection at (retval-1)

This function attemps to deal with outstandings events in a non-blocking mode. If no events was processed (return value of 0), then the system should attempt to deal with sockets in blocking mode using socket select/poll which means calling the following functions: ZOOM_connection_get_socket, ZOOM_connection_get_mask, ZOOM_connection_get_timeout.

Definition at line 2080 of file zoom-c.c.

References log_details0, yaz_log(), and ZOOM_connection_process().

Referenced by ZOOM_event().

◆ ZOOM_facet_field_get_term()

ZOOM_facet_field_get_term ( ZOOM_facet_field  field,
size_t  idx,
int *  freq 
)

Definition at line 1046 of file zoom-c.c.

◆ ZOOM_facet_field_name()

ZOOM_facet_field_name ( ZOOM_facet_field  field)

Definition at line 1034 of file zoom-c.c.

Referenced by ZOOM_handle_facet_list().

◆ ZOOM_facet_field_term_count()

ZOOM_facet_field_term_count ( ZOOM_facet_field  field)

Definition at line 1040 of file zoom-c.c.

◆ ZOOM_package_destroy()

ZOOM_package_destroy ( ZOOM_package  p)

Definition at line 1393 of file zoom-c.c.

References odr_destroy(), xfree, and ZOOM_options_destroy().

Referenced by ZOOM_connection_remove_task().

◆ ZOOM_package_option_get()

ZOOM_package_option_get ( ZOOM_package  p,
const char *  key 
)

Definition at line 1409 of file zoom-c.c.

References ZOOM_options_get().

◆ ZOOM_package_option_getl()

ZOOM_package_option_getl ( ZOOM_package  p,
const char *  key,
int *  lenp 
)

Definition at line 1415 of file zoom-c.c.

References ZOOM_options_getl().

◆ ZOOM_package_option_set()

ZOOM_package_option_set ( ZOOM_package  p,
const char *  key,
const char *  val 
)

Definition at line 1421 of file zoom-c.c.

References ZOOM_options_set().

◆ ZOOM_package_option_setl()

ZOOM_package_option_setl ( ZOOM_package  p,
const char *  key,
const char *  val,
int  len 
)

Definition at line 1428 of file zoom-c.c.

References ZOOM_options_setl().

◆ ZOOM_resultset_addref()

void ZOOM_resultset_addref ( ZOOM_resultset  r)

◆ ZOOM_resultset_create()

ZOOM_resultset ZOOM_resultset_create ( void  )

◆ ZOOM_resultset_destroy()

ZOOM_resultset_destroy ( ZOOM_resultset  r)

Definition at line 863 of file zoom-c.c.

References resultset_destroy().

◆ ZOOM_resultset_facets()

ZOOM_resultset_facets ( ZOOM_resultset  r)

Definition at line 1022 of file zoom-c.c.

◆ ZOOM_resultset_facets_names()

ZOOM_resultset_facets_names ( ZOOM_resultset  r)

Definition at line 1028 of file zoom-c.c.

◆ ZOOM_resultset_facets_size()

ZOOM_resultset_facets_size ( ZOOM_resultset  r)

Definition at line 994 of file zoom-c.c.

◆ ZOOM_resultset_get_facet_field()

ZOOM_resultset_get_facet_field ( ZOOM_resultset  r,
const char *  name 
)

Definition at line 1000 of file zoom-c.c.

References name.

◆ ZOOM_resultset_get_facet_field_by_index()

ZOOM_resultset_get_facet_field_by_index ( ZOOM_resultset  r,
int  idx 
)

Definition at line 1012 of file zoom-c.c.

◆ ZOOM_resultset_option_get()

ZOOM_resultset_option_get ( ZOOM_resultset  r,
const char *  key 
)

Definition at line 1832 of file zoom-c.c.

References ZOOM_options_get().

Referenced by ZOOM_connection_srw_send_search(), and ZOOM_memcached_resultset().

◆ ZOOM_resultset_option_set()

ZOOM_resultset_option_set ( ZOOM_resultset  r,
const char *  key,
const char *  val 
)

Definition at line 1838 of file zoom-c.c.

References ZOOM_options_set().

Referenced by handle_srw_response().

◆ ZOOM_resultset_record()

ZOOM_resultset_record ( ZOOM_resultset  r,
size_t  pos 
)

Definition at line 1156 of file zoom-c.c.

References ZOOM_resultset_record_immediate(), and ZOOM_resultset_retrieve().

◆ ZOOM_resultset_record_immediate()

ZOOM_resultset_record_immediate ( ZOOM_resultset  s,
size_t  pos 
)

Definition at line 1143 of file zoom-c.c.

References ZOOM_options_get(), and ZOOM_record_cache_lookup_i().

Referenced by ZOOM_resultset_record(), and ZOOM_resultset_records().

◆ ZOOM_resultset_records()

ZOOM_resultset_records ( ZOOM_resultset  r,
ZOOM_record recs,
size_t  start,
size_t  count 
)

◆ ZOOM_resultset_retrieve()

static void ZOOM_resultset_retrieve ( ZOOM_resultset  r,
int  force_sync,
int  start,
int  count 
)
static

◆ ZOOM_resultset_size()

ZOOM_resultset_size ( ZOOM_resultset  r)

Definition at line 899 of file zoom-c.c.

◆ ZOOM_resultset_sort()

ZOOM_resultset_sort ( ZOOM_resultset  r,
const char *  sort_type,
const char *  sort_spec 
)

Definition at line 808 of file zoom-c.c.

References ZOOM_resultset_sort1().

◆ ZOOM_resultset_sort1()

ZOOM_resultset_sort1 ( ZOOM_resultset  r,
const char *  sort_type,
const char *  sort_spec 
)

◆ ZOOM_scanset_destroy()

ZOOM_scanset_destroy ( ZOOM_scanset  scan)

Definition at line 1228 of file zoom-c.c.

References odr_destroy(), xfree, ZOOM_options_destroy(), and ZOOM_query_destroy().

Referenced by ZOOM_connection_remove_task().

◆ ZOOM_scanset_display_term()

ZOOM_scanset_display_term ( ZOOM_scanset  scan,
size_t  pos,
size_t *  occ,
size_t *  len 
)

Definition at line 1349 of file zoom-c.c.

References ZOOM_scanset_term_x().

◆ ZOOM_scanset_option_get()

ZOOM_scanset_option_get ( ZOOM_scanset  scan,
const char *  key 
)

Definition at line 1365 of file zoom-c.c.

References ZOOM_options_get().

◆ ZOOM_scanset_option_set()

ZOOM_scanset_option_set ( ZOOM_scanset  scan,
const char *  key,
const char *  val 
)

Definition at line 1371 of file zoom-c.c.

References ZOOM_options_set().

◆ ZOOM_scanset_size()

ZOOM_scanset_size ( ZOOM_scanset  scan)

Definition at line 1263 of file zoom-c.c.

Referenced by ZOOM_scanset_term_x().

◆ ZOOM_scanset_term()

ZOOM_scanset_term ( ZOOM_scanset  scan,
size_t  pos,
size_t *  occ,
size_t *  len 
)

Definition at line 1333 of file zoom-c.c.

References ZOOM_scanset_term_x().

◆ ZOOM_scanset_term_x()

static void ZOOM_scanset_term_x ( ZOOM_scanset  scan,
size_t  pos,
size_t *  occ,
const char **  value_term,
size_t *  value_len,
const char **  disp_term,
size_t *  disp_len 
)
static

◆ ZOOM_send_buf()

zoom_ret ZOOM_send_buf ( ZOOM_connection  c)

◆ ZOOM_send_GDU()

zoom_ret ZOOM_send_GDU ( ZOOM_connection  c,
Z_GDU gdu 
)

◆ ZOOM_set_dset_error()

void ZOOM_set_dset_error ( ZOOM_connection  c,
int  error,
const char *  dset,
const char *  addinfo,
const char *  addinfo2 
)

◆ ZOOM_set_error()

void ZOOM_set_error ( ZOOM_connection  c,
int  error,
const char *  addinfo 
)

◆ ZOOM_set_HTTP_error()

void ZOOM_set_HTTP_error ( ZOOM_connection  c,
int  error,
const char *  addinfo,
const char *  addinfo2 
)

Definition at line 1546 of file zoom-c.c.

References ZOOM_set_dset_error().

Referenced by handle_http(), and ZOOM_handle_sru().

◆ ZOOM_test_reconnect()

int ZOOM_test_reconnect ( ZOOM_connection  c)

◆ ZOOM_uri_to_code()

int ZOOM_uri_to_code ( const char *  uri)

Definition at line 89 of file zoom-c.c.

Referenced by set_SRU_error(), and ZOOM_record_error().

Variable Documentation

◆ g_resultset_mutex

YAZ_MUTEX g_resultset_mutex = 0
static

Definition at line 662 of file zoom-c.c.

Referenced by resultset_use().

◆ g_resultsets

int g_resultsets = 0
static

Definition at line 661 of file zoom-c.c.

Referenced by resultset_use().

◆ log_api0

int log_api0 = 0
static

Definition at line 34 of file zoom-c.c.

Referenced by initlog(), ZOOM_connection_create(), and ZOOM_resultset_records().

◆ log_details0

int log_details0 = 0
static