]> git.ipfire.org Git - thirdparty/kea.git/log
thirdparty/kea.git
13 years ago[master] changelog for #2934
JINMEI Tatuya [Thu, 23 May 2013 23:07:21 +0000 (16:07 -0700)] 
[master] changelog for #2934

13 years ago[master] Merge branch 'trac2934'
JINMEI Tatuya [Thu, 23 May 2013 22:19:26 +0000 (15:19 -0700)] 
[master] Merge branch 'trac2934'

13 years ago[2934] explicitly specify the relative path in "." statement.
JINMEI Tatuya [Thu, 23 May 2013 22:18:33 +0000 (15:18 -0700)] 
[2934] explicitly specify the relative path in "." statement.

there seems to be a portability issue without it.

13 years ago[2522] revised "copy" test for SSHFP: make sure to use assignment, not copy.
JINMEI Tatuya [Thu, 23 May 2013 22:07:29 +0000 (15:07 -0700)] 
[2522] revised "copy" test for SSHFP: make sure to use assignment, not copy.

13 years ago[2522] minor style matter: brace position
JINMEI Tatuya [Thu, 23 May 2013 22:07:16 +0000 (15:07 -0700)] 
[2522] minor style matter: brace position

13 years ago[2850] style matter: combined two short lines.
JINMEI Tatuya [Thu, 23 May 2013 20:35:26 +0000 (13:35 -0700)] 
[2850] style matter: combined two short lines.

13 years ago[2955] Added missing definition of static member in D2 unit test.
Thomas Markwalder [Thu, 23 May 2013 15:08:53 +0000 (11:08 -0400)] 
[2955] Added missing definition of static member in D2 unit test.

13 years ago[master] Added ChangeLog entry for #2902.
Marcin Siodelski [Thu, 23 May 2013 14:44:02 +0000 (16:44 +0200)] 
[master] Added ChangeLog entry for #2902.

13 years ago[master] Workaround for the FreeBSD bug resulting in IfaceMgr test failure
Marcin Siodelski [Thu, 23 May 2013 14:29:59 +0000 (16:29 +0200)] 
[master] Workaround for the FreeBSD bug resulting in IfaceMgr test failure

This disables the test to receive data over a closed socket on BSD systems.
The 8.1-RELEASE version of FreeBSD has a bug which causes select() not to
return EBADF error code when invalid socket descriptor is provided. The
bug number is kern/155606.

13 years ago[2852] Remove unused variable
Mukund Sivaraman [Tue, 7 May 2013 06:22:09 +0000 (11:52 +0530)] 
[2852] Remove unused variable

13 years ago[2852] Add API for resetting a memory segment to ConfigurableClientList
Mukund Sivaraman [Thu, 16 May 2013 14:20:43 +0000 (19:50 +0530)] 
[2852] Add API for resetting a memory segment to ConfigurableClientList

13 years ago[2522] a couple more TSIG and SSHFP unit tests
Paul Selkirk [Thu, 23 May 2013 13:36:26 +0000 (09:36 -0400)] 
[2522] a couple more TSIG and SSHFP unit tests

13 years ago[2955] Makefile additions for new D2 files.
Thomas Markwalder [Thu, 23 May 2013 12:31:58 +0000 (08:31 -0400)] 
[2955] Makefile additions for new D2 files.

13 years ago[master] Include socket descriptor equal 0 as a valid one.
Marcin Siodelski [Thu, 23 May 2013 11:19:30 +0000 (13:19 +0200)] 
[master] Include socket descriptor equal 0 as a valid one.

The socket function returns socket descriptor on success and value of -1
on error. This implies that 0 is a valid socket descriptor and the unit
test which verifies it should treat 0 as success. Previous version of
IfaceMgr unit test expected positive result.

13 years ago[master] Merge branch 'trac2902'
Marcin Siodelski [Thu, 23 May 2013 09:38:16 +0000 (11:38 +0200)] 
[master] Merge branch 'trac2902'

Conflicts:
src/lib/dhcp/Makefile.am

13 years ago[2930] Include forgotten note about not blocking
Michal 'vorner' Vaner [Thu, 23 May 2013 08:51:12 +0000 (10:51 +0200)] 
[2930] Include forgotten note about not blocking

13 years ago[2930] Replace example for a more obvious one
Michal 'vorner' Vaner [Thu, 23 May 2013 08:47:45 +0000 (10:47 +0200)] 
[2930] Replace example for a more obvious one

13 years ago[2930] Adjust terminology in docs
Michal 'vorner' Vaner [Thu, 23 May 2013 08:39:52 +0000 (10:39 +0200)] 
[2930] Adjust terminology in docs

So it is the same as in the ipc-high.txt.

13 years ago[master] ChangeLog for merge of trac2653
Stephen Morris [Tue, 21 May 2013 13:56:51 +0000 (14:56 +0100)] 
[master] ChangeLog for merge of trac2653

13 years ago[trac2653] escape double-dash so isn't converted to ndash entity
Jeremy C. Reed [Tue, 14 May 2013 22:08:28 +0000 (17:08 -0500)] 
[trac2653] escape double-dash so isn't converted to ndash entity

because can't copy and paste as it was

13 years ago[2653] Added documentation as to how to create the test DHCP database
Stephen Morris [Mon, 13 May 2013 14:56:58 +0000 (15:56 +0100)] 
[2653] Added documentation as to how to create the test DHCP database

13 years ago[2905] corrected a member variable of example code in doxygen doc.
JINMEI Tatuya [Wed, 22 May 2013 20:25:48 +0000 (13:25 -0700)] 
[2905] corrected a member variable of example code in doxygen doc.

13 years ago[2905] clarify the case we pass NULL to ZoneWriter::load() in comments.
JINMEI Tatuya [Wed, 22 May 2013 20:08:21 +0000 (13:08 -0700)] 
[2905] clarify the case we pass NULL to ZoneWriter::load() in comments.

13 years ago[2905] revised a doxygen code example so it'll be more consistent overall.
JINMEI Tatuya [Wed, 22 May 2013 20:03:56 +0000 (13:03 -0700)] 
[2905] revised a doxygen code example so it'll be more consistent overall.

13 years ago[2905] updated test comments for more clarity
JINMEI Tatuya [Wed, 22 May 2013 20:01:38 +0000 (13:01 -0700)] 
[2905] updated test comments for more clarity

13 years ago[2905] revised an exception what() message to be hopefully more unstandable.
JINMEI Tatuya [Wed, 22 May 2013 19:59:29 +0000 (12:59 -0700)] 
[2905] revised an exception what() message to be hopefully more unstandable.

13 years ago[2905] refer relevant documentation for ZoneTable::FindResult
JINMEI Tatuya [Wed, 22 May 2013 18:29:12 +0000 (11:29 -0700)] 
[2905] refer relevant documentation for ZoneTable::FindResult

it's described in the context of findZone() method.

13 years ago[2905] preserved existing ZoneNode flag values for ZoneData.
JINMEI Tatuya [Wed, 22 May 2013 18:24:57 +0000 (11:24 -0700)] 
[2905] preserved existing ZoneNode flag values for ZoneData.

added a note on the numbering.
and made one piggyback cleanup: define public static const explicitly.

13 years ago[2902] Defined constant replacing ETHERTYPE_IP.
Marcin Siodelski [Wed, 22 May 2013 18:07:12 +0000 (20:07 +0200)] 
[2902] Defined constant replacing ETHERTYPE_IP.

The ETHERTYPE_IP is defined in different header files on different OSes.
Since it is just a single constant that is needed, it is not practical
to locate the proper header file in configure.ac to pull single constant.

13 years ago[2930] style fix: folded long lines
JINMEI Tatuya [Wed, 22 May 2013 17:58:47 +0000 (10:58 -0700)] 
[2930] style fix: folded long lines

13 years ago[2395] Created the initial, bare-bones implementation DHCP-DDNS service
Thomas Markwalder [Wed, 22 May 2013 17:24:25 +0000 (13:24 -0400)] 
[2395] Created the initial, bare-bones implementation DHCP-DDNS service
process class, D2Process, and the abstract class from which it derives,
DProcess. This class provides DHCP-DDNS specific event loop and business
logic.

The following new files have been added:

   src/bin/d2/d_process.h - defines the DProcess base class
   src/bin/d2/d2_process.h - defines the D2Process class
   src/bin/d2/d2_process.cc - implements the D2Process class
   src/bin/d2/tests/d2_process_unittests.cc - initial unit tests

13 years ago[2902] Changes as a result of the second review.
Marcin Siodelski [Wed, 22 May 2013 15:50:33 +0000 (17:50 +0200)] 
[2902] Changes as a result of the second review.

13 years ago[master] Added ChangeLog entry for #2786.
Marcin Siodelski [Wed, 22 May 2013 11:09:30 +0000 (13:09 +0200)] 
[master] Added ChangeLog entry for #2786.

13 years ago[2930] Test empty params in python
Michal 'vorner' Vaner [Wed, 22 May 2013 10:33:21 +0000 (12:33 +0200)] 
[2930] Test empty params in python

13 years ago[2930] Update python docs to match the C++ ones
Michal 'vorner' Vaner [Wed, 22 May 2013 09:37:33 +0000 (11:37 +0200)] 
[2930] Update python docs to match the C++ ones

13 years ago[2930] Add test for missing parameters
Michal 'vorner' Vaner [Wed, 22 May 2013 09:22:07 +0000 (11:22 +0200)] 
[2930] Add test for missing parameters

13 years ago[2930] Doxygen update
Michal 'vorner' Vaner [Wed, 22 May 2013 09:17:48 +0000 (11:17 +0200)] 
[2930] Doxygen update

Clarify few points in the method's doxygen comment.

13 years ago[2930] Update docs for notifications
Michal 'vorner' Vaner [Wed, 22 May 2013 09:14:09 +0000 (11:14 +0200)] 
[2930] Update docs for notifications

The group prefix is now lower-case.

13 years ago[master] Merge branch 'trac2786'
Marcin Siodelski [Wed, 22 May 2013 08:57:32 +0000 (10:57 +0200)] 
[master] Merge branch 'trac2786'

13 years ago[2786] Trivial: updated copyright date.
Marcin Siodelski [Wed, 22 May 2013 08:55:55 +0000 (10:55 +0200)] 
[2786] Trivial: updated copyright date.

13 years ago[2902] Further cleanup as a result of the review.
Marcin Siodelski [Wed, 22 May 2013 07:54:57 +0000 (09:54 +0200)] 
[2902] Further cleanup as a result of the review.

13 years ago[2902] dhcp4_srv Unit tests cleanup.
Marcin Siodelski [Wed, 22 May 2013 07:14:42 +0000 (09:14 +0200)] 
[2902] dhcp4_srv Unit tests cleanup.

13 years ago[2522] TSIG documentation, TSIG unit test string constructors
Paul Selkirk [Wed, 22 May 2013 03:02:46 +0000 (23:02 -0400)] 
[2522] TSIG documentation, TSIG unit test string constructors

13 years ago[2930] style fix: postion of &
JINMEI Tatuya [Tue, 21 May 2013 22:45:17 +0000 (15:45 -0700)] 
[2930] style fix: postion of &

13 years ago[2905] updated lettuce tests to reflect the rcode change to SERVFAIL
JINMEI Tatuya [Tue, 21 May 2013 21:08:51 +0000 (14:08 -0700)] 
[2905] updated lettuce tests to reflect the rcode change to SERVFAIL

13 years ago[2905] updated Query::process so it'll return SERVFAIL for empty(broken) zones.
JINMEI Tatuya [Tue, 21 May 2013 20:50:01 +0000 (13:50 -0700)] 
[2905] updated Query::process so it'll return SERVFAIL for empty(broken) zones.

13 years ago[2522] support multiline or space-separated fingerprint text in SSHFP
Paul Selkirk [Tue, 21 May 2013 20:14:58 +0000 (16:14 -0400)] 
[2522] support multiline or space-separated fingerprint text in SSHFP

13 years ago[2902] Added other test cases for adjusting the destination response addr.
Marcin Siodelski [Tue, 21 May 2013 19:19:28 +0000 (21:19 +0200)] 
[2902] Added other test cases for adjusting the destination response addr.

13 years ago[2522] remove OldRdataFactory, make AbstractRdataFactory pure virtual
Paul Selkirk [Tue, 21 May 2013 18:45:22 +0000 (14:45 -0400)] 
[2522] remove OldRdataFactory, make AbstractRdataFactory pure virtual

13 years ago[2522] add SSHFP::operator=
Paul Selkirk [Tue, 21 May 2013 18:25:57 +0000 (14:25 -0400)] 
[2522] add SSHFP::operator=

13 years ago[2905] add an "empty zone" in the auth query test setup, fixing a test bug.
JINMEI Tatuya [Tue, 21 May 2013 17:50:21 +0000 (10:50 -0700)] 
[2905] add an "empty zone" in the auth query test setup, fixing a test bug.

the mock findZone() implementation was buggy and wouldn't work correctly
if there were actually more than one zone.  fixed it by porting
MockDataSourceClient::findZone() from datasrc/tests/mock_client.cc.

13 years ago[2905] (unrelated) style cleanups: use lower_uscore form for variables
JINMEI Tatuya [Tue, 21 May 2013 16:33:10 +0000 (09:33 -0700)] 
[2905] (unrelated) style cleanups: use lower_uscore form for variables

per style guideline.

13 years ago[2905] extended ZoneWriter::load() so it can set load error, use it clientlist.
JINMEI Tatuya [Tue, 21 May 2013 16:28:26 +0000 (09:28 -0700)] 
[2905] extended ZoneWriter::load() so it can set load error, use it clientlist.

this allows the caller to know whether a load error happens and log the
reason for it if it constructed the writer to catch load error exceptions
internally.  ConfigurableClientList::configure() needs it to log these
events.  the catch block in the method is now dead code and was removed.

13 years ago[2930] Use a constant
Michal 'vorner' Vaner [Tue, 21 May 2013 14:38:18 +0000 (16:38 +0200)] 
[2930] Use a constant

13 years ago[2930] Sending notifications, python part
Michal 'vorner' Vaner [Tue, 21 May 2013 14:15:09 +0000 (16:15 +0200)] 
[2930] Sending notifications, python part

13 years ago[2930] Sending notifications, C++ version
Michal 'vorner' Vaner [Tue, 21 May 2013 13:58:03 +0000 (15:58 +0200)] 
[2930] Sending notifications, C++ version

13 years ago[master] ChangeLog for merge of trac2653
Stephen Morris [Tue, 21 May 2013 13:56:51 +0000 (14:56 +0100)] 
[master] ChangeLog for merge of trac2653

13 years ago[master] Merge branch 'trac2653'
Stephen Morris [Tue, 21 May 2013 13:52:42 +0000 (14:52 +0100)] 
[master] Merge branch 'trac2653'

13 years ago[2902] Adjust the destination address for response.
Marcin Siodelski [Tue, 21 May 2013 13:18:58 +0000 (15:18 +0200)] 
[2902] Adjust the destination address for response.

Packet will be sent to broadcast address if broadcast flag is set by the
client. Also, DHCPNAK is always sent to broadcast address.

13 years ago[2902] Changes as a result of the review.
Marcin Siodelski [Tue, 21 May 2013 08:45:22 +0000 (10:45 +0200)] 
[2902] Changes as a result of the review.

13 years ago[2850] Use non-const implementation of allMemoryDeallocated() again
Mukund Sivaraman [Tue, 21 May 2013 08:08:23 +0000 (13:38 +0530)] 
[2850] Use non-const implementation of allMemoryDeallocated() again

13 years ago[2796] add ChangeLog and update timestamp
Yoshitaka Aharen [Tue, 21 May 2013 07:58:22 +0000 (16:58 +0900)] 
[2796] add ChangeLog and update timestamp

13 years ago[2850] Validate names in all name-related methods
Mukund Sivaraman [Tue, 21 May 2013 07:46:28 +0000 (13:16 +0530)] 
[2850] Validate names in all name-related methods

13 years ago[2850] Move allocate_size_ to private class
Mukund Sivaraman [Tue, 21 May 2013 07:14:18 +0000 (12:44 +0530)] 
[2850] Move allocate_size_ to private class

13 years agoMerge #2937
Michal 'vorner' Vaner [Tue, 21 May 2013 07:07:29 +0000 (09:07 +0200)] 
Merge #2937

Fix CSV-related test for usermanager that failed on some versions of
python (seen on 3.2.4 on Gentoo).

13 years ago[2905] updated ClientList so the initial loading accepts load errors
JINMEI Tatuya [Tue, 21 May 2013 06:39:44 +0000 (23:39 -0700)] 
[2905] updated ClientList so the initial loading accepts load errors

...and will treat it as a broken (rather than nonexistent) zone for later
lookups.

13 years ago[2796] add statistics item 'qryrecursion'
Yoshitaka Aharen [Fri, 17 May 2013 04:28:20 +0000 (13:28 +0900)] 
[2796] add statistics item 'qryrecursion'

13 years ago[2905] handle the empty-zone case in InMemoryClient.
JINMEI Tatuya [Tue, 21 May 2013 00:56:49 +0000 (17:56 -0700)] 
[2905] handle the empty-zone case in InMemoryClient.

13 years ago[2905] extend ZoneWriter so it can catch load error and install empty zone.
JINMEI Tatuya [Mon, 20 May 2013 23:58:39 +0000 (16:58 -0700)] 
[2905] extend ZoneWriter so it can catch load error and install empty zone.

13 years ago[master] avoid compile mapped-segment dependent code if !USE_SHARED_MEMORY
JINMEI Tatuya [Mon, 20 May 2013 23:24:14 +0000 (23:24 +0000)] 
[master] avoid compile mapped-segment dependent code if !USE_SHARED_MEMORY

okayed on jabber.

13 years ago[2905] explicitly reject adding empty zone data directly, for safety.
JINMEI Tatuya [Mon, 20 May 2013 22:25:41 +0000 (15:25 -0700)] 
[2905] explicitly reject adding empty zone data directly, for safety.

13 years ago[2905] added ZoneTable::addEmptyZone() to allow adding an empty zone.
JINMEI Tatuya [Mon, 20 May 2013 22:14:39 +0000 (15:14 -0700)] 
[2905] added ZoneTable::addEmptyZone() to allow adding an empty zone.

updated addZone() and findZone() behavior so they can handle the concept of
empty zones well.

13 years ago[master] use $(BOOST_MAPPED_FILE_CXXFLAG) for in-memory datasrc tests.
JINMEI Tatuya [Mon, 20 May 2013 20:56:38 +0000 (20:56 +0000)] 
[master] use $(BOOST_MAPPED_FILE_CXXFLAG) for in-memory datasrc tests.

one of the tests directly uses the boost mapped_file_segment class, which can
result in compiler warnings on some platforms.

13 years ago[2934] add in-tree path to loadzone so the test can be more self contained.
JINMEI Tatuya [Mon, 20 May 2013 16:20:54 +0000 (09:20 -0700)] 
[2934] add in-tree path to loadzone so the test can be more self contained.

also introduced Makefile.am in tests/lettuce so setup_interface_bind10.sh
will be auto-regenerated.

13 years ago[2937] Interface of the notify method
Michal 'vorner' Vaner [Mon, 20 May 2013 14:58:40 +0000 (16:58 +0200)] 
[2937] Interface of the notify method

13 years ago[master] fix changelog entry
Jeremy C. Reed [Mon, 20 May 2013 13:31:44 +0000 (08:31 -0500)] 
[master] fix changelog entry

accidently had phrase repeated in
c077699ff43ddc2dff552b616044dab306f23666

13 years ago[2937] Minor tweaks
Michal 'vorner' Vaner [Mon, 20 May 2013 11:13:33 +0000 (13:13 +0200)] 
[2937] Minor tweaks

Comments, unused values, etc.

13 years ago[2796] update lettuce tests with a change of a terrain
Yoshitaka Aharen [Fri, 17 May 2013 02:50:05 +0000 (11:50 +0900)] 
[2796] update lettuce tests with a change of a terrain

Update lettuce tests for 'qryrecursion'. Add an argument to the terrain
to control RD bit in the query.

13 years ago[2850] Remove ZoneTableSegment::resetHeader()
Mukund Sivaraman [Mon, 20 May 2013 07:47:17 +0000 (13:17 +0530)] 
[2850] Remove ZoneTableSegment::resetHeader()

13 years ago[2850] Comment new ZoneTable::destroy() argument
JINMEI Tatuya [Mon, 20 May 2013 07:30:16 +0000 (13:00 +0530)] 
[2850] Comment new ZoneTable::destroy() argument

13 years ago[2850] Fix indenting
Mukund Sivaraman [Mon, 20 May 2013 07:28:33 +0000 (12:58 +0530)] 
[2850] Fix indenting

13 years ago[2850] Update code to use safer ZoneTable::create()
Mukund Sivaraman [Mon, 20 May 2013 07:26:06 +0000 (12:56 +0530)] 
[2850] Update code to use safer ZoneTable::create()

13 years ago[2850] a minor comment wording fix
JINMEI Tatuya [Thu, 16 May 2013 18:29:00 +0000 (11:29 -0700)] 
[2850] a minor comment wording fix

13 years agoRevert "[2850] Add a way to pass a seed to the random number generator"
Mukund Sivaraman [Thu, 16 May 2013 13:48:40 +0000 (19:18 +0530)] 
Revert "[2850] Add a way to pass a seed to the random number generator"

This reverts commit 3599c07417b1bcf40ae8e59959278b4a59ede827.

13 years ago[2850] Check if ZoneTableHeader name exists in an existing segment
Mukund Sivaraman [Thu, 16 May 2013 06:01:58 +0000 (11:31 +0530)] 
[2850] Check if ZoneTableHeader name exists in an existing segment

13 years ago[2850] Check the case where READ_WRITE mode doesn't find a checksum in an existing...
Mukund Sivaraman [Wed, 15 May 2013 14:33:51 +0000 (20:03 +0530)] 
[2850] Check the case where READ_WRITE mode doesn't find a checksum in an existing segment

Note that it's not possible to repeat a similar test for the
ZoneTableHeader name as there are additional allocations by then.

13 years ago[2850] Add comment that the string returned by getImplType() should match the one...
Mukund Sivaraman [Wed, 15 May 2013 14:23:58 +0000 (19:53 +0530)] 
[2850] Add comment that the string returned by getImplType() should match the one passed to create()

13 years ago[2850] Update comment about when the segment had been cleared
Mukund Sivaraman [Wed, 15 May 2013 14:21:41 +0000 (19:51 +0530)] 
[2850] Update comment about when the segment had been cleared

13 years ago[2850] Add a comment about unsafe code
JINMEI Tatuya [Wed, 15 May 2013 14:19:47 +0000 (19:49 +0530)] 
[2850] Add a comment about unsafe code

13 years ago[2850] Correct type of exception thrown and also add a test for it
Mukund Sivaraman [Wed, 15 May 2013 13:07:04 +0000 (18:37 +0530)] 
[2850] Correct type of exception thrown and also add a test for it

13 years ago[2850] Remove assertions that are unnecessary now
Mukund Sivaraman [Wed, 15 May 2013 13:00:44 +0000 (18:30 +0530)] 
[2850] Remove assertions that are unnecessary now

13 years ago[2850] Reject empty names too in setNamedAddress()
Mukund Sivaraman [Wed, 15 May 2013 12:56:13 +0000 (18:26 +0530)] 
[2850] Reject empty names too in setNamedAddress()

13 years ago[2850] Reserve names beginning with _ for internal use only
Mukund Sivaraman [Wed, 15 May 2013 12:51:26 +0000 (18:21 +0530)] 
[2850] Reserve names beginning with _ for internal use only

13 years ago[2850] Constify allMemoryDeallocated() again
Mukund Sivaraman [Wed, 15 May 2013 12:44:30 +0000 (18:14 +0530)] 
[2850] Constify allMemoryDeallocated() again

13 years ago[2905] store an empty zone data in zone table as placeholder of broken zones.
JINMEI Tatuya [Sat, 18 May 2013 01:56:08 +0000 (18:56 -0700)] 
[2905] store an empty zone data in zone table as placeholder of broken zones.

13 years ago[2522] style fix: folded long lines
JINMEI Tatuya [Sat, 18 May 2013 01:23:04 +0000 (18:23 -0700)] 
[2522] style fix: folded long lines

13 years ago[2522] updated 'missing origin' tests so we test all names
JINMEI Tatuya [Sat, 18 May 2013 00:49:29 +0000 (17:49 -0700)] 
[2522] updated 'missing origin' tests so we test all names

also constify one variable.

13 years ago[2522] avoid initializing std::string at a namescope level to avoid fiasco.
JINMEI Tatuya [Sat, 18 May 2013 00:38:53 +0000 (17:38 -0700)] 
[2522] avoid initializing std::string at a namescope level to avoid fiasco.

also constify one other object.

13 years ago[2522] style fix: adjusted brace positions
JINMEI Tatuya [Sat, 18 May 2013 00:31:32 +0000 (17:31 -0700)] 
[2522] style fix: adjusted brace positions

13 years ago[2905] implemented the concept of "empty zone data"
JINMEI Tatuya [Fri, 17 May 2013 23:52:44 +0000 (16:52 -0700)] 
[2905] implemented the concept of "empty zone data"

this will be used instead of NULL in later part of this branch.
(NULL won't work because it would create an unintended empty node).