diff options
Diffstat (limited to 'filter/arc4filter.c')
-rw-r--r-- | filter/arc4filter.c | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/filter/arc4filter.c b/filter/arc4filter.c deleted file mode 100644 index b025368c..00000000 --- a/filter/arc4filter.c +++ /dev/null @@ -1,46 +0,0 @@ -#include <fitz.h> - -typedef struct fz_arc4c_s fz_arc4c; - -struct fz_arc4c_s -{ - fz_filter super; - fz_arc4 arc4; -}; - -fz_error * -fz_newarc4filter(fz_filter **fp, unsigned char *key, unsigned keylen) -{ - FZ_NEWFILTER(fz_arc4c, f, arc4filter); - fz_arc4init(&f->arc4, key, keylen); - return nil; -} - -void -fz_droparc4filter(fz_filter *f) -{ -} - -fz_error * -fz_processarc4filter(fz_filter *filter, fz_buffer *in, fz_buffer *out) -{ - fz_arc4c *f = (fz_arc4c*)filter; - int n; - - while (1) - { - if (in->rp + 1 > in->wp) { - if (in->eof) - return fz_iodone; - return fz_ioneedin; - } - if (out->wp + 1 > out->ep) - return fz_ioneedout; - - n = MIN(in->wp - in->rp, out->ep - out->wp); - fz_arc4encrypt(&f->arc4, out->wp, in->rp, n); - in->rp += n; - out->wp += n; - } -} - |