00001 /* 00002 * $Id:X509.h 535 2007-08-12 10:49:40Z mindstorm2600 $ 00003 */ 00004 #ifndef __XVR2_SSL_X509_H__ 00005 #define __XVR2_SSL_X509_H__ 00006 #include<xvr2/Net/netdefs.h> 00007 #include<xvr2/String.h> 00008 #include<xvr2/Date.h> 00009 #include<xvr2/Net/X509Issuer.h> 00010 #include<xvr2/Net/X509Subject.h> 00011 #include<xvr2/Net/NetworkExceptions.h> 00012 00013 namespace xvr2 { 00014 namespace Net { 00016 class X509:public Object { 00017 private: 00018 protected: 00019 void *idata; 00020 X509Issuer *_issuer; 00021 X509Subject *_subject; 00022 String _serial; 00023 String _hash; 00024 Date *_startDate; 00025 Date *_endDate; 00026 String _version; 00027 bool dont_free; 00028 public: 00029 X509(); 00030 X509(void *x509_ptr); 00031 ~X509(); 00032 const X509Issuer &issuer() const; 00033 const X509Subject &subject() const; 00034 const String &serial() const; 00035 const String &hash() const; 00036 const Date &startDate() const; 00037 const Date &endDate() const; 00038 //Date &startDate() const; 00039 //Date &endDate() const; 00040 const String &version() const; 00041 void *getInternal(){ 00042 return idata; 00043 } 00044 }; 00045 }; 00046 }; 00047 #endif