]> mj.ucw.cz Git - libucw.git/log
libucw.git
19 years agoChanged DEBUG to CONFIG_DEBUG to avoid conflicts with various libraries.
Martin Mares [Fri, 29 Oct 2004 08:41:04 +0000 (08:41 +0000)]
Changed DEBUG to CONFIG_DEBUG to avoid conflicts with various libraries.
(BTW we were probably slowing down the regex code by defining DEBUG.)

19 years agoTagged current sources as rel-3-3 (bug fixes only)
Martin Mares [Mon, 25 Oct 2004 14:32:34 +0000 (14:32 +0000)]
Tagged current sources as rel-3-3 (bug fixes only)
and moved mainline to v3.4.

19 years agoDouble oops.
Martin Mares [Mon, 4 Oct 2004 16:45:56 +0000 (16:45 +0000)]
Double oops.

19 years agoOops.
Martin Mares [Mon, 4 Oct 2004 16:45:24 +0000 (16:45 +0000)]
Oops.

19 years agoAdded sh_file_size() (stat() isn't reliable on large files on some systems).
Martin Mares [Mon, 4 Oct 2004 16:43:14 +0000 (16:43 +0000)]
Added sh_file_size()  (stat() isn't reliable on large files on some systems).

19 years agoIntroduced relative counterparts of url_canon_split() and url_auto_canonicalize().
Martin Mares [Sat, 2 Oct 2004 10:52:59 +0000 (10:52 +0000)]
Introduced relative counterparts of url_canon_split() and url_auto_canonicalize().

Also added parameter names to all prototypes.

19 years agoLet bskip() return success.
Martin Mares [Mon, 27 Sep 2004 19:49:00 +0000 (19:49 +0000)]
Let bskip() return success.

19 years agoobuck_slurp_pool() is now able to skip unwanted buckets. Some day we can
Martin Mares [Sun, 26 Sep 2004 16:09:18 +0000 (16:09 +0000)]
obuck_slurp_pool() is now able to skip unwanted buckets. Some day we can
improve it by sizing the buffer adaptively, but not now.

19 years agoA couple of minor improvements to the generic hash tables:
Martin Mares [Mon, 20 Sep 2004 10:03:23 +0000 (10:03 +0000)]
A couple of minor improvements to the generic hash tables:

o  Comment on HASH_GIVE_ALLOC corrected, the automatic choice between
   normal and pooled allocation was never implemented, because we don't
   have enough information to decide the right pool size. HASH_AUTO_POOL
   has been implemented instead.
o  Pooled allocation no longer conflicts with remove/delete, it just
   produces memory leaks within the pool, which are usually harmless.
o  Added HASH_TABLE_ALLOC switch.
o  Internal decisions to enable HASH_CONSERVE_SPACE were made too late
   and didn't influence hash node layout. Fixed.

19 years agoThoroughly tested and fixed a couple of bugs.
Martin Mares [Thu, 9 Sep 2004 11:52:09 +0000 (11:52 +0000)]
Thoroughly tested and fixed a couple of bugs.

19 years agoFixed a couple of bugs.
Martin Mares [Thu, 9 Sep 2004 10:47:05 +0000 (10:47 +0000)]
Fixed a couple of bugs.

19 years agoNo exceptions for url-equiv.
Martin Mares [Thu, 9 Sep 2004 10:46:12 +0000 (10:46 +0000)]
No exceptions for url-equiv.

19 years agotested MJ's patches on charconv. they successfully converted everything
Robert Spalek [Thu, 26 Aug 2004 12:52:15 +0000 (12:52 +0000)]
tested MJ's patches on charconv.  they successfully converted everything
I tried, including the tests that failed before

19 years ago- bugfix: when disabling compression, change bucket_type
Robert Spalek [Sat, 21 Aug 2004 16:30:02 +0000 (16:30 +0000)]
- bugfix: when disabling compression, change bucket_type
- lizard_bwrite() returns the final bucket_type instead of the number of
  written bytes

19 years agoadded sepsplit() in wordsplit.c
Robert Spalek [Sat, 21 Aug 2004 16:29:06 +0000 (16:29 +0000)]
added sepsplit() in wordsplit.c

19 years agoAdded initial support for areas to the indexer. Merging not restricted yet,
Martin Mares [Fri, 20 Aug 2004 19:38:31 +0000 (19:38 +0000)]
Added initial support for areas to the indexer. Merging not restricted yet,
but propagation of area ID's works.

19 years agoPut debug/custom last, so that one more manual recompile won't be needed after
Martin Mares [Fri, 20 Aug 2004 19:05:14 +0000 (19:05 +0000)]
Put debug/custom last, so that one more manual recompile won't be needed after
check-customs when debugging.

19 years agoCheck more configurations.
Martin Mares [Fri, 20 Aug 2004 19:04:17 +0000 (19:04 +0000)]
Check more configurations.

19 years agoif b?get_attr() returns 0, it clears attr->attr too
Robert Spalek [Fri, 20 Aug 2004 13:17:49 +0000 (13:17 +0000)]
if b?get_attr() returns 0, it clears attr->attr too

19 years agoa really essential bugfix
Robert Spalek [Fri, 20 Aug 2004 12:38:28 +0000 (12:38 +0000)]
a really essential bugfix

19 years agoUse GET_UTF8 instead of GET_UTF8_CHAR (this costs us an extra unnecessary
Martin Mares [Fri, 20 Aug 2004 11:44:08 +0000 (11:44 +0000)]
Use GET_UTF8 instead of GET_UTF8_CHAR (this costs us an extra unnecessary
test for character < 0x80, but it is worth the simplification).

19 years agoAdded unit tests for UTF8 macros.
Martin Mares [Fri, 20 Aug 2004 11:43:10 +0000 (11:43 +0000)]
Added unit tests for UTF8 macros.

19 years agoOptimized and simplified UTF8 macros. In fact, turned most of them
Martin Mares [Fri, 20 Aug 2004 11:42:43 +0000 (11:42 +0000)]
Optimized and simplified UTF8 macros. In fact, turned most of them
to inline functions.

This resulted in a couple of const/non-const problems, hence the casts
in GET_UTF8{,_32}.

19 years agorenamed attr_set_type() to put_attr_set_type()
Robert Spalek [Fri, 20 Aug 2004 09:41:00 +0000 (09:41 +0000)]
renamed attr_set_type() to put_attr_set_type()

19 years ago- added b?get_attr()
Robert Spalek [Fri, 20 Aug 2004 09:39:00 +0000 (09:39 +0000)]
- added b?get_attr()
- added {get,put}_attr_set_type()

19 years ago- added get_attr() and bget_attr() with get_attr_set_type()
Robert Spalek [Fri, 20 Aug 2004 09:36:53 +0000 (09:36 +0000)]
- added get_attr() and bget_attr() with get_attr_set_type()
- use get_utf8_32()

19 years ago- use put_utf8_32()
Robert Spalek [Fri, 20 Aug 2004 09:35:55 +0000 (09:35 +0000)]
- use put_utf8_32()
- attr_set_type() renamed to put_attr_set_type()

19 years ago- added {get,put}_utf8_32() for all full 6-byte codes
Robert Spalek [Fri, 20 Aug 2004 09:34:02 +0000 (09:34 +0000)]
- added {get,put}_utf8_32() for all full 6-byte codes
- fixed UTF8_SKIP_BWD(); it is never used
- upgraded utf8_space() and utf8_encoding_len()

19 years ago- do not try to compress when liz_min_compr == 0
Robert Spalek [Thu, 19 Aug 2004 18:32:24 +0000 (18:32 +0000)]
- do not try to compress when liz_min_compr == 0
- renamed function
- lizard_*read() tests EOF and invalid bucket_type

19 years agotypo
Robert Spalek [Thu, 19 Aug 2004 18:30:52 +0000 (18:30 +0000)]
typo

19 years agorenamed function
Robert Spalek [Thu, 19 Aug 2004 18:30:43 +0000 (18:30 +0000)]
renamed function

19 years agoA better implementation of vbprintf() which avoids copying if there is enough
Martin Mares [Thu, 19 Aug 2004 13:47:23 +0000 (13:47 +0000)]
A better implementation of vbprintf() which avoids copying if there is enough
room in the fastbuf's buffer.

19 years agoComparisons of type `if (f->bptr + length > f->bstop)' could overflow
Martin Mares [Thu, 19 Aug 2004 13:37:08 +0000 (13:37 +0000)]
Comparisons of type `if (f->bptr + length > f->bstop)' could overflow
if `length' was much larger than the buffer size and the buffer was situated
at the end of the address space. Solved by introducing bavail{r,w}() and
using it systematically.

19 years agobugfix in obuck_slurp_refill
Robert Spalek [Wed, 18 Aug 2004 10:28:40 +0000 (10:28 +0000)]
bugfix in obuck_slurp_refill

19 years agocards format has changed, do upgrade the version of the index
Robert Spalek [Tue, 17 Aug 2004 20:17:37 +0000 (20:17 +0000)]
cards format has changed, do upgrade the version of the index

19 years agoadded a module that supports transparent compression of data streamed into
Robert Spalek [Tue, 17 Aug 2004 20:12:05 +0000 (20:12 +0000)]
added a module that supports transparent compression of data streamed into
an output fastbuf.  on the other side, reading from the stream is also
transparent

* will be used for cards
* untested

19 years agoAccept V33_LIZARD buckets without body -- such buckets can legally
Martin Mares [Sun, 15 Aug 2004 14:14:55 +0000 (14:14 +0000)]
Accept V33_LIZARD buckets without body -- such buckets can legally
arise when shep-cleanup trims an inactive bucket.

Also added debugging messages which helped to verify that zero-copy
is really invoked where it should.

19 years agoAdded sync_dir().
Martin Mares [Sun, 15 Aug 2004 12:09:57 +0000 (12:09 +0000)]
Added sync_dir().

19 years agoAdded bfilesync().
Martin Mares [Sun, 15 Aug 2004 12:09:45 +0000 (12:09 +0000)]
Added bfilesync().

19 years agoMade `buckettool -x' show the header if in verbose mode.
Martin Mares [Sun, 15 Aug 2004 10:16:03 +0000 (10:16 +0000)]
Made `buckettool -x' show the header if in verbose mode.
Also use bbcopy_slow() for copying bucket contents.

19 years agoAdded obj_find_anum() which is obj_find_aval() combined with atol() and
Martin Mares [Sat, 14 Aug 2004 15:15:53 +0000 (15:15 +0000)]
Added obj_find_anum() which is obj_find_aval() combined with atol() and
a default value (this is a very common idiom at many places).

Added size_attr() which calculates size of a given attribute in the
current bucket format.

19 years agoUTF8_SPACE turned to an inline function.
Martin Mares [Sat, 14 Aug 2004 15:14:36 +0000 (15:14 +0000)]
UTF8_SPACE turned to an inline function.
Added utf8_encoding_length() which measures expected length of an UTF-8
sequence according to its first byte.

19 years agoobj_add_attr_ref() with an on-stack buffer is not advisable, better
Martin Mares [Thu, 5 Aug 2004 22:33:19 +0000 (22:33 +0000)]
obj_add_attr_ref() with an on-stack buffer is not advisable, better
allocate the buffer in the object pool.

19 years agoWhen reading, the data end at b->bstop, not b->bufend.
Martin Mares [Thu, 5 Aug 2004 22:32:30 +0000 (22:32 +0000)]
When reading, the data end at b->bstop, not b->bufend.

19 years agoBucket fastbuf's have to be seekable, since shep-reap seeks on them
Martin Mares [Thu, 5 Aug 2004 22:28:58 +0000 (22:28 +0000)]
Bucket fastbuf's have to be seekable, since shep-reap seeks on them
(although the seek will be inside the buffer [and thence optimized out
by bseek()] under all reasonable circumstances [it was triggered by
a bug in buck2obj]).

19 years agodo not read the whole bucket into memory if only header is needed
Robert Spalek [Thu, 5 Aug 2004 14:13:56 +0000 (14:13 +0000)]
do not read the whole bucket into memory if only header is needed

19 years agoNew attributes are now added at the end of the list.
Martin Mares [Thu, 5 Aug 2004 12:13:41 +0000 (12:13 +0000)]
New attributes are now added at the end of the list.

19 years agotiny bugfix :))
Robert Spalek [Tue, 20 Jul 2004 15:16:26 +0000 (15:16 +0000)]
tiny bugfix :))

19 years agotiny optimization: do not make 2 function calls in adler32()
Robert Spalek [Tue, 20 Jul 2004 10:15:31 +0000 (10:15 +0000)]
tiny optimization: do not make 2 function calls in adler32()

19 years agoFixed two bugs in parsing of buckets (one of them introduced by me a couple
Martin Mares [Fri, 16 Jul 2004 21:56:11 +0000 (21:56 +0000)]
Fixed two bugs in parsing of buckets (one of them introduced by me a couple
of hours ago, the other aged).

19 years agoBuckets of unknown format should be skipped properly, otherwise
Martin Mares [Fri, 16 Jul 2004 20:22:53 +0000 (20:22 +0000)]
Buckets of unknown format should be skipped properly, otherwise
bucket fetching can become confused.

19 years ago`buckettool -c' (cat) now separates buckets by an empty line.
Martin Mares [Fri, 16 Jul 2004 19:08:23 +0000 (19:08 +0000)]
`buckettool -c' (cat) now separates buckets by an empty line.

19 years agoParsing of PLAIN type buckets also ends after buck_len bytes.
Martin Mares [Fri, 16 Jul 2004 18:32:35 +0000 (18:32 +0000)]
Parsing of PLAIN type buckets also ends after buck_len bytes.
obj_read_multi() is gone.

19 years agoReading of V30 buckets was broken (for example it didn't work when a bucket
Martin Mares [Fri, 16 Jul 2004 18:18:02 +0000 (18:18 +0000)]
Reading of V30 buckets was broken (for example it didn't work when a bucket
had only header and no body). When fixing it, I've modified it to terminate
after buck_len bytes, so the terminating NUL character is no longer needed.

19 years agoprune the original source code yet more
Robert Spalek [Fri, 16 Jul 2004 11:46:06 +0000 (11:46 +0000)]
prune the original source code yet more

19 years agotiny bugfix
Robert Spalek [Fri, 16 Jul 2004 10:50:14 +0000 (10:50 +0000)]
tiny bugfix

19 years agotaken much faster implementation of Adler32 and put into a separate source-code
Robert Spalek [Fri, 16 Jul 2004 10:47:37 +0000 (10:47 +0000)]
taken much faster implementation of Adler32 and put into a separate source-code

19 years agoadd Adler32 checksum to compressed V33 buckets
Robert Spalek [Fri, 16 Jul 2004 10:39:04 +0000 (10:39 +0000)]
add Adler32 checksum to compressed V33 buckets

19 years agoadded adler32 functions
Robert Spalek [Fri, 16 Jul 2004 10:25:49 +0000 (10:25 +0000)]
added adler32 functions

19 years agoautomatically add 0x80000000 to bucket-type specified on the command-line
Robert Spalek [Fri, 16 Jul 2004 10:12:33 +0000 (10:12 +0000)]
automatically add 0x80000000 to bucket-type specified on the command-line

19 years agoimproved an error message to catch an error
Robert Spalek [Fri, 16 Jul 2004 09:07:50 +0000 (09:07 +0000)]
improved an error message to catch an error

19 years agoAdded {b,}put_attr_separator().
Martin Mares [Thu, 15 Jul 2004 21:52:29 +0000 (21:52 +0000)]
Added {b,}put_attr_separator().

19 years agoIntroduced late matchers and custom statistics [see Bug #860]. Converted
Martin Mares [Mon, 12 Jul 2004 14:13:23 +0000 (14:13 +0000)]
Introduced late matchers and custom statistics [see Bug #860]. Converted
FILETYPE to this mechanism, it's no longer an exception.

20 years agopools.h -> mempool.h
Martin Mares [Sat, 10 Jul 2004 21:05:27 +0000 (21:05 +0000)]
pools.h -> mempool.h

20 years agoI always wanted to rename the rather inconsistent memory pool modules.
Martin Mares [Sat, 10 Jul 2004 21:04:23 +0000 (21:04 +0000)]
I always wanted to rename the rather inconsistent memory pool modules.
After the big library earthquake I caused with my unicode.h changes,
this is the small fish, so let's go.

20 years agoArranged the module list.
Martin Mares [Sat, 10 Jul 2004 20:56:56 +0000 (20:56 +0000)]
Arranged the module list.

20 years agoMoved object reading and writing functions where they belong.
Martin Mares [Sat, 10 Jul 2004 20:46:55 +0000 (20:46 +0000)]
Moved object reading and writing functions where they belong.

20 years agoMany programs now don't need to link with libcharset.
Martin Mares [Sat, 10 Jul 2004 20:43:22 +0000 (20:43 +0000)]
Many programs now don't need to link with libcharset.

20 years agoRenamed fb-printf to ff-printf to keep fastbuf front-ends and back-ends apart.
Martin Mares [Sat, 10 Jul 2004 20:39:31 +0000 (20:39 +0000)]
Renamed fb-printf to ff-printf to keep fastbuf front-ends and back-ends apart.

20 years agoAdapted to new unicode includes.
Martin Mares [Sat, 10 Jul 2004 20:38:38 +0000 (20:38 +0000)]
Adapted to new unicode includes.

20 years agoAdjust includes.
Martin Mares [Sat, 10 Jul 2004 20:37:05 +0000 (20:37 +0000)]
Adjust includes.

20 years agoUnicode character type functions moved to charset/unicat.h
Martin Mares [Sat, 10 Jul 2004 20:36:55 +0000 (20:36 +0000)]
Unicode character type functions moved to charset/unicat.h
charset/unicode.h removed, because it's now empty.

20 years agoGone (some functions moved to the main lib, some were unused).
Martin Mares [Sat, 10 Jul 2004 20:36:06 +0000 (20:36 +0000)]
Gone (some functions moved to the main lib, some were unused).

20 years agoMoved the basic Unicode and UTF-8 functions to the main library.
Martin Mares [Sat, 10 Jul 2004 20:35:31 +0000 (20:35 +0000)]
Moved the basic Unicode and UTF-8 functions to the main library.

20 years agoMoved UTF-8 streams to lib/ff-utf8.[ch] (`ff' prefix will denote fastbuf
Martin Mares [Sat, 10 Jul 2004 20:34:27 +0000 (20:34 +0000)]
Moved UTF-8 streams to lib/ff-utf8.[ch]  (`ff' prefix will denote fastbuf
front-ends, `fb' will be the back-ends).

20 years agopatch obj_write{,_nocheck}() to use bput_attr_str() to support both V30 and V33 buckets
Robert Spalek [Sat, 10 Jul 2004 16:26:54 +0000 (16:26 +0000)]
patch obj_write{,_nocheck}() to use bput_attr_str() to support both V30 and V33 buckets

20 years agofbbuf_init_read() now has can_overwrite as an extra parameter.
Martin Mares [Tue, 6 Jul 2004 19:35:46 +0000 (19:35 +0000)]
fbbuf_init_read() now has can_overwrite as an extra parameter.

20 years agoUse bfilesize().
Martin Mares [Tue, 6 Jul 2004 11:18:48 +0000 (11:18 +0000)]
Use bfilesize().

20 years agoIntroduced bfilesize().
Martin Mares [Tue, 6 Jul 2004 11:18:27 +0000 (11:18 +0000)]
Introduced bfilesize().

20 years agoRemoved references to buck2obj.h and obj2buck.h.
Martin Mares [Tue, 6 Jul 2004 11:03:48 +0000 (11:03 +0000)]
Removed references to buck2obj.h and obj2buck.h.

20 years agoAdded #ifdef guards.
Martin Mares [Tue, 6 Jul 2004 11:03:25 +0000 (11:03 +0000)]
Added #ifdef guards.

20 years agoMerged obj2buck.h and buck2obj.h to object.h, the number of includes
Martin Mares [Tue, 6 Jul 2004 11:02:45 +0000 (11:02 +0000)]
Merged obj2buck.h and buck2obj.h to object.h, the number of includes
started to grow insane.

20 years agoNo need to test for NULL when reallocating.
Martin Mares [Tue, 6 Jul 2004 10:52:51 +0000 (10:52 +0000)]
No need to test for NULL when reallocating.

20 years agoAdded a note on xrealloc(NULL, x).
Martin Mares [Tue, 6 Jul 2004 10:52:31 +0000 (10:52 +0000)]
Added a note on xrealloc(NULL, x).

20 years agoUse bbuf.h.
Martin Mares [Tue, 6 Jul 2004 10:45:27 +0000 (10:45 +0000)]
Use bbuf.h.

20 years agoInclude <stdlib.h> to get free().
Martin Mares [Tue, 6 Jul 2004 10:45:09 +0000 (10:45 +0000)]
Include <stdlib.h> to get free().

20 years agoUse lib/bbuf.h here.
Martin Mares [Tue, 6 Jul 2004 10:44:43 +0000 (10:44 +0000)]
Use lib/bbuf.h here.

20 years agoApplications of gbuf.h to byte arrays are very common, so I've introduced
Martin Mares [Tue, 6 Jul 2004 10:44:20 +0000 (10:44 +0000)]
Applications of gbuf.h to byte arrays are very common, so I've introduced
a special include for them.

20 years agocan_overwrite_buffer fixes for bucket.c: added f->buffer resetting and
Martin Mares [Tue, 6 Jul 2004 10:36:47 +0000 (10:36 +0000)]
can_overwrite_buffer fixes for bucket.c: added f->buffer resetting and
also don't forget to set can_overwrite_buffer on slurp fastbufs (this
involves a little dirty trick, see the comment).

20 years agofb-limfd was setting can_overwrite_buffer=2, but it forgot to do the buffer
Martin Mares [Tue, 6 Jul 2004 10:24:21 +0000 (10:24 +0000)]
fb-limfd was setting can_overwrite_buffer=2, but it forgot to do the buffer
resetting magic needed by bdirect_read_commit_modified().

20 years agoComplain loudly if anybody asks us to generate buckets of an unknown
Martin Mares [Tue, 6 Jul 2004 10:19:44 +0000 (10:19 +0000)]
Complain loudly if anybody asks us to generate buckets of an unknown
type (this can happen e.g. in the buckettool).

20 years agoSmall improvements to buckettool:
Martin Mares [Tue, 6 Jul 2004 10:18:03 +0000 (10:18 +0000)]
Small improvements to buckettool:

  o  Options are sorted alphabetically.
  o  dump_oattr() replaced by dump_oattrs() which dumps all the
     attributes.
  o  ASSERT that the bucket type is known.

20 years ago- use buck2obj_parse() instead of obj_read_bucket() to separate the header
Robert Spalek [Sun, 4 Jul 2004 11:30:53 +0000 (11:30 +0000)]
- use buck2obj_parse() instead of obj_read_bucket() to separate the header
  and the body
- use the new interface for writing the attributes to the buckets

20 years agowriting attributes to buckets totally rewritten according to MJ's remarks
Robert Spalek [Sun, 4 Jul 2004 11:29:54 +0000 (11:29 +0000)]
writing attributes to buckets totally rewritten according to MJ's remarks

20 years ago- obj_parse_dump() generalized to store apart the header and the body, and
Robert Spalek [Sun, 4 Jul 2004 11:29:17 +0000 (11:29 +0000)]
- obj_parse_dump() generalized to store apart the header and the body, and
  renamed to buck2obj_parse()
- added new obj_parse_dump() with the same interface as before; it is a
  wrapper of buck2obj_parse()

20 years agoa typo and FIXME
Robert Spalek [Mon, 28 Jun 2004 15:46:45 +0000 (15:46 +0000)]
a typo and FIXME

20 years agonow, I have no contribution into the fastbuf code :))
Robert Spalek [Mon, 28 Jun 2004 15:40:03 +0000 (15:40 +0000)]
now, I have no contribution into the fastbuf code :))

20 years agoAdapted buck2obj to the new rewritable buffers. I don't like too much
Martin Mares [Mon, 28 Jun 2004 15:07:56 +0000 (15:07 +0000)]
Adapted buck2obj to the new rewritable buffers. I don't like too much
what I did with the `copied' variable, but I didn't know better.

Also, I've added the missing bdirect commits.

20 years agoA better implementation of overwritable buffers.
Martin Mares [Mon, 28 Jun 2004 15:06:40 +0000 (15:06 +0000)]
A better implementation of overwritable buffers.

20 years agoone mis-commit fixed
Robert Spalek [Mon, 28 Jun 2004 13:59:03 +0000 (13:59 +0000)]
one mis-commit fixed