From 1940b899b3620786b0265144ab756a3f05bcc8b0 Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Thu, 16 Aug 2018 18:48:04 +0200 Subject: start zklaim service --- src/zklaim/zklaim_api.h | 90 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/zklaim/zklaim_api.h (limited to 'src/zklaim/zklaim_api.h') diff --git a/src/zklaim/zklaim_api.h b/src/zklaim/zklaim_api.h new file mode 100644 index 000000000..77053c667 --- /dev/null +++ b/src/zklaim/zklaim_api.h @@ -0,0 +1,90 @@ +/* + This file is part of GNUnet. + Copyright (C) 2013 GNUnet e.V. + + GNUnet is free software: you can redistribute it and/or modify it + under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, + or (at your option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +/** + * @author Martin Schanzenbach + * @file zklaim/zklaim.h + * + * @brief Common type definitions for the zklaim + * service and API. + */ +#ifndef ZKLAIM_API_H +#define ZKLAIM_API_H + +#include "gnunet_common.h" + + +GNUNET_NETWORK_STRUCT_BEGIN + + +/** + * Answer from service to client about last operation; + * GET_DEFAULT maybe answered with this message on failure; + * CREATE and RENAME will always be answered with this message. + */ +struct ResultCodeMessage +{ + /** + * Type: #GNUNET_MESSAGE_TYPE_ZKLAIM_RESULT_CODE + */ + struct GNUNET_MessageHeader header; + + /** + * Status code for the last operation, in NBO. + * (currently not used). + */ + uint32_t result_code GNUNET_PACKED; + + /* followed by 0-terminated error message (on error) */ + +}; + + +/** + * Client requests creation of an identity. Service + * will respond with a result code. + */ +struct CreateRequestMessage +{ + /** + * Type: #GNUNET_MESSAGE_TYPE_ZKLAIM_CREATE + */ + struct GNUNET_MessageHeader header; + + /** + * Number of bytes in identity name string including 0-termination, in NBO. + */ + uint16_t name_len GNUNET_PACKED; + + /** + * Always zero. + */ + uint16_t reserved GNUNET_PACKED; + + /** + * The private key + */ + struct GNUNET_CRYPTO_EcdsaPrivateKey private_key; + + /* followed by 0-terminated identity name */ + +}; + +GNUNET_NETWORK_STRUCT_END + +#endif -- cgit v1.2.3