Add Music Manager's curl 7.21.2 source.
Change-Id: I259a43fa52d581524a5ce8ae1711467acb1d9d50
diff --git a/packages/vms/Makefile.am b/packages/vms/Makefile.am
new file mode 100644
index 0000000..b6f0939
--- /dev/null
+++ b/packages/vms/Makefile.am
@@ -0,0 +1,17 @@
+EXTRA_DIST = build_vms.com \
+ config-vms.h \
+ curlmsg.h \
+ curlmsg.msg \
+ curlmsg.sdl \
+ curlmsg_vms.h \
+ hpssl_alpha.opt \
+ hpssl_ia64.opt \
+ hpssl_vax.opt \
+ ldap.opt \
+ openssl_alpha.opt \
+ openssl_ia64.opt \
+ openssl_vax.opt \
+ openssl_ssl_alpha.opt \
+ openssl_ssl_ia64.opt \
+ openssl_ssl_vax.opt \
+ readme
diff --git a/packages/vms/Makefile.in b/packages/vms/Makefile.in
new file mode 100644
index 0000000..3e83ae5
--- /dev/null
+++ b/packages/vms/Makefile.in
@@ -0,0 +1,422 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = packages/vms
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
+ $(top_srcdir)/m4/curl-confopts.m4 \
+ $(top_srcdir)/m4/curl-functions.m4 \
+ $(top_srcdir)/m4/curl-override.m4 \
+ $(top_srcdir)/m4/curl-reentrant.m4 \
+ $(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+ $(top_builddir)/src/curl_config.h \
+ $(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LIBS = @CURL_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+KRB4_ENABLED = @KRB4_ENABLED@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+NROFF = @NROFF@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH = @PATH@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = build_vms.com \
+ config-vms.h \
+ curlmsg.h \
+ curlmsg.msg \
+ curlmsg.sdl \
+ curlmsg_vms.h \
+ hpssl_alpha.opt \
+ hpssl_ia64.opt \
+ hpssl_vax.opt \
+ ldap.opt \
+ openssl_alpha.opt \
+ openssl_ia64.opt \
+ openssl_vax.opt \
+ openssl_ssl_alpha.opt \
+ openssl_ssl_ia64.opt \
+ openssl_ssl_vax.opt \
+ readme
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/vms/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign packages/vms/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ distclean distclean-generic distclean-libtool distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/packages/vms/build_vms.com b/packages/vms/build_vms.com
new file mode 100644
index 0000000..68d9f00
--- /dev/null
+++ b/packages/vms/build_vms.com
@@ -0,0 +1,583 @@
+$! BUILD_VMS.COM
+$!
+$! I've taken the original build_vms.com, supplied by Nico Baggus, if
+$! memory serves me correctly, and made some modifications.
+$!
+$! SSL support is controlled by logical names. If SSL$INCLUDE is
+$! defined, then it is assumed that HP's SSL product has been installed.
+$! If OPENSSL is defined, but SSL$INCLUDE is not, then OpenSSL will be
+$! used. If neither logical name is defined, then SSL support will not
+$! be compiled/linked in. Command-line options NOHPSSL and NOSSL can be
+$! specified to override the automatic SSL selection.
+$!
+$! Command-line Options:
+$!
+$! CLEAN Delete product files for this host architecture. (No
+$! build done.)
+$! CLEAN_ALL Delete product files for all host architectures. (No
+$! build done.)
+$!
+$! 64 Compile with 64-bit pointers.
+$! CCQUAL=x Add "x" to the C compiler qualifiers.
+$! DEBUG Compile and link with debug.
+$! IEEE Use IEEE floating point. (Alpha.)
+$! LARGE Enable large-file support. (Non-VAX, VMS >= V7.2.)
+$! LDAP Enable LDAP support.
+$! LIST Create C compiler listings and linker maps.
+$! NOHPSSL Don't use HP SSL, even if available.
+$! NOSSL Don't use any SSL, even if available.
+$! OSSLOLB Use OpenSSL object libraries (.OLB), even if shared
+$! images (.EXE) are available.
+$!
+$! DCL Symbols:
+$!
+$! CURL_CCDEFS="c_macro_1=value1 [, c_macro_2=value2 [...]]"
+$! Compile with these additional C macros defined.
+$!
+$! Revisions:
+$!
+$! 2-DEC-2003, MSK, the "original" version.
+$! It works for me. Your mileage may vary.
+$! 13-JAN-2004, MSK, moved this procedure to the [.packages.vms] directory
+$! and updated it to do hardware dependent builds.
+$! 29-JAN-2004, MSK, moved logical defines into defines.com
+$! 6-FEB-2004, MSK, put in various SSL support bits
+$! 9-MAR-2004, MSK, the config-vms.h* files are now copied to the lib and
+$! src directories as curl_config.h.
+$! 15-MAR-2004, MSK, All of the curlmsg*.* files have also been moved to
+$! this build directory. They will be copied to the src
+$! directory before build. The .msg file will be compiled
+$! to get the .obj for messages, but the .h and .sdl files
+$! are not automatically created since they partly rely on
+$! the freeware SDL tool.
+$! 8-FEB-2005, MSK, merged the two config-vms.h* files into one that uses
+$! USE_SSLEAY to define if the target has SSL support built
+$! in. Changed the cc/define parameter accordingly.
+$! 11-FEB-2005, MSK, If [--.LIB]AMIGAOS.C and NWLIB.C are there, rename them
+$! 23-MAR-2005, MSK, relocated cc_qual define so that DEBUG option would work
+$! 25-APR-2007, STL, allow compilation in 64-bit mode.
+$! 13-DEC-2009. SMS, Changed to skip unwanted source files without
+$! renaming the original files.
+$! Eliminated needless, persistent logical names.
+$! Added CURL_CCDEFS DCL symbol for user-specified C
+$! macro definitions.
+$! Added CLEAN and CLEAN_ALL options.
+$! Added CCQUAL option for user-specified C compiler
+$! qualifiers.
+$! Added IEEE option for IEEE floating point (Alpha).
+$! Added LARGE option for large-file support.
+$! Added OSSLOLB option, and support for OpenSSL
+$! shared images.
+$! Changed to put listing and map files into lisdir:.
+$! Changed to avoid case confusion on ODS5 disks.
+$! Added more default dev:[dir] save+restore.
+$! Moved remaining "defines.com" code (back) into
+$! here, eliminating the hard-coded OpenSSL nonsense.
+$! Changed to use F$GETSYI( "ARCH_NAME") (or
+$! equivalent) to name architecture-specific product
+$! file destination directory, and to create the
+$! directory if needed (obviating inclusion of these
+$! directories and dummy files in the distribution
+$! kit).
+$! Changed the "compile" subroutine to break the CC
+$! command across multiple lines to avoid DCL
+$! line-too-long problems.
+$! Changed "vo_c" messages to show the CC qualifiers
+$! once, not with every compile command.
+$!
+$!
+$! Save the original default dev:[dir], and arrange for its restoration
+$! at exit.
+$!
+$ curl = ""
+$ orig_def = f$environment( "DEFAULT")
+$ on error then goto Common_Exit
+$ on control_y then goto Common_Exit
+$!
+$ ctrl_y = 1556
+$ proc = f$environment( "PROCEDURE")
+$ proc_dev_dir = -
+ f$parse( proc, , , "DEVICE")+ f$parse( proc, , , "DIRECTORY")
+$!
+$! Verbose output message stuff. Define symbol to "write sys$output" or "!".
+$! vo_c - verbose output for compile
+$! vo_l - link
+$! vo_o - object check
+$!
+$ vo_c = "write sys$output"
+$ vo_l = "write sys$output"
+$ vo_o = "!"
+$!
+$! Determine the main distribution directory ("[--]") in an
+$! ODS5-tolerant (case-insensitive) way. (We do assume that the only
+$! "]" is the one at the end.)
+$!
+$ set default 'proc_dev_dir'
+$ set default [--]
+$ top_dev_dir = f$environment( "DEFAULT")- "]"
+$!
+$! Define the architecture-specific product file destination directory
+$! name(s).
+$!
+$ if (f$getsyi( "HW_MODEL") .lt. 1024)
+$ then
+$ arch_name = "VAX"
+$ else
+$ arch_name = ""
+$ arch_name = arch_name+ f$edit( f$getsyi( "ARCH_NAME"), "UPCASE")
+$ if (arch_name .eqs. "") then arch_name = "UNK"
+$ endif
+$!
+$ exedir = proc_dev_dir- "]"+ ".''arch_name']"
+$ lisdir = exedir
+$ objdir = exedir
+$!
+$! Interpret command-line options.
+$!
+$ hpssl = 0
+$ ldap = 0
+$ list = 0
+$ nohpssl = 0
+$ nossl = 0
+$ openssl = 0
+$ osslolb = 0
+$ cc_qual1 = ""
+$ cc_qual2 = ""
+$ cc_defs = "HAVE_CONFIG_H=1"
+$ if (f$type( CURL_CCDEFS) .nes. "")
+$ then
+$ CURL_CCDEFS = f$edit( CURL_CCDEFS, "TRIM")
+$ cc_defs = cc_defs+ ", "+ CURL_CCDEFS
+$ endif
+$ link_qual = ""
+$ msg_qual = "/object = ''objdir'"
+$ ssl_opt = ""
+$!
+$ arg = 1
+$arg_loop:
+$ p = "p''arg'"
+$ arg_val = 'p'
+$ if (arg_val .eqs. "") then goto arg_loop_out
+$ arg_val = f$edit( arg_val, "upcase")
+$!
+$ if (arg_val .eqs. "CLEAN")
+$ then
+$ prods = "''exedir'*.*;*"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir+ arch_name+ ".DIR;1"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ goto Common_Exit
+$ endif
+$!
+$ if (arg_val .eqs. "CLEAN_ALL")
+$ then
+$ prods = proc_dev_dir- "]"+ ".ALPHA]*.*;*"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir+ "ALPHA"+ ".DIR;1"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir- "]"+ ".IA64]*.*;*"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir+ "IA64"+ ".DIR;1"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir- "]"+ ".VAX]*.*;*"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ prods = proc_dev_dir+ "VAX"+ ".DIR;1"
+$ if (f$search( prods) .nes. "") then delete /log 'prods'
+$ goto Common_Exit
+$ endif
+$!
+$ if (arg_val .eqs. "64")
+$ then
+$ cc_qual1 = cc_qual1+ " /POINTER = 64"
+$ goto arg_loop_end
+$ endif
+$!
+$ if (f$extract( 0, 6, arg_val) .eqs. "CCQUAL")
+$ then
+$ opts = f$edit( arg_val, "COLLAPSE")
+$ eq = f$locate( "=", opts)
+$ cc_qual2 = f$extract( (eq+ 1), 1000, opts)
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "DEBUG")
+$ then
+$ cc_qual1 = cc_qual1+ " /debug /nooptimize"
+$ link_qual = link_qual+ " /debug"
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "IEEE")
+$ then
+$ cc_qual1 = cc_qual1+ " /FLOAT = IEEE_FLOAT"
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "LARGE")
+$ then
+$ if (arch_name .eqs. "VAX")
+$ then
+$ write sys$output """LARGE"" is ignored on VAX."
+$ else
+$ cc_defs = cc_defs+ ", _LARGEFILE=1"
+$ endif
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "LDAP")
+$ then
+$ ldap = 1
+$ goto arg_loop_end
+$ endif
+$!
+$ if (f$extract( 0, 4, arg_val) .eqs. "LIST")
+$ then
+$ list = 1
+$ cc_qual1 = cc_qual1+ " /list = ''lisdir' /show = (all, nomessages)"
+$ link_qual = link_qual+ " /map = ''lisdir'"
+$ msg_qual = msg_qual+ " /list = ''lisdir'"
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "NOHPSSL")
+$ then
+$ nohpssl = 1
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "NOSSL")
+$ then
+$ nossl = 1
+$ goto arg_loop_end
+$ endif
+$!
+$ if (arg_val .eqs. "OSSLOLB")
+$ then
+$ osslolb = 1
+$ goto arg_loop_end
+$ endif
+$!
+$ write sys$output "Unrecognized command-line option: ''arg_val'"
+$ goto Common_Exit
+$!
+$arg_loop_end:
+$ arg = arg+ 1
+$ goto arg_loop
+$arg_loop_out:
+$!
+$! CC /LIST, LINK /MAP, and MESSAGE /LIST are defaults in batch mode,
+$! so be explicit when they're not desired.
+$!
+$ if (list .eq. 0)
+$ then
+$ cc_qual1 = cc_qual1+ " /nolist"
+$ link_qual = link_qual+ " /nomap"
+$ msg_qual = msg_qual+ " /nolist"
+$ endif
+$!
+$! Create product directory, if needed.
+$!
+$ if (f$search( proc_dev_dir+ arch_name+ ".DIR;1") .eqs. "")
+$ then
+$ create /directory 'exedir'
+$ endif
+$!
+$! Detect available (but not prohibited) SSL software.
+$!
+$ if (.not. nossl)
+$ then
+$ if (f$trnlnm( "OPENSSL") .nes. "")
+$ then
+$ cc_defs = cc_defs+ ", USE_SSLEAY=1"
+$ if ((f$trnlnm( "SSL$INCLUDE") .nes. "") .and. (.not. nohpssl))
+$ then
+$! Use HP SSL.
+$ hpssl = 1
+$ ssl_opt = ", ''proc_dev_dir'hpssl_"+ -
+ f$getsyi("ARCH_NAME")+ ".opt /options"
+$ else
+$! Use OpenSSL. Assume object libraries, unless shared images
+$! are found (and not prohibited).
+$ openssl = 1
+$ ssl_opt = ", ssllib:libssl.olb /library"+ -
+ ", ssllib:libcrypto.olb /library"
+$ if (osslolb .eq. 0)
+$ then
+ if ((f$search( "ssllib:ssl_libcrypto.exe") .nes. "") .and. -
+ (f$search( "ssllib:ssl_libssl.exe") .nes. ""))
+$ then
+$! OpenSSL shared images with "SSL_xxx.EXE names.
+$ openssl = 2
+$ ssl_opt = ", ''proc_dev_dir'openssl_ssl_"+ -
+ f$getsyi("ARCH_NAME")+ ".opt /options"
+$ else
+$ if ((f$search( "ssllib:libcrypto.exe") .nes. "") .and. -
+ (f$search( "ssllib:libssl.exe") .nes. ""))
+$ then
+$! OpenSSL shared images with "xxx.EXE names.
+$ openssl = 3
+$ ssl_opt = ", ''proc_dev_dir'openssl_"+ -
+ f$getsyi("ARCH_NAME")+ ".opt /options"
+$ endif
+$ endif
+$ endif
+$ endif
+$ endif
+$ endif
+$!
+$! LDAP.
+$!
+$ if (ldap .eq. 0)
+$ then
+$ cc_defs = cc_defs+ ", CURL_DISABLE_LDAP=1"
+$ endif
+$!
+$! Form CC qualifiers.
+$!
+$ cc_defs = "/define = (''cc_defs')"
+$ cc_qual2 = cc_qual2+ " /object = ''objdir'"+ -
+ " /include = ([-.lib], [-.src],"+ -
+ " [-.packages.vms], [-.packages.vms.''arch_name'])"
+$!
+$ 'vo_c' "CC opts:", -
+ " ''cc_defs'", -
+ " ''cc_qual1'", -
+ " ''cc_qual2'"
+$!
+$! Inform the victim of our plans.
+$!
+$ if (hpssl)
+$ then
+$ 'vo_c' "%CURL-I-BLDHPSSL, building with HP SSL support"
+$ else
+$ if (openssl .ne. 0)
+$ then
+$ if (openssl .eq. 1)
+$ then
+$ 'vo_c' -
+ "%CURL-I-BLDOSSL_OLB, building with OpenSSL (object library) support"
+$ else
+$ 'vo_c' -
+ "%CURL-I-BLDOSSL_EXE, building with OpenSSL (shared image) support"
+$ endif
+$ else
+$ 'vo_c' "%CURL-I-BLDNOSSL, building with NO SSL support"
+$ endif
+$ endif
+$!
+$! Announce destination and SSL directories.
+$!
+$ 'vo_c' " OBJDIR = ''objdir'"
+$ 'vo_c' " EXEDIR = ''exedir'"
+$!
+$ if (openssl .ne. 0)
+$ then
+$ ssllib = f$trnlnm( "ssllib")
+$ if (ssllib .eqs. "")
+$ then
+$ ssllib = "(undefined)"
+$ endif
+$ 'vo_c' " SSLLIB = ''ssllib'"
+$!
+$ if (openssl .eq. 1)
+$ then
+$ ossl_lib1 = f$trnlnm( "ssllib")+ "LIBSSL.OLB"
+$ ossl_lib2 = f$trnlnm( "ssllib")+ "LIBCRYPTO.OLB"
+$ msg = "object libraries"
+$ else
+$ if (openssl .eq. 2)
+$ then
+$ ossl_lib1 = f$trnlnm( "ssllib")+ "SSL_LIBSSL.EXE"
+$ ossl_lib2 = f$trnlnm( "ssllib")+ "SSL_LIBCRYPTO.EXE"
+$ else
+$ ossl_lib1 = f$trnlnm( "ssllib")+ "LIBSSL.EXE"
+$ ossl_lib2 = f$trnlnm( "ssllib")+ "LIBCRYPTO.EXE"
+$ endif
+$ msg = "shared images"
+$ endif
+$ if ((f$search( ossl_lib1) .eqs. "") .or. -
+ (f$search( ossl_lib2) .eqs. ""))
+$ then
+$ write sys$output "Can't find OpenSSL ''msg':"
+$ write sys$output " ''ossl_lib1'"
+$ write sys$output " ''ossl_lib2'"
+$ goto Common_Exit
+$ endif
+$ endif
+$!
+$! Define the "curl" (process) logical name for "#include <curl/xxx.h>".
+$!
+$ curl = f$trnlnm( "curl", "LNM$PROCESS")
+$ if (curl .nes. "")
+$ then
+$ write sys$output ""
+$ write sys$output -
+ "Process logical name ""curl"" is already defined, but this procedure"
+$ write sys$output -
+ "would override that definition. Use a command like"
+$ write sys$output -
+ " deassign /process curl"
+$ write sys$output -
+ "to cancel that logical name definition, and then and re-run this procedure."
+$ write sys$output ""
+$ goto Common_Exit
+$ endif
+$ define curl 'top_dev_dir'.include.curl]
+$!
+$! Copy the VMS-specific config file into the product directory.
+$!
+$ call MoveIfDiff 'proc_dev_dir'config-vms.h 'objdir'curl_config.h
+$!
+$ on control_y then goto Common_Exit
+$!
+$ set default 'proc_dev_dir'
+$ call build "[--.lib]" "*.c" "''objdir'CURLLIB.OLB" "amigaos, nwlib, nwos"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$ call build "[--.src]" "*.c" "''objdir'CURLSRC.OLB"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$ call build "[]" "*.msg" "''objdir'CURLSRC.OLB"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$!
+$ ldap_opt = ""
+$ if (ldap .ne. 0) then ldap_opt = ", ''proc_dev_dir'ldap.opt /options"
+$!
+$ if (openssl .ne. 0)
+$ then
+$ if (openssl .eq. 1)
+$ then
+$ 'vo_l' "%CURL-I-LINK_OSSL, linking with OpenSSL (object library)"
+$ else
+$ 'vo_l' "%CURL-I-LINK_HPSSL, linking with OpenSSL (shared image)"
+$ endif
+$ else
+$ if (hpssl)
+$ then
+$ 'vo_l' "%CURL-I-LINK_HPSSL, linking with HP SSL"
+$ else
+$ 'vo_l' "%CURL-I-LINK_NOSSL, linking with NO SSL support"
+$ endif
+$ endif
+$!
+$ link 'link_qual' /executable = 'exedir'CURL.EXE -
+ 'objdir'curlsrc.olb /library /include = (main, curlmsg), -
+ 'objdir'curllib.olb /library -
+ 'ssl_opt' -
+ 'ldap_opt'
+$!
+$ goto Common_Exit
+$!
+$! Subroutine to build everything with a filetype passed in via P2 in
+$! the directory passed in via P1 and put it in the object library named
+$! via P3. Exclude items in P4.
+$!
+$build: subroutine
+$ build_def = f$environment( "default")
+$ on control_y then goto EndLoop ! SS$_CONTROLY
+$ sts = 1 ! SS$_NORMAL.
+$! set noon
+$ set default 'p1'
+$ search = p2
+$ reset = f$search("reset")
+$ if f$search( p3) .eqs. ""
+$ then
+$ librarian /create /object 'p3'
+$ endif
+$ reject_list__ = ","+ f$edit( p4, "COLLAPSE, UPCASE")+ ","
+$ reject_list___len = f$length( reject_list__)
+$ reset = f$search( "reset", 1)
+$Loop:
+$ file = f$search( search, 1)
+$ if file .eqs. "" then goto EndLoop
+$! Skip a name if it's in the P4 exclusion list.
+$ if (p4 .nes. "")
+$ then
+$ name__ = ","+ -
+ f$edit( f$parse( file, , , "NAME", "SYNTAX_ONLY"), "UPCASE")+ -
+ ","
+$ if (f$locate( name__, reject_list__) .lt. reject_list___len)
+$ then
+$ goto Loop
+$ endif
+$ endif
+$ objfile = f$parse( "''objdir'.OBJ;", file)
+$ obj = f$search( objfile, 2)
+$ if (obj .nes. "")
+$ then
+$ if (f$cvtime(f$file(file,"rdt")) .gts. f$cvtime(f$file(obj,"rdt")))
+$ then
+$ call compile 'file'
+$ sts = $status
+$ if .not. sts
+$ then
+$ goto EndLoop
+$ endif
+$ librarian /object 'p3' 'objfile'
+$ else
+$ 'vo_o' "%CURL-I-OBJUTD, ", objfile, " is up to date"
+$ endif
+$ else
+$ 'vo_o' "%CURL-I-OBJDNE, ", file, " does not exist"
+$ call compile 'file'
+$ sts = $status
+$ if .not. sts
+$ then
+$ goto EndLoop
+$ endif
+$ librarian /object 'p3' 'objfile'
+$ endif
+$ goto Loop
+$EndLoop:
+$!!! purge
+$ set default 'build_def'
+$ exit 'sts'
+$ endsubroutine ! Build
+$!
+$! Based on the file TYPE, do the right compile command.
+$! Only C and MSG supported.
+$!
+$compile: subroutine
+$ on control_y then return ctrl_y ! SS$_CONTROLY
+$! set noon
+$ file = p1
+$ qual = p2+ p3+ p4+ p5+ p6+ p7+ p8
+$ typ = f$edit( f$parse( file, , , "TYPE"), "UPCASE") - "."
+$ if (typ .eqs. "C")
+$ then
+$ 'vo_c' "CC (opts) ", file
+$ CC 'cc_defs' -
+ 'cc_qual1' -
+ 'cc_qual2' -
+ 'file'
+$ else
+$ cmd_msg = "MESSAGE "+ msg_qual
+$ x = cmd_'typ'
+$ 'vo_c' x," ",file
+$ 'x' 'file'
+$ endif
+$ ENDSUBROUTINE ! Compile
+$!
+$! Do a diff of the file specified in P1 with that in P2. If different
+$! copy P1 to P2. This also covers if P2 doesn't exist, but not if P2
+$! is an invalid filespec.
+$!
+$MoveIfDiff: subroutine
+$ set NoOn
+$ define /user_mode sys$error nl:
+$ define /user_mode sys$output nl:
+$ differences 'p1' 'p2'
+$ status = $status
+$ if ( status .ne. %X006C8009) ! if status is not "no diff"
+$ then
+$ copy 'p1' 'p2'
+$ purge /nolog 'p2'
+$ endif
+$ on control_y then return ctrl_y ! SS$_CONTROLY
+$ ENDSUBROUTINE ! MoveIfDiff
+$!
+$Common_Exit:
+$ set default 'orig_def'
+$ if ((curl .eqs. "") .and. (f$trnlnm( "curl", "LNM$PROCESS") .nes. ""))
+$ then
+$ deassign curl
+$ endif
+$ exit
diff --git a/packages/vms/config-vms.h b/packages/vms/config-vms.h
new file mode 100644
index 0000000..461001c
--- /dev/null
+++ b/packages/vms/config-vms.h
@@ -0,0 +1,371 @@
+#ifndef HEADER_CONFIG_VMS_H
+#define HEADER_CONFIG_VMS_H
+
+/* */
+/* MSK, 02/05/04, Hand edited for trail build on Alpha V7.3, DEC C 6.5-003 */
+/* MSK, 03/09/04, Seems to work for all platforms I've built on so far. */
+/* Added HAVE_SYS_IOCTL_H define */
+/* TES, 10/06/04, Added MAX_INITIAL_POST_SIZE, HAVE_BASENAME */
+/* MSK, 02/02/05, Changed HAVE_TERMIOS_H to an undef since the change in */
+/* getpass.c no longer undef'd it during compile. */
+/* MSK, 02/08/05, turned two config-vms files into one by using USE_SSLEAY */
+/* MPZ, 12/28/05, changed HAVE_STRTOK_R define to use CRTL_VER */
+/* MSK, 01/27/07, needed to add HAVE_STRUCT_TIMEVAL define */
+
+/* Define cpu-machine-OS */
+#if defined(__alpha)
+# define OS "ALPHA-HP-VMS"
+#elif defined(__vax)
+# define OS "VAX-HP-VMS"
+#elif defined(__ia64)
+# define OS "IA64-HP-VMS"
+#else
+# define OS "UNKNOWN-HP-VMS"
+#endif
+
+/* Define if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define if you can safely include both <sys/time.h> and <time.h>. */
+#define TIME_WITH_SYS_TIME 1
+
+/* The size of `int', as computed by sizeof. */
+#define SIZEOF_INT 4
+
+/* The size of `long double', as computed by sizeof. */
+#define SIZEOF_LONG_DOUBLE 8
+
+/* The size of `long long', as computed by sizeof. */
+#define SIZEOF_LONG_LONG 8
+
+/* The size of `short', as computed by sizeof. */
+#define SIZEOF_SHORT 2
+
+/* Define if you have the alarm function. */
+#define HAVE_ALARM 1
+
+/* Define if you have the geteuid function. */
+#define HAVE_GETEUID 1
+
+/* Define if you have the basename function. */
+#define HAVE_BASENAME 1
+
+/* Define if you have the gethostbyaddr function. */
+#define HAVE_GETHOSTBYADDR 1
+
+/* Define if you have the gethostname function. */
+#define HAVE_GETHOSTNAME 1
+
+/* Define if you have the getpwuid function. */
+#define HAVE_GETPWUID 1
+
+/* Define if you have the getservbyname function. */
+#define HAVE_GETSERVBYNAME 1
+
+/* Define if you have the gettimeofday function. */
+#define HAVE_GETTIMEOFDAY 1
+
+/* Define if you have the inet_addr function. */
+#define HAVE_INET_ADDR 1
+
+/* Define if you have the ioctl function. */
+#define HAVE_IOCTL 1
+
+/* Define if you have a working ioctl FIONBIO function. */
+#define HAVE_IOCTL_FIONBIO 1
+
+/* Define if you have a working ioctl SIOCGIFADDR function. */
+#define HAVE_IOCTL_SIOCGIFADDR 1
+
+/* Define if you have the perror function. */
+#define HAVE_PERROR 1
+
+/* Define if you have the select function. */
+#define HAVE_SELECT 1
+
+/* Define if you have the setvbuf function. */
+#define HAVE_SETVBUF 1
+
+/* Define if you have the sigaction function. */
+#define HAVE_SIGACTION 1
+
+/* Define if you have the signal function. */
+#define HAVE_SIGNAL 1
+
+/* Define if you have the socket function. */
+#define HAVE_SOCKET 1
+
+/* Define if you have the strcasecmp function. */
+#define HAVE_STRCASECMP 1
+
+/* Define if you have the strcmpi function. */
+/* #define HAVE_STRCMPI 1 */
+
+/* Define if you have the strdup function. */
+#define HAVE_STRDUP 1
+
+/* Define if you have the strftime function. */
+#define HAVE_STRFTIME 1
+
+/* Define if you have the stricmp function. */
+/* #define HAVE_STRICMP 1 */
+
+/* Define if you have the strstr function. */
+#define HAVE_STRSTR 1
+
+/* Define if you have the ftruncate function. */
+#define HAVE_FTRUNCATE 1
+
+/* Define if you have the uname function. */
+#define HAVE_UNAME 1
+
+/* Define if you have the <err.h> header file. */
+#define HAVE_ERR_H 1
+
+/* Define if you have the <fcntl.h> header file. */
+#define HAVE_FCNTL_H 1
+
+/* Define if you have the <getopt.h> header file. */
+#define HAVE_GETOPT_H 1
+
+/* Define if you have the <malloc.h> header file. */
+#define HAVE_MALLOC_H 1
+
+/* Define if you need the malloc.h header header file even with stdlib.h */
+/* #define NEED_MALLOC_H 1 */
+
+/* Define if you have the <net/if.h> header file. */
+#define HAVE_NET_IF_H 1
+
+/* Define if you have the <netdb.h> header file. */
+#define HAVE_NETDB_H 1
+
+/* Define if you have the <netinet/if_ether.h> header file. */
+#define HAVE_NETINET_IF_ETHER_H 1
+
+/* Define if you have the <netinet/in.h> header file. */
+#define HAVE_NETINET_IN_H 1
+
+/* OpenSSL section starts here */
+
+/* Define if you have a working OpenSSL installation */
+#ifdef USE_SSLEAY
+
+/* if OpenSSL is in use */
+#define USE_OPENSSL 1
+
+/* Define if you have the crypto library (-lcrypto). */
+#define HAVE_LIBCRYPTO 1
+
+/* Define if you have the ssl library (-lssl). */
+#define HAVE_LIBSSL 1
+
+/* Define if you have the <openssl/crypto.h> header file. */
+#define HAVE_OPENSSL_CRYPTO_H 1
+
+/* Define if you have the <openssl/err.h> header file. */
+#define HAVE_OPENSSL_ERR_H 1
+
+/* Define if you have the <openssl/pem.h> header file. */
+#define HAVE_OPENSSL_PEM_H 1
+
+/* Define if you have the <openssl/rsa.h> header file. */
+#define HAVE_OPENSSL_RSA_H 1
+
+/* Define if you have the <openssl/ssl.h> header file. */
+#define HAVE_OPENSSL_SSL_H 1
+
+/* Define if you have the <openssl/x509.h> header file. */
+#define HAVE_OPENSSL_X509_H 1
+
+/*
+ * This needs to be defined for OpenSSL 0.9.7 and other versions that have the
+ * ENGINE stuff supported. If an include of "openssl/engine.h" fails, then
+ * undefine the define below.
+*/
+#define HAVE_OPENSSL_ENGINE_H 1
+
+#endif /* USE_SSLEAY */
+/* OpenSSL section ends here */
+
+/* Define if you have the <pwd.h> header file. */
+#define HAVE_PWD_H 1
+
+/* Define if you have the <sgtty.h> header file. */
+#define HAVE_SGTTY_H 1
+
+/* Define if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define if you have the <sys/socket.h> header file. */
+#define HAVE_SYS_SOCKET_H 1
+
+/* Define if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define if you have the <sys/time.h> header file. */
+#define HAVE_SYS_TIME_H 1
+
+/* Define if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define if you have the <termios.h> header file. */
+#undef HAVE_TERMIOS_H
+
+/* Define if you have the <time.h> header file. */
+#define HAVE_TIME_H 1
+
+/* Define if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define if you have the resolv library (-lresolv). */
+#define HAVE_LIBRESOLV 1
+
+/* Define if you have the socket library (-lsocket). */
+#define HAVE_LIBSOCKET 1
+
+/* Define if getaddrinfo exists and works */
+#define HAVE_GETADDRINFO 1
+
+/* Define if you have the <timeval.h> header file. */
+#define HAVE_TIMEVAL_H 1
+
+/* Define if you have the timeval struct. */
+#define HAVE_STRUCT_TIMEVAL 1
+
+/* Name of this package! */
+#define PACKAGE "not-used"
+
+/* Version number of this archive. */
+#define VERSION "not-used"
+
+/* Define if you have the getpass function. */
+#undef HAVE_GETPASS
+
+/* Define if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define if you have the `strtok_r' function. */
+/* Condition lifted from <string.h> */
+#if __CRTL_VER >= 70301000
+# define HAVE_STRTOK_R 1
+#endif
+
+/* Define if you have the `strtoll' function. */
+#define HAVE_STRTOLL 1
+
+/* Define if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you need the memory.h header file even with stdlib.h */
+#define NEED_MEMORY_H 1
+
+/* Define if you have the `sigsetjmp' function. */
+#define HAVE_SIGSETJMP 1
+
+/* Define to 1 if you have the <setjmp.h> header file. */
+#define HAVE_SETJMP_H 1
+
+/* Define to 1 if you have the <limits.h> header file. */
+#define HAVE_LIMITS_H 1
+
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+#define HAVE_SYS_IOCTL_H 1
+
+/* Define to 1 if you have the <stropts.h> header file. */
+#define HAVE_STROPTS_H 1
+
+/* Define if you have the getnameinfo function. */
+#define HAVE_GETNAMEINFO 1
+
+/* Define to the type qualifier of arg 1 for getnameinfo. */
+#define GETNAMEINFO_QUAL_ARG1 const
+
+/* Define to the type of arg 1 for getnameinfo. */
+#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
+
+/* Define to the type of arg 2 for getnameinfo. */
+#define GETNAMEINFO_TYPE_ARG2 size_t
+
+/* Define to the type of args 4 and 6 for getnameinfo. */
+#define GETNAMEINFO_TYPE_ARG46 size_t
+
+/* Define to the type of arg 7 for getnameinfo. */
+#define GETNAMEINFO_TYPE_ARG7 int
+
+/* Define if you have the recv function. */
+#define HAVE_RECV 1
+
+/* Define to the type of arg 1 for recv. */
+#define RECV_TYPE_ARG1 int
+
+/* Define to the type of arg 2 for recv. */
+#define RECV_TYPE_ARG2 void *
+
+/* Define to the type of arg 3 for recv. */
+#define RECV_TYPE_ARG3 int
+
+/* Define to the type of arg 4 for recv. */
+#define RECV_TYPE_ARG4 int
+
+/* Define to the function return type for recv. */
+#define RECV_TYPE_RETV int
+
+/* Define if you have the recvfrom function. */
+#define HAVE_RECVFROM 1
+
+/* Define to the type of arg 1 for recvfrom. */
+#define RECVFROM_TYPE_ARG1 int
+
+/* Define to the type pointed by arg 2 for recvfrom. */
+#define RECVFROM_TYPE_ARG2 void
+
+/* Define if the type pointed by arg 2 for recvfrom is void. */
+#define RECVFROM_TYPE_ARG2_IS_VOID 1
+
+/* Define to the type of arg 3 for recvfrom. */
+#define RECVFROM_TYPE_ARG3 int
+
+/* Define to the type of arg 4 for recvfrom. */
+#define RECVFROM_TYPE_ARG4 int
+
+/* Define to the type pointed by arg 5 for recvfrom. */
+#define RECVFROM_TYPE_ARG5 struct sockaddr
+
+/* Define to the type pointed by arg 6 for recvfrom. */
+#define RECVFROM_TYPE_ARG6 int
+
+/* Define to the function return type for recvfrom. */
+#define RECVFROM_TYPE_RETV int
+
+/* Define if you have the send function. */
+#define HAVE_SEND 1
+
+/* Define to the type of arg 1 for send. */
+#define SEND_TYPE_ARG1 int
+
+/* Define to the type qualifier of arg 2 for send. */
+#define SEND_QUAL_ARG2 const
+
+/* Define to the type of arg 2 for send. */
+#define SEND_TYPE_ARG2 void *
+
+/* Define to the type of arg 3 for send. */
+#define SEND_TYPE_ARG3 int
+
+/* Define to the type of arg 4 for send. */
+#define SEND_TYPE_ARG4 int
+
+/* Define to the function return type for send. */
+#define SEND_TYPE_RETV int
+
+/* Define to hide dollar sign from compilers in strict ansi mode. */
+#define decc_translate_vms(__s) decc$translate_vms(__s)
+
+#endif /* HEADER_CONFIG_VMS_H */
diff --git a/packages/vms/curlmsg.h b/packages/vms/curlmsg.h
new file mode 100644
index 0000000..32f335f
--- /dev/null
+++ b/packages/vms/curlmsg.h
@@ -0,0 +1,119 @@
+#ifndef HEADER_CURLMSG_H
+#define HEADER_CURLMSG_H
+
+#pragma __member_alignment __save
+#pragma __nomember_alignment
+
+/* */
+/* CURLMSG.H */
+/* */
+/* SDL File Generated by VAX-11 Message V04-00 on 3-SEP-2008 13:33:54.09 */
+/* */
+/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H */
+/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE, */
+/* CURLMSG.MSG. AN .SDL FILE IS CREATED FROM THIS FILE WITH */
+/* MESSAGE/SDL. THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL */
+/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND. */
+/* */
+/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT */
+/* THE ERROR SEVERITY LEVEL. WITH THE EXCEPTION OF */
+/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF */
+/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE */
+/* CURLE_ ONES IN INCLUDE/CURL.H. THE MESSAGE UTILITY MANUAL STATES */
+/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT */
+/* EXCEED 31 CHARACTERS." WITH A PREFIX OF FIVE THAT LEAVES US WITH 26 */
+/* FOR THE MESSAGE NAME. */
+/* */
+/* IF YOU UPDATE THIS FILE, UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC */
+/* */
+
+#define CURL_FACILITY 3841
+#define CURL_OK 251756553
+#define CURL_UNSUPPORTED_PROTOCOL 251756562
+#define CURL_FAILED_INIT 251756570
+#define CURL_URL_MALFORMAT 251756578
+#define CURL_OBSOLETE4 251756586
+#define CURL_COULDNT_RESOLVE_PROXY 251756594
+#define CURL_COULDNT_RESOLVE_HOST 251756602
+#define CURL_COULDNT_CONNECT 251756610
+#define CURL_FTP_WEIRD_SERVER_REPLY 251756618
+#define CURL_FTP_ACCESS_DENIED 251756626
+#define CURL_OBSOLETE10 251756634
+#define CURL_FTP_WEIRD_PASS_REPLY 251756642
+#define CURL_OBSOLETE12 251756650
+#define CURL_FTP_WEIRD_PASV_REPLY 251756658
+#define CURL_FTP_WEIRD_227_FORMAT 251756666
+#define CURL_FTP_CANT_GET_HOST 251756674
+#define CURL_OBSOLETE16 251756682
+#define CURL_FTP_COULDNT_SET_TYPE 251756690
+#define CURL_PARTIAL_FILE 251756698
+#define CURL_FTP_COULDNT_RETR_FILE 251756706
+#define CURL_OBSOLETE20 251756714
+#define CURL_QUOTE_ERROR 251756722
+#define CURL_HTTP_RETURNED_ERROR 251756730
+#define CURL_WRITE_ERROR 251756738
+#define CURL_OBSOLETE24 251756746
+#define CURL_UPLOAD_FAILED 251756754
+#define CURL_READ_ERROR 251756762
+#define CURL_OUT_OF_MEMORY 251756770
+#define CURL_OPERATION_TIMEOUTED 251756778
+#define CURL_OBSOLETE29 251756786
+#define CURL_FTP_PORT_FAILED 251756794
+#define CURL_FTP_COULDNT_USE_REST 251756802
+#define CURL_OBSOLETE32 251756810
+#define CURL_RANGE_ERROR 251756818
+#define CURL_HTTP_POST_ERROR 251756826
+#define CURL_SSL_CONNECT_ERROR 251756834
+#define CURL_BAD_DOWNLOAD_RESUME 251756842
+#define CURL_FILE_COULDNT_READ_FILE 251756850
+#define CURL_LDAP_CANNOT_BIND 251756858
+#define CURL_LDAP_SEARCH_FAILED 251756866
+#define CURL_OBSOLETE40 251756874
+#define CURL_FUNCTION_NOT_FOUND 251756882
+#define CURL_ABORTED_BY_CALLBACK 251756890
+#define CURL_BAD_FUNCTION_ARGUMENT 251756898
+#define CURL_OBSOLETE44 251756906
+#define CURL_INTERFACE_FAILED 251756914
+#define CURL_OBSOLETE46 251756922
+#define CURL_TOO_MANY_REDIRECTS 251756930
+#define CURL_UNKNOWN_TELNET_OPTION 251756938
+#define CURL_TELNET_OPTION_SYNTAX 251756946
+#define CURL_OBSOLETE50 251756954
+#define CURL_PEER_FAILED_VERIF 251756962
+#define CURL_GOT_NOTHING 251756970
+#define CURL_SSL_ENGINE_NOTFOUND 251756978
+#define CURL_SSL_ENGINE_SETFAILED 251756986
+#define CURL_SEND_ERROR 251756994
+#define CURL_RECV_ERROR 251757002
+#define CURL_OBSOLETE57 251757010
+#define CURL_SSL_CERTPROBLEM 251757018
+#define CURL_SSL_CIPHER 251757026
+#define CURL_SSL_CACERT 251757034
+#define CURL_BAD_CONTENT_ENCODING 251757042
+#define CURL_LDAP_INVALID_URL 251757050
+#define CURL_FILESIZE_EXCEEDED 251757058
+#define CURL_USE_SSL_FAILED 251757066
+#define CURL_SEND_FAIL_REWIND 251757074
+#define CURL_SSL_ENGINE_INITFAILED 251757082
+#define CURL_LOGIN_DENIED 251757090
+#define CURL_TFTP_NOTFOUND 251757098
+#define CURL_TFTP_PERM 251757106
+#define CURL_REMOTE_DISK_FULL 251757114
+#define CURL_TFTP_ILLEGAL 251757122
+#define CURL_TFTP_UNKNOWNID 251757130
+#define CURL_REMOTE_FILE_EXISTS 251757138
+#define CURL_TFTP_NOSUCHUSER 251757146
+#define CURL_CONV_FAILED 251757154
+#define CURL_CONV_REQD 251757162
+#define CURL_SSL_CACERT_BADFILE 251757170
+#define CURL_REMOTE_FILE_NOT_FOUND 251757178
+#define CURL_SSH 251757186
+#define CURL_SSL_SHUTDOWN_FAILED 251757194
+#define CURL_AGAIN 251757202
+#define CURL_SSL_CRL_BADFILE 251757210
+#define CURL_SSL_ISSUER_ERROR 251757218
+#define CURL_CURL_LAST 251757226
+
+#pragma __member_alignment __restore
+
+#endif /* HEADER_CURLMSG_H */
diff --git a/packages/vms/curlmsg.msg b/packages/vms/curlmsg.msg
new file mode 100644
index 0000000..7fd4483
--- /dev/null
+++ b/packages/vms/curlmsg.msg
@@ -0,0 +1,111 @@
+!
+! These VMS error codes are generated by taking apart the curl.h
+! file and putting all the CURLE_* enum stuff into this file,
+! CURLMSG.MSG. An .SDL file is created from this file with
+! MESSAGE/SDL. The .H file is created using the freeware SDL tool
+! against the .SDL file with SDL/ALPHA/LANG=CC command.
+!
+! With the exception of CURLE_OK, all of the messages are at
+! the error severity level. With the exception of
+! PEER_FAILED_VERIF, which is a shortened form of
+! PEER_FAILED_VERIFICATION, these are the same names as the
+! CURLE_ ones in include/curl.h. The Message Utility manual states
+! "The combined length of the prefix and the message symbol name cannot
+! exceed 31 characters." With a prefix of five that leaves us with 26
+! for the message name.
+!
+! If you update this file also update curlmsg_vms.h so that they are in sync
+!
+.TITLE CURLMSG Message files
+.FACILITY CURL,1793 /PREFIX=CURL_
+.BASE 1
+.SEVERITY SUCCESS
+OK <normal successful completion>
+
+.SEVERITY ERROR
+UNSUPPORTED_PROTOCOL <unsupported protocol>
+FAILED_INIT <failed init>
+URL_MALFORMAT <URL malformat>
+OBSOLETE4 <obsolete error code>
+COULDNT_RESOLVE_PROXY <could not resolve proxy>
+COULDNT_RESOLVE_HOST <could not resolve host>
+COULDNT_CONNECT <could not connect>
+FTP_WEIRD_SERVER_REPLY <FTP weird server reply>
+FTP_ACCESS_DENIED <FTP access denied>
+OBSOLETE10 <obsolete error code>
+FTP_WEIRD_PASS_REPLY <FTP weird PASS reply>
+OBSOLETE12 <obsolete error code>
+FTP_WEIRD_PASV_REPLY <FTP weird PASV reply>
+FTP_WEIRD_227_FORMAT <FTP weird 227 format>
+FTP_CANT_GET_HOST <FTP can not get host>
+OBSOLETE16 <obsolete error code>
+FTP_COULDNT_SET_TYPE <FTP could not set type>
+PARTIAL_FILE <partial file>
+FTP_COULDNT_RETR_FILE <FTP could not RETR file>
+OBSOLETE20 <obsolete error code>
+QUOTE_ERROR <quote command error>
+HTTP_RETURNED_ERROR <HTTP returned error>
+WRITE_ERROR <write error>
+OBSOLETE24 <obsolete error code>
+UPLOAD_FAILED <failed upload command>
+READ_ERROR <read error, could not open/read file>
+OUT_OF_MEMORY <out of memory>
+OPERATION_TIMEOUTED <operation timed out, timeout time was reached>
+OBSOLETE29 <obsolete error code>
+FTP_PORT_FAILED <FTP PORT operation failed>
+FTP_COULDNT_USE_REST <FTP REST command failed>
+OBSOLETE32 <obsolete error code>
+RANGE_ERROR <RANGE command error>
+HTTP_POST_ERROR <HTTP POST error>
+SSL_CONNECT_ERROR <SSL connect error>
+BAD_DOWNLOAD_RESUME <bad download resume>
+FILE_COULDNT_READ_FILE <FILE could not read file>
+LDAP_CANNOT_BIND <LDAP cannot bind>
+LDAP_SEARCH_FAILED <LDAP search failed>
+OBSOLETE40 <obsolete error code>
+FUNCTION_NOT_FOUND <function not found>
+ABORTED_BY_CALLBACK <aborted by callback>
+BAD_FUNCTION_ARGUMENT <bad function argument>
+OBSOLETE44 <obsolete error code>
+INTERFACE_FAILED <CURLOPT_INTERFACE failed>
+OBSOLETE46 <obsolete error code>
+TOO_MANY_REDIRECTS <too many redirects>
+UNKNOWN_TELNET_OPTION <unknown TELNET option>
+TELNET_OPTION_SYNTAX <malformed TELNET option syntax>
+OBSOLETE50 <obsolete error code>
+PEER_FAILED_VERIF <peer certificate or fingerprint failed>
+GOT_NOTHING <got nothing>
+SSL_ENGINE_NOTFOUND <SSL crypto engine not found>
+SSL_ENGINE_SETFAILED <SSL can not set SSL crypto engine as default>
+SEND_ERROR <SEND error, failure sending network data>
+RECV_ERROR <RECV error, failure receiving network data>
+OBSOLETE57 <obsolete error code>
+SSL_CERTPROBLEM <SSL problem with the local certificate>
+SSL_CIPHER <SSL CIPHER, could not use specified cipher>
+SSL_CACERT <SSL CACERT, problem with the CA cert (path?)>
+BAD_CONTENT_ENCODING <unrecognized transfer encoding>
+LDAP_INVALID_URL <LDAP invalid url>
+FILESIZE_EXCEEDED <maximum file size exceeded>
+USE_SSL_FAILED <requested FTP SSL level failed>
+SEND_FAIL_REWIND <sending data requires a rewind that failed>
+SSL_ENGINE_INITFAILED <failed to initialise ENGINE>
+LOGIN_DENIED <user or password not accepted. failed to login>
+TFTP_NOTFOUND <file not found on server>
+TFTP_PERM <permission problem on server>
+REMOTE_DISK_FULL <out of disk space on server>
+TFTP_ILLEGAL <illegal TFTP operation>
+TFTP_UNKNOWNID <unknown transfer ID>
+REMOTE_FILE_EXISTS <file already exists>
+TFTP_NOSUCHUSER <no such user>
+CONV_FAILED <conversion failed>
+CONV_REQD <caller must register conversion callbacks>
+SSL_CACERT_BADFILE <could not load CACERT file>
+REMOTE_FILE_NOT_FOUND <remote file not found>
+SSH <unspecified error from the SSH layer>
+SSL_SHUTDOWN_FAILED <failed to shut down the SSL connection>
+AGAIN <socket not ready, wait and try again>
+SSL_CRL_BADFILE <could not load CRL file, missing or wrong format>
+SSL_ISSUER_ERROR <issuer check failed>
+CURL_LAST <CURLMSG.MSG is out of sync with the source code>
+
+.END
diff --git a/packages/vms/curlmsg.sdl b/packages/vms/curlmsg.sdl
new file mode 100644
index 0000000..e192c07
--- /dev/null
+++ b/packages/vms/curlmsg.sdl
@@ -0,0 +1,115 @@
+
+
+ MODULE $CURDEF;
+
+/*
+/* This SDL File Generated by VAX-11 Message V04-00 on 3-SEP-2008 13:33:54.09
+/*
+/* $ID: CURLMSG.MSG,V 1.7 2008-05-30 23:51:09 CURLVMS EXP $
+/*
+/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H
+/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE,
+/* CURLMSG.MSG. AN .SDL FILE IS CREATED FROM THIS FILE WITH
+/* MESSAGE/SDL. THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL
+/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND.
+/*
+/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT
+/* THE ERROR SEVERITY LEVEL. WITH THE EXCEPTION OF
+/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF
+/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE
+/* CURLE_ ONES IN INCLUDE/CURL.H. THE MESSAGE UTILITY MANUAL STATES
+/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT
+/* EXCEED 31 CHARACTERS." WITH A PREFIX OF FIVE THAT LEAVES US WITH 26
+/* FOR THE MESSAGE NAME.
+/*
+/* IF YOU UPDATE THIS FILE ALSO UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC
+/*
+ CONSTANT
+ "FACILITY" EQUALS 3841 PREFIX "CURL" TAG ""
+ ,"OK" EQUALS %X0F018009 PREFIX "CURL" TAG ""
+ ,"UNSUPPORTED_PROTOCOL" EQUALS %X0F018012 PREFIX "CURL" TAG ""
+ ,"FAILED_INIT" EQUALS %X0F01801A PREFIX "CURL" TAG ""
+ ,"URL_MALFORMAT" EQUALS %X0F018022 PREFIX "CURL" TAG ""
+ ,"OBSOLETE4" EQUALS %X0F01802A PREFIX "CURL" TAG ""
+ ,"COULDNT_RESOLVE_PROXY" EQUALS %X0F018032 PREFIX "CURL" TAG ""
+ ,"COULDNT_RESOLVE_HOST" EQUALS %X0F01803A PREFIX "CURL" TAG ""
+ ,"COULDNT_CONNECT" EQUALS %X0F018042 PREFIX "CURL" TAG ""
+ ,"FTP_WEIRD_SERVER_REPLY" EQUALS %X0F01804A PREFIX "CURL" TAG ""
+ ,"FTP_ACCESS_DENIED" EQUALS %X0F018052 PREFIX "CURL" TAG ""
+ ,"OBSOLETE10" EQUALS %X0F01805A PREFIX "CURL" TAG ""
+ ,"FTP_WEIRD_PASS_REPLY" EQUALS %X0F018062 PREFIX "CURL" TAG ""
+ ,"OBSOLETE12" EQUALS %X0F01806A PREFIX "CURL" TAG ""
+ ,"FTP_WEIRD_PASV_REPLY" EQUALS %X0F018072 PREFIX "CURL" TAG ""
+ ,"FTP_WEIRD_227_FORMAT" EQUALS %X0F01807A PREFIX "CURL" TAG ""
+ ,"FTP_CANT_GET_HOST" EQUALS %X0F018082 PREFIX "CURL" TAG ""
+ ,"OBSOLETE16" EQUALS %X0F01808A PREFIX "CURL" TAG ""
+ ,"FTP_COULDNT_SET_TYPE" EQUALS %X0F018092 PREFIX "CURL" TAG ""
+ ,"PARTIAL_FILE" EQUALS %X0F01809A PREFIX "CURL" TAG ""
+ ,"FTP_COULDNT_RETR_FILE" EQUALS %X0F0180A2 PREFIX "CURL" TAG ""
+ ,"OBSOLETE20" EQUALS %X0F0180AA PREFIX "CURL" TAG ""
+ ,"QUOTE_ERROR" EQUALS %X0F0180B2 PREFIX "CURL" TAG ""
+ ,"HTTP_RETURNED_ERROR" EQUALS %X0F0180BA PREFIX "CURL" TAG ""
+ ,"WRITE_ERROR" EQUALS %X0F0180C2 PREFIX "CURL" TAG ""
+ ,"OBSOLETE24" EQUALS %X0F0180CA PREFIX "CURL" TAG ""
+ ,"UPLOAD_FAILED" EQUALS %X0F0180D2 PREFIX "CURL" TAG ""
+ ,"READ_ERROR" EQUALS %X0F0180DA PREFIX "CURL" TAG ""
+ ,"OUT_OF_MEMORY" EQUALS %X0F0180E2 PREFIX "CURL" TAG ""
+ ,"OPERATION_TIMEOUTED" EQUALS %X0F0180EA PREFIX "CURL" TAG ""
+ ,"OBSOLETE29" EQUALS %X0F0180F2 PREFIX "CURL" TAG ""
+ ,"FTP_PORT_FAILED" EQUALS %X0F0180FA PREFIX "CURL" TAG ""
+ ,"FTP_COULDNT_USE_REST" EQUALS %X0F018102 PREFIX "CURL" TAG ""
+ ,"OBSOLETE32" EQUALS %X0F01810A PREFIX "CURL" TAG ""
+ ,"RANGE_ERROR" EQUALS %X0F018112 PREFIX "CURL" TAG ""
+ ,"HTTP_POST_ERROR" EQUALS %X0F01811A PREFIX "CURL" TAG ""
+ ,"SSL_CONNECT_ERROR" EQUALS %X0F018122 PREFIX "CURL" TAG ""
+ ,"BAD_DOWNLOAD_RESUME" EQUALS %X0F01812A PREFIX "CURL" TAG ""
+ ,"FILE_COULDNT_READ_FILE" EQUALS %X0F018132 PREFIX "CURL" TAG ""
+ ,"LDAP_CANNOT_BIND" EQUALS %X0F01813A PREFIX "CURL" TAG ""
+ ,"LDAP_SEARCH_FAILED" EQUALS %X0F018142 PREFIX "CURL" TAG ""
+ ,"OBSOLETE40" EQUALS %X0F01814A PREFIX "CURL" TAG ""
+ ,"FUNCTION_NOT_FOUND" EQUALS %X0F018152 PREFIX "CURL" TAG ""
+ ,"ABORTED_BY_CALLBACK" EQUALS %X0F01815A PREFIX "CURL" TAG ""
+ ,"BAD_FUNCTION_ARGUMENT" EQUALS %X0F018162 PREFIX "CURL" TAG ""
+ ,"OBSOLETE44" EQUALS %X0F01816A PREFIX "CURL" TAG ""
+ ,"INTERFACE_FAILED" EQUALS %X0F018172 PREFIX "CURL" TAG ""
+ ,"OBSOLETE46" EQUALS %X0F01817A PREFIX "CURL" TAG ""
+ ,"TOO_MANY_REDIRECTS" EQUALS %X0F018182 PREFIX "CURL" TAG ""
+ ,"UNKNOWN_TELNET_OPTION" EQUALS %X0F01818A PREFIX "CURL" TAG ""
+ ,"TELNET_OPTION_SYNTAX" EQUALS %X0F018192 PREFIX "CURL" TAG ""
+ ,"OBSOLETE50" EQUALS %X0F01819A PREFIX "CURL" TAG ""
+ ,"PEER_FAILED_VERIF" EQUALS %X0F0181A2 PREFIX "CURL" TAG ""
+ ,"GOT_NOTHING" EQUALS %X0F0181AA PREFIX "CURL" TAG ""
+ ,"SSL_ENGINE_NOTFOUND" EQUALS %X0F0181B2 PREFIX "CURL" TAG ""
+ ,"SSL_ENGINE_SETFAILED" EQUALS %X0F0181BA PREFIX "CURL" TAG ""
+ ,"SEND_ERROR" EQUALS %X0F0181C2 PREFIX "CURL" TAG ""
+ ,"RECV_ERROR" EQUALS %X0F0181CA PREFIX "CURL" TAG ""
+ ,"OBSOLETE57" EQUALS %X0F0181D2 PREFIX "CURL" TAG ""
+ ,"SSL_CERTPROBLEM" EQUALS %X0F0181DA PREFIX "CURL" TAG ""
+ ,"SSL_CIPHER" EQUALS %X0F0181E2 PREFIX "CURL" TAG ""
+ ,"SSL_CACERT" EQUALS %X0F0181EA PREFIX "CURL" TAG ""
+ ,"BAD_CONTENT_ENCODING" EQUALS %X0F0181F2 PREFIX "CURL" TAG ""
+ ,"LDAP_INVALID_URL" EQUALS %X0F0181FA PREFIX "CURL" TAG ""
+ ,"FILESIZE_EXCEEDED" EQUALS %X0F018202 PREFIX "CURL" TAG ""
+ ,"USE_SSL_FAILED" EQUALS %X0F01820A PREFIX "CURL" TAG ""
+ ,"SEND_FAIL_REWIND" EQUALS %X0F018212 PREFIX "CURL" TAG ""
+ ,"SSL_ENGINE_INITFAILED" EQUALS %X0F01821A PREFIX "CURL" TAG ""
+ ,"LOGIN_DENIED" EQUALS %X0F018222 PREFIX "CURL" TAG ""
+ ,"TFTP_NOTFOUND" EQUALS %X0F01822A PREFIX "CURL" TAG ""
+ ,"TFTP_PERM" EQUALS %X0F018232 PREFIX "CURL" TAG ""
+ ,"REMOTE_DISK_FULL" EQUALS %X0F01823A PREFIX "CURL" TAG ""
+ ,"TFTP_ILLEGAL" EQUALS %X0F018242 PREFIX "CURL" TAG ""
+ ,"TFTP_UNKNOWNID" EQUALS %X0F01824A PREFIX "CURL" TAG ""
+ ,"REMOTE_FILE_EXISTS" EQUALS %X0F018252 PREFIX "CURL" TAG ""
+ ,"TFTP_NOSUCHUSER" EQUALS %X0F01825A PREFIX "CURL" TAG ""
+ ,"CONV_FAILED" EQUALS %X0F018262 PREFIX "CURL" TAG ""
+ ,"CONV_REQD" EQUALS %X0F01826A PREFIX "CURL" TAG ""
+ ,"SSL_CACERT_BADFILE" EQUALS %X0F018272 PREFIX "CURL" TAG ""
+ ,"REMOTE_FILE_NOT_FOUND" EQUALS %X0F01827A PREFIX "CURL" TAG ""
+ ,"SSH" EQUALS %X0F018282 PREFIX "CURL" TAG ""
+ ,"SSL_SHUTDOWN_FAILED" EQUALS %X0F01828A PREFIX "CURL" TAG ""
+ ,"AGAIN" EQUALS %X0F018292 PREFIX "CURL" TAG ""
+ ,"SSL_CRL_BADFILE" EQUALS %X0F01829A PREFIX "CURL" TAG ""
+ ,"SSL_ISSUER_ERROR" EQUALS %X0F0182A2 PREFIX "CURL" TAG ""
+ ,"CURL_LAST" EQUALS %X0F0182AA PREFIX "CURL" TAG ""
+ ;
+ END_MODULE;
diff --git a/packages/vms/curlmsg_vms.h b/packages/vms/curlmsg_vms.h
new file mode 100644
index 0000000..e99e88c
--- /dev/null
+++ b/packages/vms/curlmsg_vms.h
@@ -0,0 +1,120 @@
+#ifndef HEADER_CURLMSG_VMS_H
+#define HEADER_CURLMSG_VMS_H
+
+/* */
+/* CURLMSG_VMS.H */
+/* */
+/* This defines the necessary bits to change CURLE_* error codes to VMS */
+/* style error codes. CURLMSG.H is built from CURLMSG.SDL which is built */
+/* from CURLMSG.MSG. The vms_cond array is used to return VMS errors by */
+/* putting the VMS error codes into the array offset based on CURLE_* code. */
+/* */
+/* If you update CURLMSG.MSG make sure to update this file to match. */
+/* */
+
+#include "curlmsg.h"
+
+/*
+#define FAC_CURL 0xC01
+#define FAC_SYSTEM 0
+#define MSG_NORMAL 0
+*/
+
+/*
+#define SEV_WARNING 0
+#define SEV_SUCCESS 1
+#define SEV_ERROR 2
+#define SEV_INFO 3
+#define SEV_FATAL 4
+*/
+
+static const long vms_cond[] =
+ {
+ CURL_OK,
+ CURL_UNSUPPORTED_PROTOCOL,
+ CURL_FAILED_INIT,
+ CURL_URL_MALFORMAT,
+ CURL_OBSOLETE4,
+ CURL_COULDNT_RESOLVE_PROXY,
+ CURL_COULDNT_RESOLVE_HOST,
+ CURL_COULDNT_CONNECT,
+ CURL_FTP_WEIRD_SERVER_REPLY,
+ CURL_FTP_ACCESS_DENIED,
+ CURL_OBSOLETE10,
+ CURL_FTP_WEIRD_PASS_REPLY,
+ CURL_OBSOLETE12,
+ CURL_FTP_WEIRD_PASV_REPLY,
+ CURL_FTP_WEIRD_227_FORMAT,
+ CURL_FTP_CANT_GET_HOST,
+ CURL_OBSOLETE16,
+ CURL_FTP_COULDNT_SET_TYPE,
+ CURL_PARTIAL_FILE,
+ CURL_FTP_COULDNT_RETR_FILE,
+ CURL_OBSOLETE20,
+ CURL_QUOTE_ERROR,
+ CURL_HTTP_RETURNED_ERROR,
+ CURL_WRITE_ERROR,
+ CURL_OBSOLETE24,
+ CURL_UPLOAD_FAILED,
+ CURL_READ_ERROR,
+ CURL_OUT_OF_MEMORY,
+ CURL_OPERATION_TIMEOUTED,
+ CURL_OBSOLETE29,
+ CURL_FTP_PORT_FAILED,
+ CURL_FTP_COULDNT_USE_REST,
+ CURL_OBSOLETE32,
+ CURL_RANGE_ERROR,
+ CURL_HTTP_POST_ERROR,
+ CURL_SSL_CONNECT_ERROR,
+ CURL_BAD_DOWNLOAD_RESUME,
+ CURL_FILE_COULDNT_READ_FILE,
+ CURL_LDAP_CANNOT_BIND,
+ CURL_LDAP_SEARCH_FAILED,
+ CURL_OBSOLETE40,
+ CURL_FUNCTION_NOT_FOUND,
+ CURL_ABORTED_BY_CALLBACK,
+ CURL_BAD_FUNCTION_ARGUMENT,
+ CURL_OBSOLETE44,
+ CURL_INTERFACE_FAILED,
+ CURL_OBSOLETE46,
+ CURL_TOO_MANY_REDIRECTS,
+ CURL_UNKNOWN_TELNET_OPTION,
+ CURL_TELNET_OPTION_SYNTAX,
+ CURL_OBSOLETE50,
+ CURL_PEER_FAILED_VERIF,
+ CURL_GOT_NOTHING,
+ CURL_SSL_ENGINE_NOTFOUND,
+ CURL_SSL_ENGINE_SETFAILED,
+ CURL_SEND_ERROR,
+ CURL_RECV_ERROR,
+ CURL_OBSOLETE57,
+ CURL_SSL_CERTPROBLEM,
+ CURL_SSL_CIPHER,
+ CURL_SSL_CACERT,
+ CURL_BAD_CONTENT_ENCODING,
+ CURL_LDAP_INVALID_URL,
+ CURL_FILESIZE_EXCEEDED,
+ CURL_USE_SSL_FAILED,
+ CURL_SEND_FAIL_REWIND,
+ CURL_SSL_ENGINE_INITFAILED,
+ CURL_LOGIN_DENIED,
+ CURL_TFTP_NOTFOUND,
+ CURL_TFTP_PERM,
+ CURL_REMOTE_DISK_FULL,
+ CURL_TFTP_ILLEGAL,
+ CURL_TFTP_UNKNOWNID,
+ CURL_REMOTE_FILE_EXISTS,
+ CURL_TFTP_NOSUCHUSER,
+ CURL_CONV_FAILED,
+ CURL_CONV_REQD,
+ CURL_SSL_CACERT_BADFILE,
+ CURL_REMOTE_FILE_NOT_FOUND,
+ CURL_SSH,
+ CURL_SSL_SHUTDOWN_FAILED,
+ CURL_AGAIN,
+ CURLE_SSL_CRL_BADFILE,
+ CURLE_SSL_ISSUER_ERROR,
+ CURL_CURL_LAST
+ };
+
+#endif /* HEADER_CURLMSG_VMS_H */
diff --git a/packages/vms/hpssl_alpha.opt b/packages/vms/hpssl_alpha.opt
new file mode 100644
index 0000000..3ad9fbd
--- /dev/null
+++ b/packages/vms/hpssl_alpha.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE
diff --git a/packages/vms/hpssl_ia64.opt b/packages/vms/hpssl_ia64.opt
new file mode 100644
index 0000000..9b22014
--- /dev/null
+++ b/packages/vms/hpssl_ia64.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR.EXE/SHARE
diff --git a/packages/vms/hpssl_vax.opt b/packages/vms/hpssl_vax.opt
new file mode 100644
index 0000000..3ad9fbd
--- /dev/null
+++ b/packages/vms/hpssl_vax.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE
diff --git a/packages/vms/ldap.opt b/packages/vms/ldap.opt
new file mode 100644
index 0000000..23f1ee4
--- /dev/null
+++ b/packages/vms/ldap.opt
@@ -0,0 +1 @@
+SYS$SHARE:LDAP$SHR.EXE /SHARE
diff --git a/packages/vms/openssl_alpha.opt b/packages/vms/openssl_alpha.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_alpha.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ia64.opt b/packages/vms/openssl_ia64.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_ia64.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_alpha.opt b/packages/vms/openssl_ssl_alpha.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_alpha.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_ia64.opt b/packages/vms/openssl_ssl_ia64.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_ia64.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_vax.opt b/packages/vms/openssl_ssl_vax.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_vax.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_vax.opt b/packages/vms/openssl_vax.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_vax.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/readme b/packages/vms/readme
new file mode 100644
index 0000000..22fde88
--- /dev/null
+++ b/packages/vms/readme
@@ -0,0 +1,70 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ ( (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+ for OpenVMS
+
+History:
+
+ 9-MAR-2004, Created this readme. file. Marty Kuhrt (MSK).
+15-MAR-2004, MSK, Updated to reflect the new files in this directory.
+14-FEB-2005, MSK, removed config-vms.h_with* file comments
+10-FEB-2010, SMS. General update.
+
+Prerequisites:
+
+OpenVMS V7.0 or later (any platform)
+DECC V6.5 or later
+OpenSSL or hp SSL, if you want SSL support
+
+What is Here:
+
+This directory contains the following files:
+
+build_vms.com Build procedure.
+config-vms.h VMS-specific config.h.
+curlmsg.h C header defining cURL status code macros.
+curlmsg.msg Error message source for curlmsg.h and curlmsg.sdl.
+curlmsg.sdl SDL source defining cURL status code constants.
+curlmsg_vms.h Mapping of cURL status codes to VMS-form codes.
+hpssl_alpha.opt LINK options file for HP SSL on Alpha.
+hpssl_ia64.opt LINK options file for HP SSL on IA64.
+hpssl_vax.opt LINK options file for HP SSL on VAX.
+ldap.opt LINK options file for LDAP.
+Makefile.am cURL kit file list for this directory.
+Makefile.in cURL kit makefile source for this directory.
+openssl_alpha.opt LINK options file for OpenSSL on Alpha.
+openssl_ia64.opt LINK options file for OpenSSL on IA64.
+openssl_ssl_alpha.opt LINK options file for OpenSSL (SSL_ prefix) on Alpha.
+openssl_ssl_ia64.opt LINK options file for OpenSSL (SSL_ prefix) on IA64.
+openssl_ssl_vax.opt LINK options file for OpenSSL (SSL_ prefix) on VAX.
+openssl_vax.opt LINK options file for OpenSSL on VAX.
+readme. This file.
+
+
+How to Build:
+
+The (brute-force) builder is [.packages.vms]build_vms.com. Comments in
+this procedure describe various optional parameters which enable or
+disable optional program features, or which control the build in other
+ways. Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...) should be
+produced in an architecture-specific subdirectory under this directory
+([.ALPHA], [.IA64], [.VAX]).
+
+ Example build commands:
+
+ @ [.packages.vms]build_vms.com CLEAN
+ @ [.packages.vms]build_vms.com LARGE LDAP
+ submit /noprint [.packages.vms]build_vms.com /param = (LARGE, LDAP)
+
+
+Other Notes:
+
+The test suites are not supported as of 7.11.0.
+
+The curlmsg.sdl and curlmsg.h files are generated from curlmsg.msg.
+This is not done automatically, since the .MSG file is a hand edit
+of the relevant stuff from the curl.h file. If you want to do this
+yourself you'll need the SDL package from the freeware collection.
+