summaryrefslogtreecommitdiff
path: root/VMS
Commit message (Collapse)AuthorAgeFilesLines
* VMS documentation fixesRichard Levitte2021-02-122-11/+22
| | | | | | | | | This mostly clarifies details. Fixes #13789 Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/13835)
* Configurations/descrip.mms.tmpl: avoid enormous PIPE commandsRichard Levitte2021-02-122-0/+45
| | | | | | | | | | | | DCL has a total command line limitation that's too easily broken by them. We solve them by creating separate message scripts and using them. Fixes #13789 Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/13835)
* Following the license change, modify the boilerplates in last fewRichard Levitte2018-12-062-2/+2
| | | | | | | [skip ci] Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7836)
* Switch to MAJOR.MINOR.PATCH versioning and version 3.0.0-devRichard Levitte2018-12-062-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're strictly use version numbers of the form MAJOR.MINOR.PATCH. Letter releases are things of days past. The most central change is that we now express the version number with three macros, one for each part of the version number: OPENSSL_VERSION_MAJOR OPENSSL_VERSION_MINOR OPENSSL_VERSION_PATCH We also provide two additional macros to express pre-release and build metadata information (also specified in semantic versioning): OPENSSL_VERSION_PRE_RELEASE OPENSSL_VERSION_BUILD_METADATA To get the library's idea of all those values, we introduce the following functions: unsigned int OPENSSL_version_major(void); unsigned int OPENSSL_version_minor(void); unsigned int OPENSSL_version_patch(void); const char *OPENSSL_version_pre_release(void); const char *OPENSSL_version_build_metadata(void); Additionally, for shared library versioning (which is out of scope in semantic versioning, but that we still need): OPENSSL_SHLIB_VERSION We also provide a macro that contains the release date. This is not part of the version number, but is extra information that we want to be able to display: OPENSSL_RELEASE_DATE Finally, also provide the following convenience functions: const char *OPENSSL_version_text(void); const char *OPENSSL_version_text_full(void); The following macros and functions are deprecated, and while currently existing for backward compatibility, they are expected to disappear: OPENSSL_VERSION_NUMBER OPENSSL_VERSION_TEXT OPENSSL_VERSION OpenSSL_version_num() OpenSSL_version() Also, this function is introduced to replace OpenSSL_version() for all indexes except for OPENSSL_VERSION: OPENSSL_info() For configuration, the option 'newversion-only' is added to disable all the macros and functions that are mentioned as deprecated above. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/7724)
* Simplify the handling of shared library version numbersRichard Levitte2017-07-262-2/+2
| | | | | | | | | | | | | | | | | | | | | | | $(SHLIB_MAJOR).$(SHLIB_MINOR) is really a synonym for $(SHLIB_VERSION_NUMBER), and is therefore an added complexity, so better to use $(SHLIB_VERSION_NUMBER) directly. SHLIB_MAJOR and SHLIB_MINOR are now unused, but are kept around purely as information in case someone relies on their existence. At the same time, add support for custom shared library extensions with the three new Makefile variables SHLIB_EXT, SHLIB_EXT_SIMPLE and SHLIB_EXT_IMPORT. By default, they hold the variants of shared library extensions we support. On mingw and cygwin, SHLIB_EXT_IMPORT is defined; on all other Unix platforms, it's empty. An example to get shared libraries with a slightly different SOVER name: $ make SHLIB_EXT='.$(SHLIB_VERSION_NUMBER).so' Fixes #3902 Reviewed-by: Andy Polyakov <appro@openssl.org> (Merged from https://github.com/openssl/openssl/pull/3964)
* VMS: Don't force symbol mixed case when building DSOsRichard Levitte2016-09-111-1/+2
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* dasync is an internal testing engine, so don't install itRichard Levitte2016-08-171-2/+2
| | | | | | | Unfortunately, it means that the VMS IVP gets a bit crippled. This will be fixed later on. Reviewed-by: Matt Caswell <matt@openssl.org>
* VMS: have the IVP verify that a well known engine loads properlyRichard Levitte2016-08-041-0/+10
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: If configured no-shared, don't provide shareable image logical namesRichard Levitte2016-08-033-2/+10
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: Adjust the engines directory by adding the pointer size to its nameRichard Levitte2016-07-101-2/+2
| | | | | | | | | With OpenSSL 1.1 and on, the engines are tightly tied to the shared library they're to be used with. That makes them depend on the pointer size as well as the shared library version, and this gets reflected in the name of the directory they're installed in. Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: Small cleanupsRichard Levitte2016-07-101-0/+1
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: OSSL$EXE: needs to reflect that programs are installed in two placesRichard Levitte2016-07-101-1/+2
| | | | | | | | | We're installing architecture dependent (compiled) programs in architecture specific directories, while architecture independent programs (scripts) get installed in the general programs directory. OSSL$EXE: reflects that by having two values. Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: Document the changed logical names in VMS/openssl_staryup.com.inRichard Levitte2016-07-101-14/+22
| | | | | | Since there's been quite some changes, documentation needs updating Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: Simplify the spec of the default certs & keys area.Richard Levitte2016-07-102-4/+2
| | | | | | | | | We previously had a number of logical names for the different parts. There's really no need for that, the default directories are in one directory tree. So we only define OSSL$DATAROOT: and make everything related to that one. Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: openssl_ivp must call versioned openssl_startup and openssl_utilsRichard Levitte2016-07-081-3/+3
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: defined the logical name OPENSSL at all timesRichard Levitte2016-07-072-4/+4
| | | | | | This logical names permits '#include <openssl/foo.h>' to work properly. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Versioning engines default location: the VMS caseRichard Levitte2016-07-072-34/+20
| | | | | | | | | | | | | | | | | | OpenSSL engines are tied to the OpenSSL shared library versions, starting with OpenSSL 1.1. We therefore need to install them in directories which have the shared library version in it's name, to easily allow multiple OpenSSL versions to be installed at the same time. For VMS, the change is a bit more involved, primarly because the top installation directory was already versioned, *as well as* some of the files inside. That's a bit too much. Version numbering in files is also a bit different on VMS. The engines for shared library version 1.1 will therefore end up in OSSL$INSTROOT:[ENGINES0101.'arch'] ('arch' is the architecture we build for) Reviewed-by: Rich Salz <rsalz@openssl.org>
* VMS: Add installation verification procedureRichard Levitte2016-07-021-0/+40
| | | | | | | | | | | On VMS, it's customary to have a procedure to check that the software was installed correctly and can run as advertised. The procedure added here is fairly simple, it checks that all libraries are in place, that the header crypto.h is in place, and that the command 'openssl version -a' runs without trouble. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Fix some VMS inconsistenciesRichard Levitte2016-07-021-7/+7
| | | | | | | | | | | | - The install top is versioned by default. However, only the major version should be used. - the default areas for certs, private keys an config files have changed, now all prefixed with 'OSSL$'. This gets reflected in cryptlib.h. - [.VMS]openssl_startup.com.in had some faults regarding creating rooted concealed logical names. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Install the openssl app with version number on VMSRichard Levitte2016-07-022-11/+14
| | | | | | | | This makes it possible for script writers to lock on to a specific version if they need to. Note that only the major version number is used. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Have the VMS shared library file names contain the shared versionRichard Levitte2016-07-022-17/+29
| | | | | | | Also, have the static library file names contain the pointer size when applicable. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Pass down correct information to the VMS startup script templatesRichard Levitte2016-07-022-9/+6
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Make sure tsget.pl and c_rehash.pl get installed on VMS and Windows.Richard Levitte2016-05-231-3/+2
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Fix VMS/openssl_{startup,shutddown}.com.inRichard Levitte2016-05-102-12/+4
| | | | | | They were using the wrong variables. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Copyright consolidation: perl filesRich Salz2016-04-202-2/+16
| | | | | | | | | Add copyright to most .pl files This does NOT cover any .pl file that has other copyright in it. Most of those are Andy's but some are public domain. Fix typo's in some existing files. Reviewed-by: Richard Levitte <levitte@openssl.org>
* VMS: Harmonize the paths in openssl_startup.com with what's really installedRichard Levitte2016-03-291-8/+10
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Misc fixes in VMS/openssl_startup.com.inRichard Levitte2016-03-241-7/+7
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Clean away $config{no_shared} since we have $disabled{shared}Richard Levitte2016-02-222-4/+4
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Perl's chop / chomp considered bad, use a regexp insteadRichard Levitte2016-02-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Once upon a time, there was chop, which somply chopped off the last character of $_ or a given variable, and it was used to take off the EOL character (\n) of strings. ... but then, you had to check for the presence of such character. So came chomp, the better chop which checks for \n before chopping it off. And this worked well, as long as Perl made internally sure that all EOLs were converted to \n. These days, though, there seems to be a mixture of perls, so lines from files in the "wrong" environment might have \r\n as EOL, or just \r (Mac OS, unless I'm misinformed). So it's time we went for the more generic variant and use s|\R$||, the better chomp which recognises all kinds of known EOLs and chops them off. A few chops were left alone, as they are use as surgical tools to remove one last slash or one last comma. NOTE: \R came with perl 5.10.0. It means that from now on, our scripts will fail with any older version. Reviewed-by: Rich Salz <rsalz@openssl.org>
* clean away old VMS cruftRichard Levitte2016-02-1011-223/+0
| | | | | | | | | | | | The old building scripts get removed, they are hopelessly gone in bit rot by now. Also remove the old symbol hacks. They were needed needed to shorten some names to 31 characters, and to resolve other symbol clashes. Because we now compile with /NAMES=(AS_IS,SHORTENED), this is no longer required. Reviewed-by: Rich Salz <rsalz@openssl.org>
* unified build scheme: add a "unified" template for VMS descrip.mmsRichard Levitte2016-02-105-45/+242
| | | | | | | | | | | | | | | | | | | As part of this, change util/mkdef.pl to stop adding libraries to depend on in its output. mkdef.pl should ONLY output a symbol vector. Because symbol names can't be longer than 31 characters, we use the compiler to shorten those that are longer down to 23 characters plus an 8 character CRC. To make sure users of our header files will pick up on that automatically, add the DEC C supported extra headers files __decc_include_prologue.h and __decc_include_epilogue.h. Furthermore, we add a config.com, so VMS people can configure just as comfortably as any Unix folks, thusly: @config Reviewed-by: Rich Salz <rsalz@openssl.org>
* Remove the old VMS linker option file creator for shlibsRichard Levitte2016-01-071-476/+0
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* Teach mkshared.com to have a look for disabled algorithms in opensslconf.hRichard Levitte2011-10-301-2/+24
|
* For VMS, implement the possibility to choose 64-bit pointers withRichard Levitte2011-03-251-0/+2
| | | | | | | | different options: "64" The build system will choose /POINTER_SIZE=64=ARGV if the compiler supports it, otherwise /POINTER_SIZE=64. "64=" The build system will force /POINTER_SIZE=64. "64=ARGV" The build system will force /POINTER_SIZE=64=ARGV.
* After some adjustments, apply the changes OpenSSL 1.0.0d on OpenVMSRichard Levitte2011-03-195-169/+347
| | | | submitted by Steven M. Schweda <sms@antinode.info>
* First attempt at adding the possibility to set the pointer size for the ↵Richard Levitte2010-12-141-5/+24
| | | | | | builds on VMS. PR: 2393
* Functional VMS changes submitted by sms@antinode.info (Steven M. Schweda).Richard Levitte2009-05-153-59/+91
| | | | | Thank you\! (note: not tested for now, a few nightly builds should give indications though)
* From branch OpenSSL_0_9_7-stable, revision 1.1.4.1, 2002-05-23 17:25:Richard Levitte2005-04-301-0/+1
| | | | Forgot this file.
* Let's make life easier and have the VMS version of the configuration beRichard Levitte2004-05-131-0/+34
| | | | generated from the Unixly configuration file.
* Since we're currently assuming VMS can deal with dynamic engines,Richard Levitte2002-11-041-0/+1
| | | | don't include the static engine entry points in libcrypto.exe.
* End assembler macro correctly.Richard Levitte2001-11-161-4/+6
| | | | | | | On VAX, all global variables are accessed through functions, so skip doing transfer entries for variables. Forgot the looping gotos.
* A missing comma added.Richard Levitte2001-11-151-1/+1
|
* Script to create shareable images (shared libraries in Unixly terms)Richard Levitte2001-04-201-0/+351
| | | | on VMS.
* It's not just VMS that needs some symbols to be hacked. Let'sRichard Levitte2000-09-072-98/+2
| | | | | centralise those hacks in crypto/symhacks.h and use it everywhere it's needed.
* With the new stack hack macros, there's no need to shorten the namesRichard Levitte2000-06-181-104/+0
| | | | any more.
* Changes to synchronise with Unix.Richard Levitte2000-02-251-0/+21
| | | | (actually, much more is needed, like a real config script)
* A test script to check on the header filesRichard Levitte2000-01-181-0/+28
|
* Beautification and a few entries added.Richard Levitte2000-01-171-59/+87
|
* Another name longer than 31 charsRichard Levitte2000-01-161-0/+2
|
* Some new names in asn1.h are longer than 31 chars, which disturbs the VMS C ↵Richard Levitte1999-11-121-0/+21
| | | | compilers...