Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ClientMessageSigner.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: ClientMessageSigner.h,v 1.3 2004/05/19 15:56:51 mmarsh Exp $
00008 //
00009 // $Log: ClientMessageSigner.h,v $
00010 // Revision 1.3  2004/05/19 15:56:51  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_CLIENTMESSAGESIGNER_H__
00019 #define __CODEX_KEYSERVICE_CLIENTMESSAGESIGNER_H__
00020 
00021 #include "RoutedClientMessageHandler.h"
00022 #include "RoutedClientMessageEvent.h"
00023 #include "CODEX_Server/ServerResponseHandler.h"
00024 #include "CODEX_Quorum/Message.h"
00025 
00026 namespace CODEX_KeyService
00027 {
00034    class ClientMessageSigner : public RoutedClientMessageHandler
00035    {
00036       public :
00038          ClientMessageSigner(
00039             CODEX_Events::DeadPileType& deadPile,
00040             CODEX_Events::QType& eventQueue,
00041             CODEX_Server::ServerResponseHandler* destination );
00042 
00044          virtual ~ClientMessageSigner();
00045 
00046          bool handler( CODEX_Events::CloseEvent& event );
00047          bool handler( ClientMessageEvent< RequestKeyMsg >& event );
00048          bool handler( ClientMessageEvent< SignedCreateKeyMsg >& event );
00049          bool handler( ClientMessageEvent< SignedWriteKeyMsg >& event );
00050          bool handler( ClientMessageEvent< SignedReadKeyMsg >& event );
00051 
00053          bool handler( RoutedClientMessageEvent< SignedCreateKeyMsg >& event );
00054 
00056          bool handler( RoutedClientMessageEvent< SignedWriteKeyMsg >& event );
00057 
00059          bool handler( RoutedClientMessageEvent< LabeledReadKeyMsg >& event );
00060 
00061       private :
00062          bool process( const BIGNUM* digest,
00063                        CODEX_Events::Activity* source,
00064                        const CODEX_Server::RoutingInfo& routingInfo,
00065                        CODEX_Quorum::Message& m,
00066                        bool failed );
00067 
00068          CODEX_Server::ServerResponseHandler*  m_destination;
00069    };
00070 
00071 }
00072 
00073 #endif /* __CODEX_KEYSERVICE_CLIENTMESSAGESIGNER_H__ */

Generated on Fri May 6 17:38:36 2005 for COrnell Data EXchange (CODEX) by  doxygen 1.4.1