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__ */
1.4.1