-/* --- Signing --- */
-
-typedef struct sig {
- const struct sigops *ops;
- key_packdef *kp;
- void *kd;
- const gchash *ch;
- ghash *h;
-} sig;
-
-typedef struct sigops {
- const key_fetchdef *kf; /* Key fetching structure */
- size_t kdsz; /* Size of the key-data structure */
- sig *(*init)(key */*k*/, void */*kd*/, const gchash */*hc*/);
- int (*doit)(sig */*s*/, dstr */*d*/);
- const char *(*check)(sig */*s*/);
- void (*destroy)(sig */*s*/);
-} sigops;
-
-struct sigtab {
- const char *name;
- const sigops *signops;
- const sigops *verifyops;
- const gchash *ch;
-};
-
-extern const struct sigtab sigtab[];
-
-/* --- Data encoding --- */
-
-typedef struct enc {
- const struct encops *ops;
- FILE *fp;
-} enc;
-
-typedef struct encops {
- const char *name;
- const char *rmode, *wmode;
- int nraw, ncook;
- enc *(*initenc)(FILE */*fp*/, const char */*msg*/);
- enc *(*initdec)(FILE */*fp*/,
- int (*/*func*/)(const char *, void *), void */*p*/);
- int (*read)(enc */*e*/, void */*p*/, size_t /*sz*/);
- int (*write)(enc */*e*/, const void */*p*/, size_t /*sz*/);
- int (*encdone)(enc */*e*/);
- int (*decdone)(enc */*e*/);
- void (*destroy)(enc */*e*/);
-} encops;
-
-extern const encops enctab[];
-
-/*----- Functions provided ------------------------------------------------*/
-