Commit Graph

77 Commits (bb28d9bc323b88fa82809547f384f4cff72e991e)

Author SHA1 Message Date
noah metz 96408259d1 Lots of stuff, but mostly sped up NodeID and UUID serialization, can probably generalize to speed up all fixed size arrays 2023-10-01 20:45:44 -06:00
noah metz e93fe50b5f Update for tm 2023-09-27 19:47:48 -06:00
noah metz d4e0d855c7 Added serialization for Tree and SerializedType. Changed policies to an array instead of a map 2023-09-20 19:14:28 -06:00
noah metz eb30b477d5 Passing tests 2023-09-13 10:56:49 -06:00
noah metz 5c70d1b18d Moved type registration to signal/extension/policy registration 2023-09-12 20:30:18 -06:00
noah metz de1a229db6 Made it illegal to serialize/deserialize unregistered structs, and added StartSignal and StopSignal 2023-09-12 19:48:16 -06:00
noah metz de54c87e43 Added serialization of StatusSignal 2023-09-12 19:40:06 -06:00
noah metz 07ce005365 Got serialization to the point that TestGQLDB is passing 2023-09-12 19:00:48 -06:00
noah metz c4e5054e07 Fixed array serialization and added NodeID serialization 2023-09-12 16:56:01 -06:00
noah metz b47c95c5ad Copied slice serialize/deserialize to array. Need to find out why the typestack is becoming corrupt now 2023-09-11 21:54:00 -06:00
noah metz 045304f9f6 Moved int, struct, and interface serialization to functions to make registering types easy 2023-09-11 21:47:53 -06:00
noah metz d0f0fb1b82 Fixed first round of issues with node serialization, now need to actually deserialize structs 2023-09-06 18:29:35 -06:00
noah metz fa5facc5fc Added deserialize for map 2023-09-05 10:48:04 -06:00
noah metz b766aadef9 Added deserialization for map type, nil map, and empty map 2023-09-05 01:02:41 -06:00
noah metz 47107dec1c Moved type definitions to variables 2023-09-05 00:53:58 -06:00
noah metz 15793e1415 Fixed pointer, list, and map serialization after testing nil map types 2023-09-05 00:46:49 -06:00
noah metz e2f34150ef Moved serialization to serialize.go and removed n parameter from DeserializeValue 2023-09-05 00:08:09 -06:00
noah metz 06513a5ad6 Added serialization tests, added deserializers for most Kinds, reworked struct serialization 2023-09-03 17:50:12 -06:00
noah metz 799b6404dd Added deserialize to pointer 2023-09-02 18:49:37 -06:00
noah metz 1888cf428d Think i finished serialization(other than missing types/kinds), now onto deserialization 2023-09-02 17:30:52 -06:00
noah metz 857f04efe3 Ch-ch-ch-ch-changes 2023-08-31 22:31:29 -06:00
noah metz 4daec4d601 Cleanup and move away from capnp to custom TLV serialization 2023-08-31 19:50:32 -06:00
noah metz 98c0b7e807 Fixed lockable to properly fail 2023-08-15 18:23:06 -06:00
noah metz 20c7a38044 Policy fun 2023-08-10 23:43:10 -06:00
noah metz f31beade29 Added signature to all signals(signature of serialized signal + source + dest so technically vulnerable to replay) to use for ACL 2023-08-08 14:00:17 -06:00
noah metz 8770d6f433 Moved policies to node instead of an extension, need to fix gql tests 2023-08-07 20:26:02 -06:00
noah metz 1d91854f6f Moved to x25519 for EC operations 2023-08-06 12:47:47 -06:00
noah metz 147f44e5ff hehe 2023-08-01 20:55:15 -06:00
noah metz dca4de183e Think I got the interface registering figured out, need to test it out with self-referrential fields(list and single) from LockableExt 2023-07-29 19:16:33 -06:00
noah metz fad8d8123c Did most of the work to move node interface creation to GQLExtContext 2023-07-29 18:27:52 -06:00
noah metz 891e69c775 Added more sane methods to register GQL fields, need to do the same for itnerfaces and their defaults 2023-07-29 17:23:25 -06:00
noah metz d6a35247b0 Add tests for gql server type in gql 2023-07-29 16:34:21 -06:00
noah metz 2dfa10b1f6 Renamed GQL functions to remove GQL 2023-07-29 11:03:41 -06:00
noah metz 641bd8febe Moved ecdh to it's own extension 2023-07-29 00:28:44 -06:00
noah metz f87571edcf Moved test 'WaitForX' functions to a generic function in signal.go that can be used to wait for arbitrary signals 2023-07-28 19:32:27 -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 61de2669e2 Added test to create 10K lockables and link them to a single lockable 2023-07-28 12:46:06 -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 78c29d2f74 Changed context to dynamically load nodes as they're signalled 2023-07-27 16:48:39 -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 3ad969a5ca Switched from thread being the callback engine to node being the callback engine 2023-07-27 15:27:14 -06:00
noah metz 544264f06b Cleaned up gql_test by putting the listener extension on gql 2023-07-27 12:03:39 -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 494d212051 Simplified gql node/interface creation with helper functions 2023-07-26 23:57:50 -06:00