From 5b10e3d451bd538a7f5c0ac432dcc1b85c157a53 Mon Sep 17 00:00:00 2001 From: moon Date: Mon, 15 Sep 2025 03:49:50 +0330 Subject: add new opcode + firehose change --- src/common.c | 62 ++---------------------------------------------------------- 1 file changed, 2 insertions(+), 60 deletions(-) (limited to 'src/common.c') diff --git a/src/common.c b/src/common.c index c85d166..e59281d 100644 --- a/src/common.c +++ b/src/common.c @@ -25,67 +25,9 @@ typedef byte recipient[ 64 ]; const uint16_t default_port = 8040; -enum client_input { - // ask server for its information (responds with audit_response) - audit_server = 0x10, - - // ask server for a random set of neighbors - // (input uint8_t neighbor_count, responds with neighbors_info) - get_neighbors = 0x11, - - // monitor incoming packets - // (input struct firehose_request, responds with firehose_reply) - firehose = 0x12, - - // give a packet to the relay - // (input struct data_packet, responds with push_packet_result) - push_packet = 0x13, - - // get a packet from the server - // (input hash, responds with get_packet_result) - get_packet = 0x14, - - // register a new neighbor relay to this server - // (input struct relay_neighbor, responds with register_neighbor_result) - register_neighbor = 0x15, - - // query packets for a specific author - // (input public_key, pub_sign_key, u16 count, u64 offset) - // (responds with queried_author_packets) - query_packets = 0x16, - - // query packets for a specific recipient - // note: to prevent DoS, you must provide a signature by the requested author to be approved. - // the signature needs to be from a struct shaped `public_key + pub_sign_key + u16 count + u64 - // offset`. - // server must verify the signing key is of the recipient's pubkey and signing key by looking at - // the packet's metadata. - // (input public_key, input pub_sign_key, signature, u16 count, u64 offset) - // (responds with queried_author_packets) - query_by_recipient = 0x17, -}; +char* global_packets_dir_path = "packets/"; -enum server_reply { - // pretty self-explanatory. - error = 0x1, - - // type `struct relay_info` - audit_response = 0x18, - // type `struct relay_neighbor[ neighbor_count ]` - neighbors_info = 0x19, - // type `uint64_t new_offset, struct data_packet[ count ]` - firehose_reply = 0x1a, - // type `bool result_code` - push_packet_result = 0x1b, - // type `struct data_packet` - get_packet_result = 0x1c, - // type `bool result_code` - register_neighbor_result = 0x1d, - // type `u16 count, u64 new_offset, struct data_packet[ count ]` - queried_author_packets = 0x1e, - // type `u16 count, u64 new_offset, struct data_packet[ count ]` - queried_recipient_packets = 0x1f, -}; +#include "req_res_codes.h" typedef uint8_t get_neighbors_request; -- cgit v1.2.3