X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/79ba130cb5776f994f6a3f0f87159d8cbc5ff129..c760149fcb65296defd1af967fbfa098bd83143a:/cbc-def.h diff --git a/cbc-def.h b/cbc-def.h index aff245c..14a0575 100644 --- a/cbc-def.h +++ b/cbc-def.h @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: cbc-def.h,v 1.1 1999/12/10 23:16:39 mdw Exp $ + * $Id: cbc-def.h,v 1.2 2000/06/17 10:49:52 mdw Exp $ * * Definitions for cipher block chaining mode * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: cbc-def.h,v $ + * Revision 1.2 2000/06/17 10:49:52 mdw + * Use secure arena for memory allocation. + * * Revision 1.1 1999/12/10 23:16:39 mdw * Split mode macros into interface and implementation. * @@ -49,6 +52,10 @@ #include #include +#ifndef CATACOMB_ARENA_H +# include "arena.h" +#endif + #ifndef CATACOMB_BLKC_H # include "blkc.h" #endif @@ -57,6 +64,10 @@ # include "gcipher.h" #endif +#ifndef CATACOMB_PARANOIA_H +# include "paranoia.h" +#endif + /*----- Macros ------------------------------------------------------------*/ /* --- @CBC_DEF@ --- * @@ -389,7 +400,7 @@ typedef struct gctx { \ \ static gcipher *ginit(const void *k, size_t sz) \ { \ - gctx *g = CREATE(gctx); \ + gctx *g = S_CREATE(gctx); \ g->c.ops = &gops; \ pre##_cbcinit(&g->k, k, sz, 0); \ return (&g->c); \ @@ -410,7 +421,8 @@ static void gdecrypt(gcipher *c, const void *s, void *t, size_t sz) \ static void gdestroy(gcipher *c) \ { \ gctx *g = (gctx *)c; \ - DESTROY(g); \ + BURN(*g); \ + S_DESTROY(g); \ } \ \ static void gsetiv(gcipher *c, const void *iv) \ @@ -420,12 +432,12 @@ static void gsetiv(gcipher *c, const void *iv) \ } \ \ static const gcipher_ops gops = { \ - &pre##_cbc.b, \ - gencrypt, gdecrypt, gdestroy, gsetiv, 0 \ + &pre##_cbc, \ + gencrypt, gdecrypt, gdestroy, gsetiv, 0 \ }; \ \ const gccipher pre##_cbc = { \ - { #pre "-cbc", PRE##_KEYSZ, PRE##_BLKSZ }, \ + #pre "-cbc", pre##_keysz, PRE##_BLKSZ, \ ginit \ }; \ \