OFFIS DCMTK  Version 3.6.0
sisprof.h
1 /*
2  *
3  * Copyright (C) 1998-2010, OFFIS e.V.
4  * All rights reserved. See COPYRIGHT file for details.
5  *
6  * This software and supporting documentation were developed by
7  *
8  * OFFIS e.V.
9  * R&D Division Health
10  * Escherweg 2
11  * D-26121 Oldenburg, Germany
12  *
13  *
14  * Module: dcmsign
15  *
16  * Author: Norbert Loxen, Marco Eichelberg
17  *
18  * Purpose:
19  * classes: SiSecurityProfile
20  *
21  * Last Update: $Author: joergr $
22  * Update Date: $Date: 2010-10-14 13:17:25 $
23  * CVS/RCS Revision: $Revision: 1.7 $
24  * Status: $State: Exp $
25  *
26  * CVS/RCS Log at end of file
27  *
28  */
29 
30 #ifndef SISPROF_H
31 #define SISPROF_H
32 
33 #include "dcmtk/config/osconfig.h"
34 #include "dcmtk/dcmsign/sitypes.h" /* for E_KeyType */
35 
36 #ifdef WITH_OPENSSL
37 
38 #include "dcmtk/dcmdata/dcxfer.h" /* for E_TransferSyntax */
39 
40 class SiAlgorithm;
41 class DcmItem;
42 class DcmAttributeTag;
43 class SiMAC;
44 class DcmTagKey;
45 
49 {
50 public:
51 
54 
56  virtual ~SiSecurityProfile() { }
57 
62  virtual OFBool isAllowableMACType(E_MACType macType) const = 0;
63 
68  virtual OFBool isAllowableMAC(const SiMAC& mac) const;
69 
74  virtual OFBool isAllowableAlgorithmType(E_KeyType keyType) const = 0;
75 
80  virtual OFBool isAllowableAlgorithm(const SiAlgorithm& algo) const;
81 
86  virtual OFBool isAllowableTransferSyntax(E_TransferSyntax xfer) const = 0;
87 
93  virtual OFBool attributeRequired(const DcmTagKey& key) const = 0;
94 
100  virtual OFBool attributeForbidden(const DcmTagKey& key) const = 0;
101 
109  virtual OFCondition updateAttributeList(DcmItem &item, DcmAttributeTag& tagList);
110 
117  virtual OFBool checkAttributeList(DcmItem &item, DcmAttributeTag& tagList);
118 
124  static OFBool containsTag(DcmAttributeTag& tagList, const DcmTagKey& key);
125 
126 private:
127 
130 
133 
134 };
135 
136 #endif
137 #endif
138 
139 /*
140  * $Log: sisprof.h,v $
141  * Revision 1.7 2010-10-14 13:17:25 joergr
142  * Updated copyright header. Added reference to COPYRIGHT file.
143  *
144  * Revision 1.6 2005-12-08 16:04:45 meichel
145  * Changed include path schema for all DCMTK header files
146  *
147  * Revision 1.5 2003/06/04 14:21:03 meichel
148  * Simplified include structure to avoid preprocessor limitation
149  * (max 32 #if levels) on MSVC5 with STL.
150  *
151  * Revision 1.4 2001/11/16 15:50:50 meichel
152  * Adapted digital signature code to final text of supplement 41.
153  *
154  * Revision 1.3 2001/09/26 14:30:22 meichel
155  * Adapted dcmsign to class OFCondition
156  *
157  * Revision 1.2 2001/06/01 15:50:51 meichel
158  * Updated copyright header
159  *
160  * Revision 1.1 2000/11/07 16:48:59 meichel
161  * Initial release of dcmsign module for DICOM Digital Signatures
162  *
163  *
164  */
165 


Generated on Thu Dec 20 2012 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.2