summaryrefslogtreecommitdiff
path: root/controller
AgeCommit message (Collapse)Author
2015-10-09Create files for each hop (more convenient) and fix a packet parse bug.Adam Ierymenko
2015-10-09Reorg fields to be in same order as FS scheme.Adam Ierymenko
2015-10-09Be a bit more verbose in circuit test reports to more clearly track current ↵Adam Ierymenko
and upstream hop in graph traversal history.
2015-10-09Circuit tests basically work but need some tweaks, and fix some issues found ↵Adam Ierymenko
with valgrind.
2015-10-09Eliminate format string warnings.Adam Ierymenko
2015-10-08Logging of circuit test results to disk.Adam Ierymenko
2015-10-08Abiltiy to post a test via the controller web API, and parsing of ↵Adam Ierymenko
CIRCUIT_TEST_REPORT messages.
2015-10-06Prep in controller code to run tests.Adam Ierymenko
2015-09-28Never assign v4 IPs ending in .255 even within range.Adam Ierymenko
2015-09-18Controller side support for IPv6 assignment.Adam Ierymenko
2015-09-15Drop Sqlite-based Log table for now and switch to an in-memory log for ↵Adam Ierymenko
recent activity. Log table gets too big on busy nodes. Should probably support push of events to some kind of event system later.
2015-09-14Fix JSON.Adam Ierymenko
2015-09-11Extra statement to clean up Members -- cascade did not seem to work, ↵Adam Ierymenko
possibly due to dual key.
2015-09-10Add expansion of netconf in _test field.Adam Ierymenko
2015-09-10Fix deadlock in test mode.Adam Ierymenko
2015-09-10Fix to allowing identity to be populated if not present.Adam Ierymenko
2015-09-08Allow identity to be populated for newly inserted Member objects to permit ↵Adam Ierymenko
transfer from old network controller and testing.
2015-09-08Add a bit of useful testing instrumentation to SqliteNetworkController.Adam Ierymenko
2015-08-24Add clock helper field to both member and network to permit time duration ↵Adam Ierymenko
calculation easily.
2015-08-24typoAdam Ierymenko
2015-08-19Add authorizedMemberCount to controller network config records.Adam Ierymenko
2015-08-17Lookup of member must be a left outer join in case the member is being ↵Adam Ierymenko
manually inserted before we see the node.
2015-07-29Go ahead and spec out controller DB support for AuthToken -- GitHub issue ↵Adam Ierymenko
#211 -- even though full implementation won't make it into 1.0.4.
2015-07-24Add version to log.Adam Ierymenko
2015-07-23(1) Fix updating of network revision counter on member change.Adam Ierymenko
(2) Go back to timestamp as certificate revision number. This is simpler and more robust than using the network revision number for this and forcing network revision fast-forward, which could cause some peers to fall off the horizon when you don't want them to.
2015-07-23Add a rate limiting circuit breaker to the network controller to prevent ↵Adam Ierymenko
flooding attacks and race conditions.
2015-07-23Eliminate some poorly thought out optimizations from the netconf/controller ↵Adam Ierymenko
interaction, and go ahead and bump version to 1.0.4. For a while in 1.0.3 -dev I was trying to optimize out repeated network controller requests by using a ratcheting mechanism. If the client received a network config that was indeed different from the one it had, it would respond by instantlly requesting it again. Not sure what I was thinking. It's fundamentally unsafe to respond to a message with another message of the same type -- it risks a race condition. In this case that's exactly what could happen. It just isn't worth the added complexity to avoid a tiny, tiny amount of network overhead, so I've taken this whole path out. A few extra bytes every two minutes isn't worth fretting about, but as I recall the reason for this optimization was to save CPU on the controller. This can be achieved by just caching responses in memory *there* and serving those same responses back out if they haven't changed. I think I developed that 'ratcheting' stuff before I went full time on this. It's hard to develop stuff like this without hours of sustained focus.
2015-07-22Add a Log table to log queries for debugging and security logging. No JSON ↵Adam Ierymenko
API support for querying the log yet, but will probably come via /network/###/member/###/log/... or something.
2015-07-05Fix for output of empty (no members) networkKees Bos
2015-07-21Fix to member listing: I wanted an object with member IDs as keys and member ↵Adam Ierymenko
revisions as values, not an array.
2015-07-21List members in the form of a hash of member ID and member revision so code ↵Adam Ierymenko
can quickly detect which members have changed.
2015-07-21Remove "members" from Network record and instead enumerate members via ↵Adam Ierymenko
specific query to /network/nwid/member sub-path. More RESTful, scalable, and compatible with how OnePoint code works.
2015-07-21Fix IP auto-assign bug due to missing subnet routes.Adam Ierymenko
2015-07-21Report controllerInstanceId in all objects so that controller resets can be ↵Adam Ierymenko
easily detected by whatever is using the service.
2015-07-20Fix bug in rules JSON output.Adam Ierymenko
2015-07-20Proper handling of NULL entry for etherType in rules table.Adam Ierymenko
2015-07-20Fix string overwrite bug.Adam Ierymenko
2015-07-20Get rid of false foreign key in Relay.Adam Ierymenko
2015-07-17IP assignment pool range bug fix.Adam Ierymenko
2015-07-17Fix some SQL and make instanceId more robustly random.Adam Ierymenko
2015-07-17Fix bad JSON in response.Adam Ierymenko
2015-07-17Add a concept of an "instanceId" to the controller, which the OnePoint can ↵Adam Ierymenko
use to determine whether it is the same running database instance it already knows.
2015-07-16Add memberRevision stuff to JSON output, and update docs.Adam Ierymenko
2015-07-16Add a concept of a member revision counter to networks. This can be used to ↵Adam Ierymenko
select all members that have been added or changed since a given point.
2015-07-14Networks don't need their ID as a default name.Adam Ierymenko
2015-07-14Don't allow zero as a network number.Adam Ierymenko
2015-06-29ipLocalRoutes now exposed via network objects in JSON controller API, and ↵Adam Ierymenko
documentation changes.
2015-06-29Untested -- modifications to support IP ranges instead of ip/mask for IP ↵Adam Ierymenko
assignment pools, also add portId to Rule for future use.
2015-06-29(1) Both nodeId and portId in Rule can be NULL, (2) remove on delete cascade ↵Adam Ierymenko
since rules should never mysteriously disappear from the rules table. If it let you delete a node with rules, that would be a UI or cleanup function bug.
2015-06-29DB schema changes: separate portId in rules, ranges in IP assignment pools. ↵Adam Ierymenko
(No code changes yet so code is broken.)