diff options
Diffstat (limited to '')
| -rw-r--r-- | tests/t-encrypt.c | 28 | 
1 files changed, 27 insertions, 1 deletions
diff --git a/tests/t-encrypt.c b/tests/t-encrypt.c index 8f6e5c5d..d99beff0 100644 --- a/tests/t-encrypt.c +++ b/tests/t-encrypt.c @@ -31,6 +31,23 @@                                  exit (1); }                               \                               } while(0) +static void +print_data ( GpgmeData dh ) +{ +    char buf[100]; +    size_t nread; +    GpgmeError err; + +    err = gpgme_rewind_data ( dh ); +    fail_if_err (err); +    while ( !(err = gpgme_read_data ( dh, buf, 100, &nread )) ) { +        fwrite ( buf, nread, 1, stdout ); +    } +    if (err != GPGME_EOF)  +        fail_if_err (err); +} + +  int   main (int argc, char **argv ) @@ -40,10 +57,11 @@ main (int argc, char **argv )      GpgmeData in, out;      GpgmeRecipientSet rset; +  do {      err = gpgme_new_context (&ctx);      fail_if_err (err); -    err = gpgme_new_data ( &in, "Hallo Leute", 11, 0 ); +    err = gpgme_new_data ( &in, "Hallo Leute\n", 12, 0 );      fail_if_err (err);      err = gpgme_new_data ( &out, NULL, 0,0 ); @@ -53,16 +71,24 @@ main (int argc, char **argv )      fail_if_err (err);      err = gpgme_add_recipient (rset, "Bob");      fail_if_err (err); +    err = gpgme_add_recipient (rset, "Alpha"); +    fail_if_err (err);      err = gpgme_encrypt (ctx, rset, in, out );      fail_if_err (err); +    fflush (NULL); +    fputs ("Begin Result:\n", stdout ); +    print_data (out); +    fputs ("End Result.\n", stdout );      gpgme_release_recipient_set (rset);      gpgme_release_data (in);      gpgme_release_data (out);      gpgme_release_context (ctx); +  } while ( argc > 1 && !strcmp( argv[1], "--loop" ) ); +         return 0;  }  | 
