1* 2015-07-31, libpreludedb-1.2.6:
2
3No new changes.
4
5
6
7* 2015-07-27, libpreludedb-1.2.6rc5:
8
9Author: Yoann Vandoorselaere
10
11- Remove deprecated API
12
13    Remove deprecated old *_get_next_* functions.
14    Remove deprecated low-level bindings.
15
16- Performance improvements
17
18    - SWIG Python now uses builtin mode (massive performance improvements)
19
20    - Optimisation work: reduce the number of allocations when fetching rows
21
22    - Cache preludedb_sql_table_get_(row|column)_count()
23
24    - New value fetch mode: use of preludedb_result_values_get_field_direct()
25      by bindings optimizes translation from C to target language value
26
27- AdditionalData fixes
28
29    - Fix memory leak on AdditionalData retrieval
30
31    - [#628] Fix AdditionalData retrieval failure
32
33    - Correctly retrieve the AdditionalData type from database
34
35- Other
36
37    - Add missing C++ operator
38
39    - Add getType() wrapper for preludedb_sql_get_type() function
40
41    - [#723] Fix version checking on 32 bits system
42
43    - [#650, #ext608] Fix warnings with PostgreSQL string insertion
44
45    - [#593] Year extraction was not working
46
47    - [#723] Fix version checking on 32 bits system
48
49
50
51* 2014-10-27, libpreludedb-1.2.6rc4:
52
53Author: Yoann Vandoorselaere
54
55- MySQL: fix invalid field length
56
57- Fix possible NULL pointer dereference
58
59- Fix memory leaks
60
61- Fix memory (over) allocation for SQL fields
62
63- Support self argument to IDMEFValue_to_SWIG for future builtin compatibility
64
65- Add API safety checks
66
67- Make sure the results are not empty when calling db backend function
68
69- Update GnuLib code to include memrchr
70
71- Support time extraction on selected fields
72
73- When there are multiple fields, apply order/group_by to each field
74
75    Additionally, when a GROUP BY occur on create_time, ignore
76    gmtoff and usec fields, since the result wouldn't be reliable.
77
78- Fix issues with fields internally expanded to multiples fields
79
80    Fix a problem with invalid fields returned, in query on specific
81    fields that were expanded to multiple fields.
82
83- Correctly throw PreludeDB exception in Python
84
85- Error checking fixes, use ENOSYS in place of ENOTSUP
86
87Author: Antoine Luong
88
89- Force default include path for high-level Python binding
90
91- Fix #436: allow serial_version to be 0 when level_version is final
92
93
94
95* 2014-10-15, libpreludedb-1.2.6rc3:
96
97Author: Yoann Vandoorselaere
98
99- Unlock Python GIL before calling libpreludedb function
100
101  Some libpreludeDB function are blocking, so we don't want long
102  request to completly lock the interpreter.
103
104- Prevent version check failure in case of localisation change
105
106- Use --lgpl=2 when invoking GnuLib, remove obsolete GnuLib files
107
108- PreludeDB high level C++ and Python bindings
109
110  Implemented high level Python2 and 3 bindings for libpreludedb.
111  The main API, DB and SQL are supported.
112
113Author: Thomas Andrejak
114
115- Some distribution like CentOS do not use default include path from the system, force it for swig
116
117
118
119* 2014-09-23, libpreludedb-1.2.6rc2:
120
121Author: Yoann Vandoorselaere
122
123- Change update API so that it uses idmef_path_t and idmef_value_t
124  This allows the backend to handle the escaping of passed value.
125
126- Move old C based bindings to bindings/low-level directory
127
128- Update GnuLib code
129
130- Change preludedb_strerror() so that it never returns NULL
131
132- PreludeDB ResultValues / ResultIdents API update
133
134    - Make it possible to retrieve a specific row/field located at a given index
135    - Update the preludedb_path_selection API, so that it use an array to store element
136    - Refcounting support
137
138- SQL API / Plugin rework
139
140- Provide more version number information (major, minor, micro, level, serial)
141
142
143
144* 2014-09-16, libpreludedb-1.2.6rc1:
145
146Author: Yoann Vandoorselaere
147
148- UPDATE API support
149
150    Introduce 3 new public functions in the API to support UPDATE commands,
151    using the provided list of paths and their respective values.
152
153	The _update_from_list and _update_from_result_idents functions
154	apply the update to messages identified by the provided idents,
155	and the _update function to any event matching the provided
156	criteria / order / limit / offset.
157
158    preludedb-admin is also updated so that the update commands
159	can be used from the command line.
160
161- Support for retrieving database type and server version
162
163
164
165* 2014-07-07, libpreludedb-1.2.5:
166
167- Use new libprelude PRELUDE_SCN* definition
168
169- Handle NULL input on preludedb_sql_escape_fast() and preludedb_sql_escape_binary()
170
171- Fix AdditionalData insertion/retrieval
172
173- Use PQescapeStringConn() in place of PQescapeString() when available
174
175- Fix warnings and error on PostgreSQL ByteA insertion
176
177    Use the E'%s' ByteA insertion method with our own escaping function,
178    since this method is not compatible with PQescapeByteaConn().
179
180- Improve sscanf() error check
181
182- Remove rhel6 packaging
183
184- Move Python command to a Python specific Makefile, filename fixes
185
186- Fix compile warnings
187
188- Fix configure script generation, and update GnuLib code
189
190    Modify configure.in to fit latest autoconf / automake change.
191    Configure script generation and make distcheck now work again.
192    Update GnuLib code.
193    Update various autoconf macros, and gtk-doc build files.
194
195
196
197* 2012-08-08, libpreludedb-1.0.2:
198
199- Change TYPE to ENGINE in mysql.sql (requires MySQL >= 4.0.18)
200
201
202
203* 2012-06-01, libpreludedb-1.0.1:
204
205- Changed copyright
206
207- Added packaging for rhel6
208
209- Call prelude_transaction_abort() on empty IDMEF message.
210
211  When trying to insert a message containing no alert/heartbeat,
212  the database would remain locked since preludedb_transaction_abort()
213  was not called.
214
215- Whitespace police
216
217- C++ compilation fixes
218
219  Include required dependencies, and add missing cast to preludedb-error.h
220
221- Fixed some compile errors with g++
222
223
224* 2010-03-16, libpreludedb-1.0.0:
225
226- No changes since rc1.
227
228
229* 2010-01-29, libpreludedb-1.0.0rc1:
230
231- Fixes insertion failure for ProcessEnv
232
233- Retrieve the correct table for application of Time criteria. The old
234  implementation could use the CreateTime table in place of a DetectTime
235  table, when asked for the table handling a detect_time element.
236
237- [preludedb-admin]: Do not account for EOF in loaded messages
238  statistics
239
240- [preludedb-admin]: Fix a problem where the offset was not correctly
241  calculated when retrieving events to be copied, if the number of
242  events copied in the previous transaction didn't exceed the
243  events_per_transaction limit.
244
245- [preludedb-admin]: Correctly propagate error return on loaded messages
246  read error. Fix a possible crash in case of invalid input message.
247
248- [preludedb-admin]: Fix events deletion/move bugs. When deleting events
249  without specifying the --count parameters, only half of the events
250  would be moved/deleted.
251
252
253
254* 2009-07-15, libpreludedb-0.9.15.3:
255
256- libpreludedb distribution was missing SWIG generated bindings.
257
258
259* 2009-07-10, libpreludedb-0.9.15.2:
260
261- Fix regression introduced in libpreludedb 0.9.15:
262  libpreludedb-config --plugin-dir would return incorrect result.
263
264- Improve mysql, postgresql, and sqlite3 detection method, should
265  work on 64 bits architecture, and make it easy to cross compile.
266
267- Minor fixes.
268
269
270* 2008-09-09, libpreludedb-0.9.15.1:
271
272- Fix handling of preludedb-admin --offset parameter.
273
274
275* 2008-08-27, libpreludedb-0.9.15:
276
277- preludedb-admin has a bew 'count' command, printing the result of a
278  COUNT() on the database.
279
280- preludedb-admin work on smaller set of data, to prevent large
281  retrieval error (fix #220, refs #305).
282
283- preludedb-admin handling of interrupted transaction was improved.
284
285- Fix MySQL and SQLite MacOSX detection, by
286  Uwe Schwartz <usx303 at googlemail.com>. (fix #296).
287
288- Check PostgreSQL version is higher or equal than 8.2.0, and use the
289  new E'value' escape method when available to avoid a warning.
290
291
292* 2008-01-03, libpreludedb-0.9.14.1:
293
294- Fix PostgreSQL upgrade script (fix #271).
295
296
297* 2007-12-19, libpreludedb-0.9.14:
298
299- Improved thread safety: all query are now mutex protected, and the
300  mutex won't be released until the transaction is over.
301
302- Use TEXT in place of VARCHAR for alert.assessment.impact.description (fix #265).
303
304- Fix OpenBSD compilation issue, thanks Alexandre Anriot <aanriot@atlantilde.com>
305  for pointing out this (fix #227).
306
307- [preludedb-admin] Make it possible to specify an offset with no limit.
308
309- [mysql] Prevent MySQL session from timing out after 8 hours of inactivity.
310
311- [pgsql] Fix PostgreSQL warning when inserting binary data.
312
313- [preludedb-admin] Fix a problem handling the offset option with the
314  load command.
315
316- [preludedb-admin] Fix possible wraparound in statistics computation
317  code.
318
319- Allow Python threads to run while executing libpreludedb C function.
320
321
322* 2007-08-20, libpreludedb-0.9.13:
323
324- Source and Target now use a 16 bits index (required for CorrelationAlert with
325  large number of source/target). CorrelationAlert Alertident now use a 32 bits
326  index (required to link large number of Alert together).
327
328- Fix compilation on system without ENOTSUP (fix #227):
329  Include modified patch from Alexandre Anriot <aanriot@atlantilde.com>.
330
331- [pgsql] Patch by Pierre Chifflier <chifflier@inl.fr>, that fixes type
332  conversions preventing PostgreSQL to use indexes (fix #225).
333
334- [preludedb-admin] Use separate alert / heartbeat command: this is done to
335  have a coherent implementation of the --offset and --count command line
336  options.
337
338- [preludedb-admin] Fix --offset with the load command.
339
340- [preludedb-admin] Give the delete table a decent size, should speedup the
341  delete command.
342
343- [documentation] preludedb-admin manpage (fix #230), by Pierre Chifflier
344  <chifflier@inl.fr>.
345
346
347* 2007-03-17, libpreludedb-0.9.12:
348
349        - [sqlite3] Provide case-insensitive regex.
350
351        - [preludedb-admin] Loading of multiple file and improved reporting.
352
353        - Provide substring match for AdditionalData value.
354
355        - Fix insertion issue for ProcessArg and File Linkage.
356
357        - Fix a bug when retrieving an empty time field (following retrieved fields
358          where not the one expected).
359
360        - When a given SQL function is not implemented by the driver, return a detailed
361          error message with information concerning the missing function.
362
363        - Implement Python only get_values, get_heartbeat_idents, get_alert_idents.
364          Return the number of rows as well as the rows in a tupple.
365
366        - Make sure we have an exception to process: fix a crash with Python bindings
367          upon signal reception. Fix #200.
368
369
370* 2007-02-07, libpreludedb-0.9.11.3:
371
372        - Fix invalid free() in the SQLite plugin.
373
374        - Fix preludedb-admin copy/move operations.
375
376
377* 2007-01-08, libpreludedb-0.9.11.2:
378
379        - Fix make installation error when Perl bindings are disabled.
380
381
382* 2007-01-05, libpreludedb-0.9.11.1:
383
384        - Prevent binding generation error when using old SWIG version.
385
386        - Generate bindings for the error handling API.
387
388        - Small Perl/Python detection improvement. Fix #182.
389
390        - Fix bindings compilation when using make -j.
391
392        - New configure --with-perl-installdirs flags: might be used to override
393          default site perl installation.
394
395        - Various bug fixes.
396
397
398* 2006-12-20, libpreludedb-0.9.11:
399
400        - Avoid using GNU sed extension when generating postgresql/sqlite schema.
401
402        - Fix a Python binding memory leak upon alert list deletion.
403
404        - Compile and run on OS X.
405
406        - Various bugfixes.
407
408        - Various portability fixes.
409
410
411* 2006-10-06, libpreludedb-0.9.10:
412
413        - Fix PostgreSQL schema update version 5.
414
415        - Only export symbol starting with preludedb_.
416
417        - Verbose error reporting in case of libpreludedb initialization failure.
418
419
420* 2006-08-11, libpreludedb-0.9.9:
421
422        - Implement an idea from Lex van Roon <r3boot@r3blog.nl.eu.org> providing
423          an alert/heartbeat deletion performance improvement in the order of
424          3000% (preludedb-admin already benefit from it, next Prewikka release
425          will benefit from it too).
426
427        - Fix --with-(perl|python|swig) detection path ordering.
428
429        - Verbose error reporting on logfile opening error.
430
431        - Various bug fixes.
432
433
434* 2006-07-03, libpreludedb-0.9.8.1:
435
436        - Bump database schema version (fix invalid database version error).
437
438
439* 2006-06-06, libpreludedb-0.9.8:
440
441        - Always use prelude_escape_binary() when inserting additional data, even in case
442          we're inserting a string, since the database field might be of a type that require
443          binary kind of escaping. Fix #143.
444
445        - Implement reading of message_processing_model, security_model, security_level.
446          Handling of community member is deprecated (IDMEFv16 update).
447
448        - Fix a bug where Service->ip_version would not be read from database.
449
450        - Upon connection to a PostgreSQL database, set default date style to ISO:
451          this is needed since libpreludedb assume ISO format to parse database timestamp.
452          Fix #140.
453
454        - Error reporting improvement.
455
456
457* 2006-03-30, libpreludedb-0.9.7.1:
458
459        - Flush the SQL query logfile after each query.
460
461        - Add --events-per-transaction option to preludedb-admin, default
462          value is 1000, which prevent heavy VM pressure on large database
463          operation.
464
465
466* 2006-03-24, libpreludedb-0.9.7:
467
468        - Fix Perl/Python bindings uint64 handling on 32 bits machine.
469
470        - Make preludedb_check_version available from Perl/Python bindings.
471
472        - Use new IDMEF_LIST_APPEND primitive, require libprelude 0.9.6.
473
474        - Add libprelude dependencie to SQL plugins, since they depend on
475          libprelude symbols. Fix compilation problem with some distribution.
476
477        - Use global transaction surrounding all operation in preludedb-admin,
478          this bring a major performance improvement for insert operation.
479
480        - Fix PostgreSQL FileAccess query failure.
481
482        - Dynamic PostgreSQL schema generation (this fix certain inefficient
483          datatype that were used in the old version). Update schema would be hard
484          to do for all postgreSQL version, thus using preludedb-admin copy for
485          the update is required.
486
487        - API improvement.
488
489
490* 2006-03-08, libpreludedb-0.9.6:
491
492        - Fix PostgreSQL plugin compilation problem.
493
494        - Update database schema: enforce that AdditionalData data field is not NULL.
495
496        - Improve Swig basic type mapping situation regarding to the target architecture.
497
498        - Fix query time calculation.
499
500
501* 2006-02-22, libpreludedb-0.9.5.1:
502
503        - Correctly read database schema version.
504
505
506* 2006-02-22, libpreludedb-0.9.5:
507
508        - Fix important memory leak in Python bindings, Prewikka should end-up
509          consuming way less memory than it used to.
510
511        - Fix PostgreSQL plugin compilation problem.
512
513        - Fix for preludedb-admin --count handling when --offset was used.
514
515        - Provide more information in preludedb-admin error message.
516
517        - Various cleanup.
518
519
520* 2006-02-08, libpreludedb-0.9.4:
521
522        - Fix for filtering IDMEF field using the '!=' operator, which resulted in
523          filtering of events where the field did not exist (#129).
524
525        - Implement a "move" command in preludedb-admin.
526
527        - When SQL query logging is enabled, log the time taken to execute the query.
528
529        - Improve plugin API by making it opaque so that existing plugin don't break
530          if we add more SQL plugin function.
531
532        - Verbose error reporting, make the plugin error API viable for more drivers.
533
534        - Fix error reporting from perl and python bindings.
535
536        - Make libpreludedb header files c++ compiler friendly.
537
538        - Enforce listed IDMEF value ordering. IDMEF value were sometime unordered
539          because of an uninitialized list position problem.
540
541
542
543* 2005-01-16, libpreludedb-0.9.3:
544
545        - SQLite support.
546
547        - More accurate error reporting in preludedb-admin.
548
549        - Fix NULL error in case the buffer is too small, truncate.
550
551        - Fix license notice, stating clearly that linking from a program
552          using a GPL compatible license is allowed. Required for Debian package
553          inclusion.
554
555
556
557* 2005-12-12, libpreludedb-0.9.2:
558
559        - Fix character escaping issue with two consecutive backslash
560          followed by a wildcard (we were escaping the wildcard, which
561          is not supposed to be escaped in this case).
562
563
564* 2005-11-28, libpreludedb-0.9.1:
565
566        - Fix automated reconnection to the database server.
567
568        - Allow saving to standard output with preludedb-admin.
569
570        - Make preludedb-admin delete command safer to use: forbid deletion
571          unless a criteria is provided.
572
573        - Workaround invalid library run path added through MakeMaker generated Makefile.
574
575        - Fix Perl bindings Makefile generated with DESTDIR appended twice.
576
577
578* 2005-09-20, libpreludedb-0.9.0:
579
580        - 0.9.0 final.
581
582        - Make Perl/Python bindings more fault tolerant.
583
584
585* 2005-09-15, libpreludedb-0.9.0-rc14:
586
587        - Correct Python bindings exception handling.
588
589        - Fix alert saving in preludedb-admin.
590
591        - Perl bindings would fail to compile if perl was compiled using
592          the platform (non gcc) compiler.
593
594        - Fix warnings.
595
596
597* 2005-08-25, libpreludedb-0.9.0-rc13:
598
599        - Fix broken table comparison.
600
601        - Empty additional data are valid.
602
603
604* 2005-08-17, libpreludedb-0.9.0-rc12:
605
606        - Fix preludedb-admin link on some systems.
607
608
609* 2005-08-17, libpreludedb-0.9.0-rc11:
610
611        - More useful Python exception on PreludeDB error.
612
613        - Fix insertion of FileAccess Permission.
614
615        - Add missing retrieval of UserID tty.
616
617        - Fine grained libprelude operator now allow us to have similar behavior
618          between different database implementation.
619
620        - Support for more operator, including case insensitive version of most
621          operator, and a new regexp operator.
622
623        - Fix invalid UTC offset applied to broken down time match.
624
625        - New preludedb-admin tool. Allow save/load/delete/copy/print of PreludeDB database.
626
627        - When no database password is set, don't default to "prelude".
628          This failed on user trying to access a database with no password.
629
630
631* 2005-08-02, libpreludedb-0.9.0-rc10:
632
633        - Include missing database schema update.
634
635
636* 2005-08-01, libpreludedb-0.9.0-rc9:
637
638        - Fix IDMEF SNMPService mapping problem.
639
640        - Fix IDMEF FileAccess permission mapping problem.
641
642        - Set close on exec flags on the logging file descriptor.
643
644        - Escape '%' character within query, since the caller is expected to use '*'.
645
646
647* 2005-07-08, libpreludedb-0.9.0-rc8:
648
649        - Fix Perl bindings Makefile generation with some MakeMaker version.
650
651        - Use GnuLib for portability issue.
652
653        - Handle broken down criteria match.
654
655        - Improve error reporting.
656
657        - Various bugfixes.
658
659
660* 2005-05-30, libpreludedb-0.9.0-rc7:
661
662        - Fix alert deletion query issue.
663
664
665* 2005-05-30, libpreludedb-0.9.0-rc6:
666
667        - Fix portability problem with %hh convertion specifier (exampe: Solaris
668          selection problem).
669
670        - Fix potential problem on 64 bits systems.
671
672        - Fix IDMEF FileAccess insertion.
673
674        - Fix bad indexes.
675
676        - Improve DELETE operation speed.
677
678        - Handle IDMEFv14 file_type attribute.
679
680        - Fix several PostgreSQL incompatibility in generated request.
681
682        - Update PostrgreSQL schema.
683
684        - Various bugfix.
685
686
687* 2005-04-17, libpreludedb-0.9.0-rc5:
688
689        - Fix truncated error code on some INSERT.
690
691        - Handle confidence as a float, not as an integer.
692
693        - Fix GMT offset and USEC invertion.
694
695        - Fix checksum field insertion.
696
697        - Fix PgSQL schema update.
698
699        - Update PgSQL/MySQL schema version.
700
701
702* 2005-04-09, libpreludedb-0.9.0-rc4:
703
704        - Fix error with bindings Makefile when using BSD make.
705
706        - Add missing 'info' severity to the MySQL schema.
707          Provide a schema for upgrading.
708
709        - Check database schema version on initialization.
710
711        - Fix broken libpreludedb.m4 detection routine.
712
713        - Fix Perl/Python bindings regeneration problem.
714
715        - Fix database schema for MySQL 3.23.
716
717        - Fix broken MySQL error check.
718
719
720* 2005-03-31, libpreludedb-0.9.0-rc3:
721
722        - Fix PgSQL plugin loading problem.
723
724
725* 2005-03-31, libpreludedb-0.9.0-rc2:
726
727        - Fix Python/Perl bindings linking order. Was linking to old version
728          of the library on system where old libprelude-0.8 was installed.
729
730        - Fix an issue with the Perl bindings on make clean.
731
732
733* 2005-03-29, libpreludedb-0.9.0-rc1:
734
735        - Initial release.
736
737