aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--g10/gpg.c167
1 files changed, 89 insertions, 78 deletions
diff --git a/g10/gpg.c b/g10/gpg.c
index 8d69da047..b06e392f7 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -4349,102 +4349,113 @@ print_hashline( gcry_md_hd_t md, int algo, const char *fname )
es_fputs (":\n", es_stdout);
}
+
static void
print_mds( const char *fname, int algo )
{
- FILE *fp;
- char buf[1024];
- size_t n;
- gcry_md_hd_t md;
+ FILE *fp;
+ char buf[1024];
+ size_t n;
+ gcry_md_hd_t md;
- if( !fname ) {
- fp = stdin;
+ if (!fname)
+ {
+ fp = stdin;
#ifdef HAVE_DOSISH_SYSTEM
- setmode ( fileno(fp) , O_BINARY );
+ setmode ( fileno(fp) , O_BINARY );
#endif
}
- else {
- fp = fopen( fname, "rb" );
- if (fp && is_secured_file (fileno (fp)))
- {
- fclose (fp);
- fp = NULL;
- gpg_err_set_errno (EPERM);
- }
+ else
+ {
+ fp = fopen (fname, "rb" );
+ if (fp && is_secured_file (fileno (fp)))
+ {
+ fclose (fp);
+ fp = NULL;
+ gpg_err_set_errno (EPERM);
+ }
}
- if( !fp ) {
- log_error("%s: %s\n", fname?fname:"[stdin]", strerror(errno) );
- return;
+ if (!fp)
+ {
+ log_error("%s: %s\n", fname?fname:"[stdin]", strerror(errno) );
+ return;
}
- gcry_md_open (&md, 0, 0);
- if( algo )
- gcry_md_enable (md, algo);
- else {
- if (!openpgp_md_test_algo (GCRY_MD_MD5))
- gcry_md_enable (md, GCRY_MD_MD5);
- gcry_md_enable (md, GCRY_MD_SHA1);
- if (!openpgp_md_test_algo (GCRY_MD_RMD160))
- gcry_md_enable (md, GCRY_MD_RMD160);
- if (!openpgp_md_test_algo (GCRY_MD_SHA224))
- gcry_md_enable (md, GCRY_MD_SHA224);
- if (!openpgp_md_test_algo (GCRY_MD_SHA256))
- gcry_md_enable (md, GCRY_MD_SHA256);
- if (!openpgp_md_test_algo (GCRY_MD_SHA384))
- gcry_md_enable (md, GCRY_MD_SHA384);
- if (!openpgp_md_test_algo (GCRY_MD_SHA512))
- gcry_md_enable (md, GCRY_MD_SHA512);
+ gcry_md_open (&md, 0, 0);
+ if (algo)
+ gcry_md_enable (md, algo);
+ else
+ {
+ if (!openpgp_md_test_algo (GCRY_MD_MD5))
+ gcry_md_enable (md, GCRY_MD_MD5);
+ gcry_md_enable (md, GCRY_MD_SHA1);
+ if (!openpgp_md_test_algo (GCRY_MD_RMD160))
+ gcry_md_enable (md, GCRY_MD_RMD160);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA224))
+ gcry_md_enable (md, GCRY_MD_SHA224);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA256))
+ gcry_md_enable (md, GCRY_MD_SHA256);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA384))
+ gcry_md_enable (md, GCRY_MD_SHA384);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA512))
+ gcry_md_enable (md, GCRY_MD_SHA512);
}
- while( (n=fread( buf, 1, DIM(buf), fp )) )
- gcry_md_write (md, buf, n);
- if( ferror(fp) )
- log_error("%s: %s\n", fname?fname:"[stdin]", strerror(errno) );
- else {
- gcry_md_final (md);
- if ( opt.with_colons ) {
- if ( algo )
- print_hashline( md, algo, fname );
- else {
- if (!openpgp_md_test_algo (GCRY_MD_MD5))
- print_hashline( md, GCRY_MD_MD5, fname );
- print_hashline( md, GCRY_MD_SHA1, fname );
- if (!openpgp_md_test_algo (GCRY_MD_RMD160))
- print_hashline( md, GCRY_MD_RMD160, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA224))
- print_hashline (md, GCRY_MD_SHA224, fname);
- if (!openpgp_md_test_algo (GCRY_MD_SHA256))
- print_hashline( md, GCRY_MD_SHA256, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA384))
- print_hashline ( md, GCRY_MD_SHA384, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA512))
- print_hashline ( md, GCRY_MD_SHA512, fname );
+ while ((n=fread (buf, 1, DIM(buf), fp)))
+ gcry_md_write (md, buf, n);
+
+ if (ferror(fp))
+ log_error ("%s: %s\n", fname?fname:"[stdin]", strerror(errno));
+ else
+ {
+ gcry_md_final (md);
+ if (opt.with_colons)
+ {
+ if ( algo )
+ print_hashline (md, algo, fname);
+ else
+ {
+ if (!openpgp_md_test_algo (GCRY_MD_MD5))
+ print_hashline( md, GCRY_MD_MD5, fname );
+ print_hashline( md, GCRY_MD_SHA1, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_RMD160))
+ print_hashline( md, GCRY_MD_RMD160, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA224))
+ print_hashline (md, GCRY_MD_SHA224, fname);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA256))
+ print_hashline( md, GCRY_MD_SHA256, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA384))
+ print_hashline ( md, GCRY_MD_SHA384, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA512))
+ print_hashline ( md, GCRY_MD_SHA512, fname );
}
}
- else {
- if( algo )
- print_hex(md,-algo,fname);
- else {
- if (!openpgp_md_test_algo (GCRY_MD_MD5))
- print_hex( md, GCRY_MD_MD5, fname );
- print_hex( md, GCRY_MD_SHA1, fname );
- if (!openpgp_md_test_algo (GCRY_MD_RMD160))
- print_hex( md, GCRY_MD_RMD160, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA224))
- print_hex (md, GCRY_MD_SHA224, fname);
- if (!openpgp_md_test_algo (GCRY_MD_SHA256))
- print_hex( md, GCRY_MD_SHA256, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA384))
- print_hex( md, GCRY_MD_SHA384, fname );
- if (!openpgp_md_test_algo (GCRY_MD_SHA512))
- print_hex( md, GCRY_MD_SHA512, fname );
+ else
+ {
+ if (algo)
+ print_hex (md, -algo, fname);
+ else
+ {
+ if (!openpgp_md_test_algo (GCRY_MD_MD5))
+ print_hex (md, GCRY_MD_MD5, fname);
+ print_hex (md, GCRY_MD_SHA1, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_RMD160))
+ print_hex (md, GCRY_MD_RMD160, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA224))
+ print_hex (md, GCRY_MD_SHA224, fname);
+ if (!openpgp_md_test_algo (GCRY_MD_SHA256))
+ print_hex (md, GCRY_MD_SHA256, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA384))
+ print_hex (md, GCRY_MD_SHA384, fname );
+ if (!openpgp_md_test_algo (GCRY_MD_SHA512))
+ print_hex (md, GCRY_MD_SHA512, fname );
}
}
}
- gcry_md_close(md);
+ gcry_md_close (md);
- if( fp != stdin )
- fclose(fp);
+ if (fp != stdin)
+ fclose (fp);
}