Commit Graph

127 Commits (646e6592f0ae6e93cb0ca5eab70363f18b846ab4)

Author SHA1 Message Date
noah metz 1d91854f6f Moved to x25519 for EC operations 2023-08-06 12:47:47 -06:00
noah metz 7d0af0eb5b Added NewSignal that extensions can process when a node is newly created 2023-08-04 19:47:17 -06:00
noah metz 147f44e5ff hehe 2023-08-01 20:55:15 -06:00
noah metz 42cd8f4188 Added AuthorizedSignal wrapper to wrap a signal with an ecdsa signature to prove it originated from a different node 2023-08-01 14:09:29 -06:00
noah metz df09433b88 Changed resolves to map back to request channel specifically instead of to the context 2023-07-31 20:53:56 -06:00
noah metz 09c25b1e48 Moved UUID field to all signals to nodes can wait for responses to specific signals 2023-07-31 18:29:26 -06:00
noah metz 887a976263 Write node to DB every signal 2023-07-31 16:37:32 -06:00
noah metz 0313d6a33f Added start signal, and used it to restore gql server if was previously running 2023-07-31 16:25:18 -06:00
noah metz 4e31a6763d removed prints 2023-07-30 11:49:35 -06:00
noah metz b4e6123d4c test 2023-07-30 11:29:58 -06:00
noah metz e34d3ec981 node logging 2023-07-30 11:27:23 -06:00
noah metz 31f6c12f14 test 2023-07-30 11:25:03 -06:00
noah metz ec9a29573a test again 2023-07-30 11:21:40 -06:00
noah metz 395a75fcb8 fix time comparison 2023-07-30 11:19:34 -06:00
noah metz 9f9e65cf54 temp 2023-07-30 11:16:50 -06:00
noah metz da58b04774 fix 2023-07-30 11:12:47 -06:00
noah metz 7810859bca more logging 2023-07-30 11:07:41 -06:00
noah metz ad6ea0cc59 more node signal queue logging 2023-07-30 11:02:22 -06:00
noah metz 96c2b84b6f * 2023-07-30 10:09:04 -06:00
noah metz 79e40bf3f3 Fix signal queue 2023-07-30 01:29:15 -06:00
noah metz 1a3a07336a Added back GQL functionality, TODO pool channels for resolve executions instead of creating new ones and GCing them every time 2023-07-29 16:00:01 -06:00
noah metz 641bd8febe Moved ecdh to it's own extension 2023-07-29 00:28:44 -06:00
noah metz 5fb1cb6d17 Changed node ids to be derived from signing keys 2023-07-28 15:07:38 -06:00
noah metz b92cebbe74 Added message buffer size to node header and NewNode 2023-07-28 13:45:14 -06:00
noah metz 5678c79798 Made 10k test run faster, need to look at node memory usage 2023-07-28 13:12:17 -06:00
noah metz 61de2669e2 Added test to create 10K lockables and link them to a single lockable 2023-07-28 12:46:06 -06:00
noah metz 08288f88af Added basic test for read result with ACL 2023-07-28 11:59:01 -06:00
noah metz fc69bc3d0d Added read signal, and modified policies to use non-pointer receivers 2023-07-28 11:21:18 -06:00
noah metz 27687add1b Changed acl from using SignalType to Action, and added Permission() method to Signal interface that returns the Action the signal is trying to take 2023-07-28 00:39:27 -06:00
noah metz fb7e6d02f4 Fixed json parsing, not sure if it broke or just wasn't running before 2023-07-28 00:04:18 -06:00
noah metz d40e561728 Moved Hash function to single implementation 2023-07-27 23:26:58 -06:00
noah metz f314b46415 Fixed imports 2023-07-27 23:17:44 -06:00
noah metz 027c3d4c96 Moved ExtType and PolicyType definitions to one block 2023-07-27 23:15:58 -06:00
noah metz 98893de442 Added naive locking sequence with short test 2023-07-27 18:08:43 -06:00
noah metz 78c29d2f74 Changed context to dynamically load nodes as they're signalled 2023-07-27 16:48:39 -06:00
noah metz 9d31394707 Remvoed Node.Signal and replaced with Context.Send 2023-07-27 16:13:43 -06:00
noah metz 6b375245df Added comments and switched from a bool/mutex combo to prevent double-start to an atomic bool 2023-07-27 16:06:56 -06:00
noah metz 7965f8fbe6 Moved signal function to context 2023-07-27 15:49:21 -06:00
noah metz d729698523 Removed commented out code 2023-07-27 15:29:56 -06:00
noah metz 3ad969a5ca Switched from thread being the callback engine to node being the callback engine 2023-07-27 15:27:14 -06:00
noah metz c34d717b52 Cleaned up initialization 2023-07-27 11:33:11 -06:00
noah metz 70baca9e9c Added some policies back, and changed the policy check to pass errors instead of booleans 2023-07-27 09:32:33 -06:00
noah metz 4fa88dc056 Changed SendUpdate to Node.Process, and changed principal to ID to prepare for decoupling nodes 2023-07-27 01:30:32 -06:00
noah metz 81c2e11304 Renamed SendSignal to Node.Process 2023-07-27 01:15:53 -06:00
noah metz cc807b3982 Added helper function to create base gql server 2023-07-27 00:57:18 -06:00
noah metz 89c8fba39b Added RequirementOfPolicy and thread extension child loading 2023-07-26 15:40:33 -06:00
noah metz d2f3daf5a6 Changed NewNode to return a pointer and add the node to the context 2023-07-26 15:08:14 -06:00
noah metz 755edf8558 Added ParentOfPolicy and ChildOfPolicy 2023-07-26 13:28:03 -06:00
noah metz fa6142d880 Started adding back gql tests 2023-07-26 11:56:10 -06:00
noah metz c4156ee146 Added basic test that loads node with only acl extension 2023-07-26 00:42:12 -06:00
noah metz f1c0f1e7de Added gql to the rework 2023-07-26 00:18:11 -06:00
noah metz ff813d6c2b Moved from inheritance to extensions 2023-07-25 21:43:15 -06:00
noah metz 54e25ba602 Added attempt at UserOfPolicy 2023-07-25 00:57:54 -06:00
noah metz a2395189a8 Added LoadJSONNode to abstract out repeated json unmarshaling 2023-07-25 00:19:39 -06:00
noah metz f118dde221 Add policies to write context 2023-07-24 20:45:07 -06:00
noah metz cf35d8a86d Added PolicyMap 2023-07-24 18:04:16 -06:00
noah metz 7d04923b3b Fixed interface conversion panics 2023-07-24 17:07:27 -06:00
noah metz fc2e36043f Tests compile and run 2023-07-24 16:04:56 -06:00
noah metz 201ee7234b Remove policies read requirement to signal 2023-07-24 01:48:03 -06:00
noah metz fa10ccd743 Attempt to fix DependencyPolicy 2023-07-24 01:41:47 -06:00
noah metz 3ce1e3ad91 Added DependencyPolicy 2023-07-24 01:12:30 -06:00
noah metz dfa420757b Moved status signals to StatusSignal type with status string as type, so they can be ACLd 2023-07-23 21:14:15 -06:00
noah metz 054fe3c0ec Fixed starting of gql server to correctly start children that should start 2023-07-23 19:04:04 -06:00
noah metz 8fb0cbc982 Reworked use/update to require a read/write context be initialized before starting, still need to figure out if brittle locking is the solution to potential deadlock, and implement if so 2023-07-23 17:57:47 -06:00
noah metz 575912d56f Fixed compile errors 2023-07-22 21:24:54 -06:00
noah metz e347a3f232 start maniacal rewrite, main goal is to combine node and lockable to remove any sync mutex deadlocks. Another goal is to make read contexts get copies of the state to ensure they don't modify and no lock is required to ensure no value changes, and write contexts use the lockable locks instead of mutex 2023-07-22 20:21:17 -06:00
noah metz 76512afd4e First pass of gql read permission 2023-07-21 19:16:30 -06:00
noah metz d4fcd80ff8 Added Singleton and Field to simplify GQL definitions 2023-07-21 17:49:19 -06:00
noah metz 6bd009b43e Changed ACL to get passed entire node attempting action instead of just ID 2023-07-21 13:34:47 -06:00
noah metz 230ff2b883 First implementation of policies 2023-07-21 12:09:29 -06:00
noah metz c3058fbd3d Added more to policy, and updated lockable to use better IDs 2023-07-21 00:02:53 -06:00
noah metz 61fd7d61aa Added policy.go 2023-07-20 23:19:10 -06:00
noah metz 99d4f18daf Moved user to user.go 2023-07-20 22:08:28 -06:00
noah metz 374fd6e487 Changed NodeID from string to UUID, filled in more auth 2023-07-19 20:03:13 -06:00
noah metz 743569e088 Added more doc comments 2023-07-10 22:31:43 -06:00
noah metz a9431ecf73 Added db write log 2023-07-10 19:04:15 -06:00
noah metz 5c416a4a3f We do a little refactoring, hehe 2023-07-09 14:30:30 -06:00