in xfrin
- add note about lack of thread-safety
- add note about from-source temporariness
- add test for case-insensitive class strings
- directly replace _memory_zones
move GTEST_LDADD to the end of the list, so that the source tree libs get linked instead of those installed in the same location as gtest
(reviewed on jabber by jinmei)
All in xfrin memory zones handlers;
- normalize zone name and class
- provide strong exception guarantee in _set_memory_zones
- fix comment in _set_db_file
- make _auth_config_update 'protected'
And in the tests:
- extracted memory zones update tests to own class
- added tests for bad data
- added tests for normalization
This one is wrong in many ways. It assumes (without checking) it gets an
exact match, it does not check any wrong data, it expects given order of
results. But it passes the minimal test now, and can be used as a base
for improving the implementation.
added a test for that case to confirm the regression and the fix.
also introduced some more cleanups: removed rdata_txt_ so we simplify the
code further, made isSameType static class function (it doesn't refer to
any class attributes), constified separate_rrs_.
right now it does a simple check for loading and query response from the loaded
zone. this is intended to be used for the inmemory-from-xfrin scenarios.
it creates a temporary SQLite3 DB file from a shared template with a specified
stream of zone data. this will help reduce the number of pre-generated DB
files in the repository (which will be subject to upgrading the schema).
it didn't seem correct to say "it's not allowed on the wire". this
restriction is more about the definition of the RRset concept, rather than
what we'd see in the wire. also added a reference to the relevant RFC (2181).
the previous version didn't always reset it to the smallest TTL; the new test
added in the previous commit uncovered it. this version passed that test.
also made some cleanups in the code reducing temporary variables for better
readability.
it checks the case for RRsets with the TTL of the first RR is later than that
of the second. The original implementation has a bug in this case, but the
previous test was insufficient and fail to discover it.
One test is taken and ported to the database. It does compile partially
(the rest is commented out for now) and does not pass. Also, another
function moved to common file.
the iterator is now assumed to be created in the 'non separate' mode based
on the bug fix of the previous commit.
tests are updated with RRSIGs, and about how to create the iterator.
doxygen comments clarify this point too.