The branch OpenSSL_1_0_2-stable has been updated
       via  72fdf00202b1f0eca369ef4742e321b61fc5f599 (commit)
       via  c9e2fab4b3485afa525cc5a185b1d0641e9afc96 (commit)
      from  b3ed78cb84a5da280f268d607d1daa0f7bcd8222 (commit)


- Log -----------------------------------------------------------------
commit 72fdf00202b1f0eca369ef4742e321b61fc5f599
Author: Richard Levitte <[email protected]>
Date:   Wed May 18 22:27:54 2016 +0200

    Cleanup openssl.ec
    
    HMAC doesn't have any error codes
    
    Reviewed-by: Rich Salz <[email protected]>

commit c9e2fab4b3485afa525cc5a185b1d0641e9afc96
Author: Richard Levitte <[email protected]>
Date:   Wed May 18 19:52:34 2016 +0200

    Fix util/mkerr.pl
    
    - Adjust mkerr.pl to produce the line length we used for source
      reformating.
    
    - Have mkerr.pl keep track of preprocessor directive indentation
    
      Among others, do not spuriously throw away a #endif at the end of
      header files.
    
    - Make sure mkerr.pl specifies any header inclusion correctly
    
    Reviewed-by: Rich Salz <[email protected]>

-----------------------------------------------------------------------

Summary of changes:
 crypto/err/openssl.ec |  2 +-
 util/mkerr.pl         | 41 ++++++++++++++++++++++++++++-------------
 2 files changed, 29 insertions(+), 14 deletions(-)

diff --git a/crypto/err/openssl.ec b/crypto/err/openssl.ec
index 139afe3..04dc9ce 100644
--- a/crypto/err/openssl.ec
+++ b/crypto/err/openssl.ec
@@ -32,7 +32,7 @@ L ECDSA               crypto/ecdsa/ecdsa.h            
crypto/ecdsa/ecs_err.c
 L ECDH         crypto/ecdh/ecdh.h              crypto/ecdh/ech_err.c
 L STORE                crypto/store/store.h            crypto/store/str_err.c
 L TS           crypto/ts/ts.h                  crypto/ts/ts_err.c
-L HMAC         crypto/hmac/hmac.h              crypto/hmac/hmac_err.c
+#L HMAC                crypto/hmac/hmac.h              crypto/hmac/hmac_err.c
 L CMS          crypto/cms/cms.h                crypto/cms/cms_err.c
 L JPAKE                crypto/jpake/jpake.h            crypto/jpake/jpake_err.c
 
diff --git a/util/mkerr.pl b/util/mkerr.pl
index 09ebebe..c197f3a 100644
--- a/util/mkerr.pl
+++ b/util/mkerr.pl
@@ -158,8 +158,8 @@ close IN;
 while (($hdr, $lib) = each %libinc)
 {
        next if($hdr eq "NONE");
-       print STDERR "Scanning header file $hdr\n" if $debug; 
-       my $line = "", $def= "", $linenr = 0, $gotfile = 0;
+       print STDERR "Scanning header file $hdr\n" if $debug;
+       my $line = "", $def= "", $linenr = 0, $gotfile = 0, $cpp = 0;
        if (open(IN, "<$hdr")) {
            $gotfile = 1;
            while(<IN>) {
@@ -382,14 +382,21 @@ foreach $lib (keys %csrc)
 
        # Rewrite the header file
 
+       $cpp = 0;
+       $cplusplus = 0;
        if (open(IN, "<$hfile")) {
            # Copy across the old file
            while(<IN>) {
+               $cplusplus = $cpp if /^#.*ifdef.*cplusplus/;
+               $cpp++ if /^#\s*if/;
+               $cpp-- if /^#\s*endif/;
                push @out, $_;
                last if (/BEGIN ERROR CODES/);
            }
            close IN;
        } else {
+           $cpp = 1;
+           $cplusplus = 1;
            push @out,
 "/* ====================================================================\n",
 " * Copyright (c) 2001-$year The OpenSSL Project.  All rights reserved.\n",
@@ -446,11 +453,11 @@ foreach $lib (keys %csrc)
 " */\n",
 "\n",
 "#ifndef HEADER_${lib}_ERR_H\n",
-"#define HEADER_${lib}_ERR_H\n",
+"# define HEADER_${lib}_ERR_H\n",
 "\n",
-"#ifdef  __cplusplus\n",
+"# ifdef  __cplusplus\n",
 "extern \"C\" {\n",
-"#endif\n",
+"# endif\n",
 "\n",
 "/* BEGIN ERROR CODES */\n";
        }
@@ -463,6 +470,7 @@ foreach $lib (keys %csrc)
  * The following lines are auto generated by the script mkerr.pl. Any changes
  * made after this point may be overwritten when the script is next run.
  */
+
 EOF
        if($static) {
                print OUT <<"EOF";
@@ -523,11 +531,17 @@ EOF
        }
        print OUT <<"EOF";
 
-#ifdef  __cplusplus
-}
-#endif
-#endif
 EOF
+       do {
+           if ($cplusplus == $cpp) {
+               print OUT "#", " "x$cpp, "ifdef  __cplusplus\n";
+               print OUT "}\n";
+               print OUT "#", " "x$cpp, "endif\n";
+           }
+           if ($cpp-- > 0) {
+               print OUT "#", " "x$cpp, "endif\n";
+           }
+       } while ($cpp);
        close OUT;
 
        # Rewrite the C source file containing the error details.
@@ -559,8 +573,9 @@ EOF
 
        my $hincf;
        if($static) {
-               $hfile =~ /([^\/]+)$/;
-               $hincf = "<${hprefix}$1>";
+               $hincf = $hfile;
+               $hincf =~ s|.*/||g;
+               $hincf = "<${hprefix}${hincf}>";
        } else {
                $hincf = "\"$hfile\"";
        }
@@ -665,7 +680,7 @@ EOF
                        $fn = $ftrans{$fn};
                }
 #              print OUT "{ERR_PACK($pack_errcode,$i,0),\t\"$fn\"},\n";
-               if(length($i) + length($fn) > 58) {
+               if(length($i) + length($fn) > 57) {
                        print OUT "    {ERR_FUNC($i),\n     \"$fn\"},\n";
                } else {
                        print OUT "    {ERR_FUNC($i), \"$fn\"},\n";
@@ -688,7 +703,7 @@ EOF
                        $rn = $1;
                        $rn =~ tr/_[A-Z]/ [a-z]/;
                }
-               if(length($i) + length($rn) > 56) {
+               if(length($i) + length($rn) > 55) {
                        print OUT "    {${rstr},\n     \"$rn\"},\n";
                } else {
                        print OUT "    {${rstr}, \"$rn\"},\n";
_____
openssl-commits mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits

Reply via email to