summaryrefslogtreecommitdiff
path: root/lib/lib2.c
diff options
context:
space:
mode:
authorBenedict <benedict@0xb8000.de>2016-08-04 19:24:17 +0200
committerBenedict <benedict@0xb8000.de>2017-02-21 13:00:25 +0100
commit4e0e29f48f797206a21aa5ba7855ffde72e85cf9 (patch)
tree951795c82c357aa9560f7b529f5b93e51554ed86 /lib/lib2.c
parent11b2ff584c67cf85ebe2405f6a74ab2799736927 (diff)
completed set3, challenge 20
Diffstat (limited to 'lib/lib2.c')
-rw-r--r--lib/lib2.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/lib2.c b/lib/lib2.c
index c7e6ebb..e447054 100644
--- a/lib/lib2.c
+++ b/lib/lib2.c
@@ -6,12 +6,11 @@
* and append to last block so that it is also of blocksize length
*/
-char *pkcs7_padding(char *string, int length_string, int blocksize)
+char *__pkcs7_padding(char *string, int length_string, int blocksize, int *padding)
{
char *result = NULL;
int i;
int value = blocksize - (length_string % blocksize);
-
result = malloc(length_string+value+1);
memcpy(result, string, length_string);
@@ -19,10 +18,15 @@ char *pkcs7_padding(char *string, int length_string, int blocksize)
result[length_string+i] = (char) value;
}
result[length_string+i] = '\0';
-
+ *padding = value;
return result;
}
+char *pkcs7_padding(char *string, int length_string, int blocksize)
+{
+ int not_interested;
+ return __pkcs7_padding(string, length_string, blocksize, &not_interested);
+}
/**
* unpadd a string
* @param in string which should be unpadded