/* Copyright (C) 2003 Frédéric Giudicelli (contact_nos@yahoo.com). All rights reserved. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com) This program is released under the GPL with the additional exemption that compiling, linking, and/or using OpenSSL is allowed. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License. This program 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 General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ ASN1_SEQUENCE(WORKING_REQUEST) = { ASN1_SIMPLE(WORKING_REQUEST, SenderName, ASN1_UTF8STRING), ASN1_SIMPLE(WORKING_REQUEST, sender, X509_PUBKEY), ASN1_SIMPLE(WORKING_REQUEST, transactionID, ASN1_OCTET_STRING), ASN1_SIMPLE(WORKING_REQUEST, request, NEWPKI_REQUEST), }ASN1_SEQUENCE_END(WORKING_REQUEST) IMPLEMENT_PEM_CONVERT(WORKING_REQUEST, "WORKING NEWPKI REQUEST") ASN1_SEQUENCE(STACK_REQUEST) = { ASN1_SIMPLE(STACK_REQUEST, id, ASN1_INTEGER), ASN1_SIMPLE(STACK_REQUEST, req, CRYPTED_NEWPKI_REQUEST), }ASN1_SEQUENCE_END(STACK_REQUEST) <-- BEGIN H HEADER COPY BLOCK --> #include /*! This structure represent a request to be sent */ typedef struct st_STACK_REQUEST { ASN1_INTEGER * id; //!< The ID of the request CRYPTED_NEWPKI_REQUEST * req; //!< The request }STACK_REQUEST; DECLARE_ASN1_ITEM(STACK_REQUEST) /*! This structure represent a stored request for a responder store */ typedef struct st_WORKING_REQUEST { ASN1_UTF8STRING * SenderName; //!< The name of the sender X509_PUBKEY * sender; //!< The public key of the sender ASN1_OCTET_STRING * transactionID; //!< The transaction ID of the request NEWPKI_REQUEST * request; //!< The request }WORKING_REQUEST; DECLARE_ASN1_ITEM(WORKING_REQUEST) /*! This enumeration defines the type of store */ typedef enum en_NEWPKISTORE_TYPE { NEWPKISTORE_TYPE_NONE=0, //!< The store does nothing NEWPKISTORE_TYPE_REQUESTER=1, //!< The store is a requester NEWPKISTORE_TYPE_RESPONDER=2 //!< The store is a responder }NEWPKISTORE_TYPE; /*! This enumeration defines the status of a transaction */ typedef enum en_TRANSACTION_STATUS { TRANSACTION_STATUS_UNKNOWN=0, //!< Transaction is unknown TRANSACTION_STATUS_WAITING=1, //!< Transaction is waiting to be processed or sent TRANSACTION_STATUS_PROCESSED=2, //!< Transaction has been processed TRANSACTION_STATUS_SENT=3 //!< Transaction has been sent }TRANSACTION_STATUS; <-- END H HEADER COPY BLOCK -->