Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

SignWriteCallback.h

00001 /*
00002  * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved.
00003  * This software is released under the modified BSD license.
00004  * See the file LICENSE in the top-level directory for details.
00005  */
00006 //
00007 // $Id: SignWriteCallback.h,v 1.3 2004/05/19 15:56:53 mmarsh Exp $
00008 //
00009 // $Log: SignWriteCallback.h,v $
00010 // Revision 1.3  2004/05/19 15:56:53  mmarsh
00011 // *** empty log message ***
00012 //
00013 // Revision 1.2  2003/11/04 22:31:49  mmarsh
00014 // *** empty log message ***
00015 //
00016 //
00017 
00018 #ifndef __CODEX_KEYSERVICE_SIGNWRITECALLBACK_H__
00019 #define __CODEX_KEYSERVICE_SIGNWRITECALLBACK_H__
00020 
00021 #include <map>
00022 
00023 #include "ResponseCallback.h"
00024 #include "CODEX_Events/Activity.h"
00025 #include "CODEX_ASN1/Array.h"
00026 #include "CODEX_Client/Message.h"
00027 #include "CODEX_Server/ServerSignature.h"
00028 #include "ClientResponseHandler.h"
00029 #include "StateInfo.h"
00030 #include "CODEX_Server/SignRequestHandler.h"
00031 #include "SupportedKeyStoredMsg.h"
00032 
00033 namespace CODEX_KeyService
00034 {
00041    class SignWriteCallback : public ResponseCallback,
00042                              public CODEX_Events::Activity
00043    {
00044       public :
00046          typedef CODEX_Server::ServerState::ShareType  ShareType;
00047 
00049          typedef vector< ShareType* > SignatureArray;
00050 
00052          typedef CODEX_Server::ServerState::ChallengeVector  ChallengeVector;
00053 
00055          typedef SupportedKeyStoredMsg  RequestType;
00056 
00058          SignWriteCallback( CODEX_Events::DeadPileType& deadPile,
00059                             CODEX_Events::QType& eventQueue,
00060                             ClientResponseHandler* destination,
00061                             const RequestType& request,
00062                             const unsigned char* seqNum,
00063                             CODEX_Server::SignRequestHandler* reqHandler );
00064 
00066          virtual ~SignWriteCallback();
00067 
00068          bool operator()( unsigned int server, CODEX_Quorum::Message* msg );
00069 
00070       private :
00071          ClientResponseHandler*             m_destination;
00072          RequestType                        m_request;
00073          BIGNUM *                           m_digest;
00074          SignatureArray                     m_signatures;
00075          bool                               m_complete;
00076          ChallengeVector                    m_challenges;
00077          CODEX_Server::SignRequestHandler*  m_reqHandler;
00078    };
00079 
00080 }
00081 
00082 #endif /* __CODEX_KEYSERVICE_SIGNWRITECALLBACK_H__ */

Generated on Wed Jun 2 16:32:56 2004 for COrnell Data EXchange (CODEX) by doxygen1.2.18