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: SupportedKeyStoredMsg.h,v 1.3 2004/05/19 15:56:53 mmarsh Exp $ 00008 // 00009 // $Log: SupportedKeyStoredMsg.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_SUPPORTEDKEYSTOREDMSG_H__ 00019 #define __CODEX_KEYSERVICE_SUPPORTEDKEYSTOREDMSG_H__ 00020 00021 #include "CODEX_Client/Message.h" 00022 #include "CODEX_Server/ServerSignature.h" 00023 #include "CODEX_Server/ServerState.h" 00024 00025 namespace CODEX_KeyService 00026 { 00039 class SupportedKeyStoredMsg : public CODEX_ASN1::Base 00040 { 00041 public : 00043 typedef CODEX_ASN1::Array< CODEX_Server::ServerSignature > ArrayType; 00044 00046 typedef CODEX_Server::ServerState::LSType::LabelType LabelType; 00047 00049 SupportedKeyStoredMsg(); 00050 00052 SupportedKeyStoredMsg( const CODEX_Client::KeyStoredMsg& response, 00053 const ArrayType& evidence, 00054 const LabelType& label ); 00055 00057 SupportedKeyStoredMsg( const SupportedKeyStoredMsg& aOther ); 00058 00060 virtual ~SupportedKeyStoredMsg(); 00061 00063 void operator=( const SupportedKeyStoredMsg& aOther ); 00064 00066 const CODEX_Client::KeyStoredMsg& response() const 00067 { 00068 return m_response; 00069 } 00070 00072 const ArrayType& evidence() const { return m_evidence; } 00073 00075 const LabelType& label() const { return m_label; } 00076 00078 int marshal( unsigned char ** pp ) const; 00079 00081 void* unmarshal( void* bogus, unsigned char ** pp, long length ); 00082 00083 private : 00084 CODEX_Client::KeyStoredMsg m_response; 00085 ArrayType m_evidence; 00086 LabelType m_label; 00087 }; 00088 00089 } 00090 00091 #endif /* __CODEX_KEYSERVICE_SUPPORTEDKEYSTOREDMSG_H__ */
1.2.18