cromp_security.h

Go to the documentation of this file.
00001 #ifndef CROMP_SECURITY_CLASS
00002 #define CROMP_SECURITY_CLASS
00003 
00004 /*****************************************************************************\
00005 *                                                                             *
00006 *  Name   : cromp_security                                                    *
00007 *  Author : Chris Koeritz                                                     *
00008 *                                                                             *
00009 *  Purpose:                                                                   *
00010 *                                                                             *
00011 *    Implements the client registry in a cromp-appropriate manner.  The       *
00012 *  identity issue request is vetted against the known connection endpoint     *
00013 *  for a client.                                                              *
00014 *                                                                             *
00015 *******************************************************************************
00016 * Copyright (c) 2002-$now By Author.  This program is free software; you can  *
00017 * redistribute it and/or modify it under the terms of the GNU General Public  *
00018 * License as published by the Free Software Foundation; either version 2 of   *
00019 * the License or (at your option) any later version.  This is online at:      *
00020 *     http://www.fsf.org/copyleft/gpl.html                                    *
00021 * Please send any updates to: fred@gruntose.com                               *
00022 \*****************************************************************************/
00023 
00024 #include "dll_cromp.h"
00025 
00026 #include <basis/object_base.h>
00027 #include <tentacles/simple_entity_registry.h>
00028 
00029 // forward.
00030 class tcpip_stack;
00031 
00032 class CROMP_CLASS_STYLE cromp_security : public simple_entity_registry
00033 {
00034 public:
00035   cromp_security();
00036   virtual ~cromp_security();
00037 
00038   IMPLEMENT_CLASS_NAME("cromp_security");
00039 
00040   virtual bool add_entity(const octopus_entity &client,
00041         const byte_array &verification);
00042 
00043   // stronger security models can be implemented by overriding add_entity().
00044   // this object merely verifies that we have seen the entity get issued by
00045   // the current server.
00046 
00047 private:
00048   tcpip_stack *_stack;  // enables access to tcpip functionality.
00049 };
00050 
00051 #endif
00052 

Generated on Fri Nov 28 04:28:55 2008 for HOOPLE Libraries by  doxygen 1.5.1