PR: 2066
authorDr. Stephen Henson <steve@openssl.org>
Thu, 15 Oct 2009 17:13:54 +0000 (17:13 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Thu, 15 Oct 2009 17:13:54 +0000 (17:13 +0000)
Submitted by: Guenter <lists@gknw.net>
Approved by: steve@openssl.org

Add -r option to dgst to produce format compatible with core utilities.

Makefile.org
apps/Makefile
apps/dgst.c

index 20a5c4cab59adfc72c1b03c7858b2c3d8d4fae33..1eacb09028ee9b21fa391addc70137d62691aa6f 100644 (file)
@@ -360,7 +360,7 @@ libclean:
        rm -f *.map *.so *.so.* *.dll engines/*.so engines/*.dll *.a engines/*.a */lib */*/lib
 
 clean: libclean
-       rm -f shlib/*.o *.o core a.out fluff rehash.time testlog make.log cctest cctest.c
+       rm -f shlib/*.o *.o core a.out fluff testlog make.log cctest cctest.c
        @set -e; target=clean; $(RECURSIVE_BUILD_CMD)
        rm -f $(LIBS)
        rm -f openssl.pc libssl.pc libcrypto.pc
@@ -389,23 +389,12 @@ gentests:
        $(CLEARENV) && $(MAKE) -e $(BUILDENV) TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on generate );
 
 dclean:
-       rm -rf *.bak include/openssl certs/.0
+       rm -rf *.bak include/openssl
        @set -e; target=dclean; $(RECURSIVE_BUILD_CMD)
 
-rehash: rehash.time
-rehash.time: certs apps
-       @if [ -z "$(CROSS_COMPILE_PREFIX)" ]; then \
-               (OPENSSL="`pwd`/util/opensslwrap.sh"; \
-               [ -x "apps/openssl.exe" ] && OPENSSL="apps/openssl.exe" || :; \
-               OPENSSL_DEBUG_MEMORY=on; \
-               export OPENSSL OPENSSL_DEBUG_MEMORY; \
-               $(PERL) tools/c_rehash certs) && \
-               touch rehash.time; \
-       else :; fi
-
 test:   tests
 
-tests: rehash
+tests:
        @(cd test && echo "testing..." && \
        $(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on OPENSSL_CONF=../apps/openssl.cnf tests );
        OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a
index cfedc7374a8fb59223d40f0ca818547b7528d9d2..ee13b94a93cf967eaeb84314150f3f31ec080ecf 100644 (file)
@@ -159,7 +159,6 @@ $(EXE): progs.h $(E_OBJ) $(PROGRAM).o $(DLIBCRYPTO) $(DLIBSSL)
                APPNAME=$(EXE) OBJECTS="$(PROGRAM).o $(E_OBJ)" \
                LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
                link_app.$${shlib_target}
-       @(cd ..; $(MAKE) rehash)
 
 progs.h: progs.pl
        $(PERL) progs.pl $(E_EXE) >progs.h
index 4c6644edd75695f6a6c2361d8fa86e647876259c..64fe56e5180893c49c76447deb024d6593d223e6 100644 (file)
@@ -155,6 +155,8 @@ int MAIN(int argc, char **argv)
                if ((*argv)[0] != '-') break;
                if (strcmp(*argv,"-c") == 0)
                        separator=1;
+               if (strcmp(*argv,"-r") == 0)
+                       separator=2;
                else if (strcmp(*argv,"-rand") == 0)
                        {
                        if (--argc < 1) break;
@@ -262,6 +264,7 @@ int MAIN(int argc, char **argv)
                BIO_printf(bio_err,"unknown option '%s'\n",*argv);
                BIO_printf(bio_err,"options are\n");
                BIO_printf(bio_err,"-c              to output the digest with separating colons\n");
+               BIO_printf(bio_err,"-r              to output the digest in coreutils format\n");
                BIO_printf(bio_err,"-d              to output debug info\n");
                BIO_printf(bio_err,"-hex            output as hex dump\n");
                BIO_printf(bio_err,"-binary         output in binary form\n");
@@ -602,6 +605,12 @@ int do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, int binout,
                }
 
        if(binout) BIO_write(out, buf, len);
+       else if (sep == 2)
+               {
+               for (i=0; i<(int)len; i++)
+                       BIO_printf(out, "%02x",buf[i]);
+               BIO_printf(out, " *%s\n", file);
+               }
        else 
                {
                if (sig_name)