[openssl-commits] [openssl] OpenSSL_1_0_1-stable update

Richard Levitte levitte at openssl.org
Fri Jan 30 04:04:02 UTC 2015


The branch OpenSSL_1_0_1-stable has been updated
       via  81ce20e6ac1d3298bfff8bd059007968f05115e0 (commit)
      from  324a9774928c362083ab581cbc9052ac0b787283 (commit)


- Log -----------------------------------------------------------------
commit 81ce20e6ac1d3298bfff8bd059007968f05115e0
Author: Richard Levitte <levitte at openssl.org>
Date:   Fri Jan 30 04:44:17 2015 +0100

    dso_vms needs to add the .EXE extension if there is none already
    
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (cherry picked from commit be7b1097e28ff6d49f0d4b7ab8b036d6da87ebc6)

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

Summary of changes:
 crypto/dso/dso_vms.c |   16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/crypto/dso/dso_vms.c b/crypto/dso/dso_vms.c
index 14d885d..8793f7e 100644
--- a/crypto/dso/dso_vms.c
+++ b/crypto/dso/dso_vms.c
@@ -172,6 +172,7 @@ static int vms_load(DSO *dso)
 # endif                         /* __INITIAL_POINTER_SIZE == 64 */
 
     const char *sp1, *sp2;      /* Search result */
+    const char *ext = NULL;	/* possible extension to add */
 
     if (filename == NULL) {
         DSOerr(DSO_F_VMS_LOAD, DSO_R_NO_FILENAME);
@@ -214,11 +215,19 @@ static int vms_load(DSO *dso)
     /* Now, let's see if there's a type, and save the position in sp2 */
     sp2 = strchr(sp1, '.');
     /*
+     * If there is a period and the next character is a semi-colon,
+     * we need to add an extension
+     */
+    if (sp2 != NULL && sp2[1] == ';')
+        ext = ".EXE";
+    /*
      * If we found it, that's where we'll cut.  Otherwise, look for a version
      * number and save the position in sp2
      */
-    if (sp2 == NULL)
+    if (sp2 == NULL) {
         sp2 = strchr(sp1, ';');
+        ext = ".EXE";
+    }
     /*
      * If there was still nothing to find, set sp2 to point at the end of the
      * string
@@ -244,6 +253,11 @@ static int vms_load(DSO *dso)
 
     strncpy(p->imagename, filename, sp1 - filename);
     p->imagename[sp1 - filename] = '\0';
+    if (ext) {
+        strcat(p->imagename, ext);
+        if (*sp2 == '.')
+            sp2++;
+    }
     strcat(p->imagename, sp2);
 
     p->filename_dsc.dsc$w_length = strlen(p->filename);


More information about the openssl-commits mailing list