summaryrefslogtreecommitdiff
path: root/filters.h
diff options
context:
space:
mode:
Diffstat (limited to 'filters.h')
-rw-r--r--filters.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/filters.h b/filters.h
index 750d976..ce6c734 100644
--- a/filters.h
+++ b/filters.h
@@ -251,13 +251,14 @@ protected:
ByteQueue m_inQueue;
};
-//! Filter Wrapper for StreamTransformation
+//! Filter Wrapper for StreamTransformation, optionally handling padding/unpadding when needed
class CRYPTOPP_DLL StreamTransformationFilter : public FilterWithBufferedInput, private FilterPutSpaceHelper
{
public:
enum BlockPaddingScheme {NO_PADDING, ZEROS_PADDING, PKCS_PADDING, ONE_AND_ZEROS_PADDING, DEFAULT_PADDING};
/*! DEFAULT_PADDING means PKCS_PADDING if c.MandatoryBlockSize() > 1 && c.MinLastBlockSize() == 0 (e.g. ECB or CBC mode),
- otherwise NO_PADDING (OFB, CFB, CTR, CBC-CTS modes) */
+ otherwise NO_PADDING (OFB, CFB, CTR, CBC-CTS modes).
+ See http://www.weidai.com/scan-mirror/csp.html for details of the padding schemes. */
StreamTransformationFilter(StreamTransformation &c, BufferedTransformation *attachment = NULL, BlockPaddingScheme padding = DEFAULT_PADDING);
void FirstPut(const byte *inString);