aboutsummaryrefslogtreecommitdiffstats
path: root/src/modes/mode_pad/mode_pad.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modes/mode_pad/mode_pad.cpp')
-rw-r--r--src/modes/mode_pad/mode_pad.cpp103
1 files changed, 0 insertions, 103 deletions
diff --git a/src/modes/mode_pad/mode_pad.cpp b/src/modes/mode_pad/mode_pad.cpp
deleted file mode 100644
index 918964c74..000000000
--- a/src/modes/mode_pad/mode_pad.cpp
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
-* CBC Padding Methods
-* (C) 1999-2007,2013 Jack Lloyd
-*
-* Distributed under the terms of the Botan license
-*/
-
-#include <botan/mode_pad.h>
-#include <botan/exceptn.h>
-
-namespace Botan {
-
-/*
-* Pad with PKCS #7 Method
-*/
-void PKCS7_Padding::add_padding(secure_vector<byte>& buffer,
- size_t last_byte_pos,
- size_t block_size) const
- {
- const byte pad_value = block_size - last_byte_pos;
-
- for(size_t i = 0; i != pad_value; ++i)
- buffer.push_back(pad_value);
- }
-
-/*
-* Unpad with PKCS #7 Method
-*/
-size_t PKCS7_Padding::unpad(const byte block[], size_t size) const
- {
- size_t position = block[size-1];
-
- if(position > size)
- throw Decoding_Error("Bad padding in " + name());
-
- for(size_t j = size-position; j != size-1; ++j)
- if(block[j] != position)
- throw Decoding_Error("Bad padding in " + name());
-
- return (size-position);
- }
-
-/*
-* Pad with ANSI X9.23 Method
-*/
-void ANSI_X923_Padding::add_padding(secure_vector<byte>& buffer,
- size_t last_byte_pos,
- size_t block_size) const
- {
- const byte pad_value = block_size - last_byte_pos;
-
- for(size_t i = last_byte_pos; i < block_size; ++i)
- buffer.push_back(0);
- buffer.push_back(pad_value);
- }
-
-/*
-* Unpad with ANSI X9.23 Method
-*/
-size_t ANSI_X923_Padding::unpad(const byte block[], size_t size) const
- {
- size_t position = block[size-1];
- if(position > size)
- throw Decoding_Error(name());
- for(size_t j = size-position; j != size-1; ++j)
- if(block[j] != 0)
- throw Decoding_Error(name());
- return (size-position);
- }
-
-/*
-* Pad with One and Zeros Method
-*/
-void OneAndZeros_Padding::add_padding(secure_vector<byte>& buffer,
- size_t last_byte_pos,
- size_t block_size) const
- {
- buffer.push_back(0x80);
-
- for(size_t i = last_byte_pos + 1; i % block_size; ++i)
- buffer.push_back(0x00);
- }
-
-/*
-* Unpad with One and Zeros Method
-*/
-size_t OneAndZeros_Padding::unpad(const byte block[], size_t size) const
- {
- while(size)
- {
- if(block[size-1] == 0x80)
- break;
- if(block[size-1] != 0x00)
- throw Decoding_Error(name());
- size--;
- }
- if(!size)
- throw Decoding_Error(name());
- return (size-1);
- }
-
-
-}