Adam Dickmeiss [Mon, 29 Aug 2011 13:57:05 +0000 (15:57 +0200)]
CQL/CCL/PQF conversion fixes. CCL support for Z39.58 trunc
Lots of fixes for the conversions from CQL to CCL; CCL to RPN;
RPN to CQL. yaz_encode_pqf_term's term parameter properly
escaped into PQF term. CCL truncation configuration t=z
enables Z39.58 truncation which is in fact CCL truncation, but there's
more to it than one might think anyway. The RPN to CCL conversion
handles Z39.58 truncation as well (5=104).
Adam Dickmeiss [Mon, 29 Aug 2011 11:04:57 +0000 (13:04 +0200)]
cql2ccl: term code for all/any sequences as well
Adam Dickmeiss [Mon, 29 Aug 2011 10:33:30 +0000 (12:33 +0200)]
cql2ccl: fix handling of \\
Adam Dickmeiss [Mon, 29 Aug 2011 10:24:08 +0000 (12:24 +0200)]
Add test of cql_to_ccl
Adam Dickmeiss [Mon, 29 Aug 2011 10:21:59 +0000 (12:21 +0200)]
Trunc 104 is Z39.58
Adam Dickmeiss [Mon, 29 Aug 2011 10:06:18 +0000 (12:06 +0200)]
cql2ccl: handle CQL \-sequences differently
For most CQL \-sequences do not produce \-sequence in resulting
CCL term. Only \" and \\ are special
Adam Dickmeiss [Mon, 29 Aug 2011 08:29:22 +0000 (10:29 +0200)]
bin-1 ref: mention Index Data's extensions
Adam Dickmeiss [Sat, 27 Aug 2011 22:09:45 +0000 (00:09 +0200)]
ccl2rpn: more characters to escape (regexp-1).
Adam Dickmeiss [Sat, 27 Aug 2011 22:09:38 +0000 (00:09 +0200)]
rpn2cql: handle \\ sequence
Adam Dickmeiss [Sat, 27 Aug 2011 22:07:48 +0000 (00:07 +0200)]
PQF parsing: handle \\\0 sequence
A truncated PQF term, backslash as last character, would resolve in
read one byte beyond end of string.
Adam Dickmeiss [Sat, 27 Aug 2011 14:03:18 +0000 (16:03 +0200)]
Version 4.2.12
Adam Dickmeiss [Sat, 27 Aug 2011 13:38:59 +0000 (15:38 +0200)]
cql2ccl: quote term characters, except operators
Fixes #4584.
Adam Dickmeiss [Thu, 25 Aug 2011 12:40:02 +0000 (14:40 +0200)]
Version 4.2.11
Adam Dickmeiss [Thu, 25 Aug 2011 12:36:14 +0000 (14:36 +0200)]
Changes
Adam Dickmeiss [Thu, 25 Aug 2011 12:06:40 +0000 (14:06 +0200)]
ccl2rpn: Conversion to regexp-1 terms (trunc=102).
For mode t=x, the CCL parser will map both # and ? to their regular
expression equivalents (. and .*).
Adam Dickmeiss [Thu, 25 Aug 2011 12:05:41 +0000 (14:05 +0200)]
rpn2cql: deal with truncation=102 (regexp-1)
And ensure proper quoting of reserved CQL characters.
Adam Dickmeiss [Thu, 25 Aug 2011 11:56:20 +0000 (13:56 +0200)]
cql2ccl: deal with both * and ? in conversion
Also leave escaped ones as is, so that they are pass-through.
Adam Dickmeiss [Wed, 24 Aug 2011 19:45:53 +0000 (21:45 +0200)]
CCL: retain ? for CCL terms
Adam Dickmeiss [Wed, 24 Aug 2011 17:58:07 +0000 (17:58 +0000)]
Version 4.2.10
Mike Taylor [Wed, 24 Aug 2011 14:03:17 +0000 (15:03 +0100)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Mike Taylor [Wed, 24 Aug 2011 14:02:59 +0000 (15:02 +0100)]
Describe recent changes.
Mike Taylor [Wed, 24 Aug 2011 14:01:06 +0000 (15:01 +0100)]
rpn2cql_structure() supports proximity nodes (except that the Type-1
proximity node's "exclusion" binary is ignored, as there is no way to
express that in CQL). Fixes bug #4564.
Mike Taylor [Wed, 24 Aug 2011 13:59:50 +0000 (14:59 +0100)]
Ignore generated script yaz-url
Mike Taylor [Wed, 24 Aug 2011 13:49:47 +0000 (14:49 +0100)]
Public declaration for yaz_prox_unit_name()
Adam Dickmeiss [Wed, 24 Aug 2011 13:35:00 +0000 (15:35 +0200)]
ZOOM: HTTP prepare for reconnect if server don't say so
In case the server HTTP/1.1 says Keep-Alive, we set the reconnect_ok
to 1, if it closes anyway. Fixes #4555.
Mike Taylor [Wed, 24 Aug 2011 13:34:51 +0000 (14:34 +0100)]
static prox_unit_name() renamed to yaz_prox_unit_name(), made external.
Adam Dickmeiss [Wed, 24 Aug 2011 13:14:56 +0000 (15:14 +0200)]
GFS: mention -K in usage
Mike Taylor [Wed, 24 Aug 2011 11:44:53 +0000 (12:44 +0100)]
Lint-clean: void out an unused return value.
Adam Dickmeiss [Tue, 23 Aug 2011 16:27:41 +0000 (18:27 +0200)]
zoomtst3: setting option step=5
This is to illustrate the step option and to check that it actually
works.
Adam Dickmeiss [Thu, 18 Aug 2011 08:28:51 +0000 (10:28 +0200)]
Version 4.2.9
Adam Dickmeiss [Wed, 17 Aug 2011 13:50:11 +0000 (15:50 +0200)]
zoomsh: fix SEGV for set command wo value
Adam Dickmeiss [Tue, 16 Aug 2011 08:30:10 +0000 (10:30 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Adam Dickmeiss [Tue, 16 Aug 2011 08:27:20 +0000 (10:27 +0200)]
Check for invalid COMSTACK addresses
Check return value of cs_parse_host in cs_create_host_proxy. For
example, yaz-url would SEGV if ssl/https was given and SSL was
not enabled in the built (as it happens on Windows).
Adam Dickmeiss [Fri, 12 Aug 2011 07:57:14 +0000 (09:57 +0200)]
nmake: build yaz_url
Adam Dickmeiss [Thu, 11 Aug 2011 10:56:06 +0000 (12:56 +0200)]
Version 2.4.8
Adam Dickmeiss [Thu, 11 Aug 2011 09:23:54 +0000 (11:23 +0200)]
yaz-url + man page installed and part of packages
Adam Dickmeiss [Thu, 11 Aug 2011 08:45:16 +0000 (10:45 +0200)]
Update other version of tcpip_straddr for https too
Adam Dickmeiss [Thu, 11 Aug 2011 08:43:06 +0000 (10:43 +0200)]
yaz-url: Opt -O writes output to file instead of stdout
Adam Dickmeiss [Thu, 11 Aug 2011 08:42:11 +0000 (10:42 +0200)]
tcpip_straddr: Use port 443 for https
Adam Dickmeiss [Thu, 11 Aug 2011 08:33:38 +0000 (10:33 +0200)]
GFS: close connection immediately if EOF is received.
Previously the assocation was marked DEAD and that could lead to
a few seconds hang on SSL connections.
Adam Dickmeiss [Thu, 11 Aug 2011 08:31:25 +0000 (10:31 +0200)]
SSL: Handle EOF case in ssl_get
If gnutls was in use and gnutls_record_recv returned 0 (EOF)
the ssl_get function would never terminate.
Adam Dickmeiss [Thu, 11 Aug 2011 08:26:48 +0000 (10:26 +0200)]
sockets: fix for whether poll is available
The select(2) wrapper was in use even though poll(2) was available.
Adam Dickmeiss [Thu, 11 Aug 2011 06:33:50 +0000 (08:33 +0200)]
yaz-url: HTTP method may be given. Change header (-H) option.
Argument for -H is now name:value rather than name=value - it just
seems more natural for Web hackers that way.
Adam Dickmeiss [Thu, 11 Aug 2011 06:21:08 +0000 (08:21 +0200)]
yaz-url: display usage if no ULRs are given
Adam Dickmeiss [Wed, 10 Aug 2011 13:03:53 +0000 (15:03 +0200)]
New utility yaz_url: fetches HTTP content
This is a simple wrapper around COMSTACK and HTTP utilities; deals
with proxy'ing.
Adam Dickmeiss [Wed, 10 Aug 2011 09:23:19 +0000 (11:23 +0200)]
zoomsh: fix set command to use remaning args for value
Before, only one token was taken as value for set (or one would have to
quote if a token contained space).
Adam Dickmeiss [Wed, 10 Aug 2011 09:22:56 +0000 (11:22 +0200)]
yaz_pqf_parse_facet_list returns FAIL (0) for bad facet spec
Adam Dickmeiss [Tue, 9 Aug 2011 16:42:49 +0000 (18:42 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Adam Dickmeiss [Tue, 9 Aug 2011 16:41:27 +0000 (18:41 +0200)]
yaz_pqf_parser_facet_list also reads term list
Thus yaz_pqf_parser_facet_list might also be used to create a facet
response.
Adam Dickmeiss [Fri, 5 Aug 2011 14:24:08 +0000 (16:24 +0200)]
New utility: nmem_strsplit_escape
Adam Dickmeiss [Fri, 5 Aug 2011 12:55:32 +0000 (14:55 +0200)]
Testin wrbuf_insert
Adam Dickmeiss [Fri, 5 Aug 2011 12:35:20 +0000 (14:35 +0200)]
New WRBUF utility: wrbuf_insert
Adam Dickmeiss [Thu, 4 Aug 2011 12:14:22 +0000 (14:14 +0200)]
Remove unused code
Adam Dickmeiss [Thu, 4 Aug 2011 11:32:15 +0000 (13:32 +0200)]
Base64 utilities public
Adam Dickmeiss [Thu, 4 Aug 2011 11:00:25 +0000 (13:00 +0200)]
Remove variables and assignments with no effect
As warned by newer GCC.
Adam Dickmeiss [Thu, 4 Aug 2011 11:00:02 +0000 (13:00 +0200)]
zoomsh: remove unused code for cmd facets
Adam Dickmeiss [Thu, 4 Aug 2011 10:59:22 +0000 (12:59 +0200)]
void mixed stmt/var declare
Adam Dickmeiss [Thu, 4 Aug 2011 10:58:40 +0000 (12:58 +0200)]
client: proper recid passing
Adam Dickmeiss [Wed, 3 Aug 2011 11:39:47 +0000 (13:39 +0200)]
Version 4.2.7
Adam Dickmeiss [Wed, 3 Aug 2011 09:40:33 +0000 (11:40 +0200)]
ZOOM: addinfo includes HTTP content when SRU decode fails
When ZOOM C sees an SRU responst that it cannot decode it
returns "meta" diagnostic ZOOM_ERROR_DECODE/10003 . The additional
info now contains the HTTP content.
Adam Dickmeiss [Tue, 2 Aug 2011 12:14:29 +0000 (14:14 +0200)]
Make json_write_wrbuf available
Adam Dickmeiss [Fri, 29 Jul 2011 15:59:48 +0000 (17:59 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Adam Dickmeiss [Thu, 28 Jul 2011 12:18:54 +0000 (14:18 +0200)]
Version 4.2.6
Adam Dickmeiss [Thu, 28 Jul 2011 12:18:46 +0000 (14:18 +0200)]
Add YAZ_EXPORT for wrbuf_vp_puts
Adam Dickmeiss [Thu, 28 Jul 2011 09:32:13 +0000 (11:32 +0200)]
ZOOM: throw diagnostic for invalid sru value
Adam Dickmeiss [Wed, 27 Jul 2011 14:20:06 +0000 (16:20 +0200)]
rpn2cql: check for proper truncation attributes
Adam Dickmeiss [Wed, 27 Jul 2011 13:41:41 +0000 (15:41 +0200)]
Reformat
Adam Dickmeiss [Wed, 27 Jul 2011 13:07:05 +0000 (15:07 +0200)]
cql2xcql: option -s deals with CQL sortkeys
Adam Dickmeiss [Wed, 27 Jul 2011 13:06:35 +0000 (15:06 +0200)]
Adding new utility wrbuf_vp_puts
Adam Dickmeiss [Wed, 27 Jul 2011 13:04:31 +0000 (15:04 +0200)]
Header updates
Adam Dickmeiss [Tue, 26 Jul 2011 07:38:07 +0000 (09:38 +0200)]
Remove assignment to variables not in use.
Fixes warnings produced by GCC 4.6.1.
Adam Dickmeiss [Mon, 25 Jul 2011 19:05:00 +0000 (21:05 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Adam Dickmeiss [Mon, 25 Jul 2011 11:50:34 +0000 (13:50 +0200)]
Add cclxmlconfig.obj
Adam Dickmeiss [Mon, 25 Jul 2011 10:55:02 +0000 (12:55 +0200)]
yaz_is_abspath: drive letter test NOT using isalpha
isalpha is problematic for signed chars and we assume drive letters are
[a-zA-Z] only; also isalpha depends locale.
Adam Dickmeiss [Mon, 25 Jul 2011 10:52:48 +0000 (12:52 +0200)]
Reformat
Adam Dickmeiss [Mon, 25 Jul 2011 10:44:03 +0000 (12:44 +0200)]
Change yaz_filepath_resolve for path="" (empty)
Applying empty path is equivalent to not passing a path at all or
passing just the path ".".
Adam Dickmeiss [Fri, 22 Jul 2011 10:53:35 +0000 (12:53 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Adam Dickmeiss [Thu, 21 Jul 2011 08:16:21 +0000 (10:16 +0200)]
Version 4.2.5
Adam Dickmeiss [Wed, 20 Jul 2011 12:16:35 +0000 (14:16 +0200)]
ZOOM HTTP: refactor and simplify redirect/proxy code
Adam Dickmeiss [Wed, 20 Jul 2011 09:02:13 +0000 (11:02 +0200)]
ZOOM C: fix un-init var for cookie buffer
Adam Dickmeiss [Tue, 19 Jul 2011 14:04:39 +0000 (16:04 +0200)]
ZOOM HTTP: proxy uses full URI in HTTP header
Squid don't seem to like
GET /?operation.. HTTP/1.1
but rather
GET http://host/?operation HTTP/1.1
When HTTP proxy is in effect. When proxying the new function
cs_create_host_proxy is used to so comstack type is determined from
logical URL rather than proxy host. Proxy just needs host:port type of
spec. Note: this change might break HTTP redirect.
Adam Dickmeiss [Tue, 19 Jul 2011 14:03:32 +0000 (16:03 +0200)]
Add cs_create_host_proxy
This is similar to cs_create_host but allows a proxy to be given.
Comstack type is still taken from vhost (logical host).
Adam Dickmeiss [Tue, 19 Jul 2011 12:13:24 +0000 (14:13 +0200)]
MARC line decoding: be less picky about length given
Still, the MARC record must have 5 leading digits so we can
distinguish this from header and other lines.
Adam Dickmeiss [Tue, 19 Jul 2011 11:02:29 +0000 (13:02 +0200)]
cql_to_ccl deals with proximity , bug #4407
The CQL proximity modifiers are supported: unordered (CCL %),
ordered (CCL !), distance with relation <= and < , unit with value
word. Anything but those throws an error.
Adam Dickmeiss [Tue, 19 Jul 2011 09:12:05 +0000 (11:12 +0200)]
Reformat
Adam Dickmeiss [Tue, 19 Jul 2011 09:06:00 +0000 (11:06 +0200)]
Fix up SRU recordData with pseudo root
This is to make recordData XML parseable (document) in case it is an
XML fragment. The inserted root is <yaz-record>. Fixes #4453.
Adam Dickmeiss [Mon, 18 Jul 2011 11:27:59 +0000 (13:27 +0200)]
Spell fix
Adam Dickmeiss [Fri, 15 Jul 2011 19:14:41 +0000 (21:14 +0200)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Dennis Schafroth [Fri, 15 Jul 2011 13:48:29 +0000 (15:48 +0200)]
Create constant for SRW max parameters
Dennis Schafroth [Fri, 15 Jul 2011 13:47:55 +0000 (15:47 +0200)]
Encode special characters in term
Dennis Schafroth [Fri, 15 Jul 2011 13:47:03 +0000 (15:47 +0200)]
Add support for extra parameters
Dennis Schafroth [Mon, 11 Jul 2011 11:37:57 +0000 (13:37 +0200)]
Spell fix in comment
Dennis Schafroth [Mon, 11 Jul 2011 11:36:38 +0000 (13:36 +0200)]
Escaping :
Adam Dickmeiss [Sat, 9 Jul 2011 16:10:02 +0000 (18:10 +0200)]
Reformat
Adam Dickmeiss [Sat, 9 Jul 2011 16:08:54 +0000 (18:08 +0200)]
Fix spelling of YAZ_OPTIONS_H
Mike Taylor [Tue, 5 Jul 2011 22:51:06 +0000 (23:51 +0100)]
Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
Mike Taylor [Tue, 5 Jul 2011 22:42:31 +0000 (23:42 +0100)]
The static function bool(), which is part of cql_to_ccl_r(), now makes
some attempt to recognise and deal with proximity. Right now, all it
does it recognise the CQL operator name "prox" and map it to the CCL
operator "!" rather than the unrecognised plain word "prox" -- this
suffices to get SOME indication of proximity into the resulting CCL,
which is a big step forward for bug #4407. We ought to check for a an
/ordered=0 relation modifier and emit "%" instead in that case.
Adam Dickmeiss [Tue, 5 Jul 2011 21:49:51 +0000 (23:49 +0200)]
GFS: properly initialise scan stepSixze
Adam Dickmeiss [Wed, 29 Jun 2011 14:47:33 +0000 (16:47 +0200)]
Debian control: split long lines
Adam Dickmeiss [Tue, 21 Jun 2011 13:10:11 +0000 (15:10 +0200)]
Version 4.2.4