Commit 5098c029 authored by Richard Levitte's avatar Richard Levitte
Browse files

Remove SSL_TASK, the DECnet Based SSL Engine



This engine is for VMS only, and isn't really part of the core OpenSSL
but rather a side project of its own that just happens to have tagged
along for a long time.  The reasons why it has remained within the
OpenSSL source are long lost in history, and there not being any real
reason for it to remain here, it's time for it to move out.

This side project will appear as a project in its own right, the
location of which will be announced later on.

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
parent b9395187
Loading
Loading
Loading
Loading

crypto/bio/bss_rtcp.c

deleted100644 → 0
+0 −321
Original line number Diff line number Diff line
/* crypto/bio/bss_rtcp.c */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
 * All rights reserved.
 *
 * This package is an SSL implementation written
 * by Eric Young (eay@cryptsoft.com).
 * The implementation was written so as to conform with Netscapes SSL.
 *
 * This library is free for commercial and non-commercial use as long as
 * the following conditions are aheared to.  The following conditions
 * apply to all code found in this distribution, be it the RC4, RSA,
 * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
 * included with this distribution is covered by the same copyright terms
 * except that the holder is Tim Hudson (tjh@cryptsoft.com).
 *
 * Copyright remains Eric Young's, and as such any Copyright notices in
 * the code are not to be removed.
 * If this package is used in a product, Eric Young should be given attribution
 * as the author of the parts of the library used.
 * This can be in the form of a textual message at program startup or
 * in documentation (online or textual) provided with the package.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. All advertising materials mentioning features or use of this software
 *    must display the following acknowledgement:
 *    "This product includes cryptographic software written by
 *     Eric Young (eay@cryptsoft.com)"
 *    The word 'cryptographic' can be left out if the rouines from the library
 *    being used are not cryptographic related :-).
 * 4. If you include any Windows specific code (or a derivative thereof) from
 *    the apps directory (application code) you must include an acknowledgement:
 *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
 *
 * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 * The licence and distribution terms for any publically available version or
 * derivative of this code cannot be changed.  i.e. this code cannot simply be
 * copied and put under another distribution licence
 * [including the GNU Public Licence.]
 */

/*-
 * Written by David L. Jones <jonesd@kcgl1.eng.ohio-state.edu>
 * Date:   22-JUL-1996
 * Revised: 25-SEP-1997         Update for 0.8.1, BIO_CTRL_SET -> BIO_C_SET_FD
 */
/* VMS */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include "cryptlib.h"
#include <openssl/bio.h>

#include <iodef.h>              /* VMS IO$_ definitions */
#include <starlet.h>

typedef unsigned short io_channel;
/*************************************************************************/
struct io_status {
    short status, count;
    long flags;
};

/* Should have member alignment inhibited */
struct rpc_msg {
    /* 'A'-app data. 'R'-remote client 'G'-global */
    char channel;
    /* 'G'-get, 'P'-put, 'C'-confirm, 'X'-close */
    char function;
    /* Amount of data returned or max to return */
    unsigned short int length;
    /* variable data */
    char data[4092];
};
#define RPC_HDR_SIZE (sizeof(struct rpc_msg) - 4092)

struct rpc_ctx {
    int filled, pos;
    struct rpc_msg msg;
};

static int rtcp_write(BIO *h, const char *buf, int num);
static int rtcp_read(BIO *h, char *buf, int size);
static int rtcp_puts(BIO *h, const char *str);
static int rtcp_gets(BIO *h, char *str, int size);
static long rtcp_ctrl(BIO *h, int cmd, long arg1, void *arg2);
static int rtcp_new(BIO *h);
static int rtcp_free(BIO *data);

static BIO_METHOD rtcp_method = {
    BIO_TYPE_FD,
    "RTCP",
    rtcp_write,
    rtcp_read,
    rtcp_puts,
    rtcp_gets,
    rtcp_ctrl,
    rtcp_new,
    rtcp_free,
    NULL,
};

BIO_METHOD *BIO_s_rtcp(void)
{
    return (&rtcp_method);
}

/*****************************************************************************/
/*
 * Decnet I/O routines.
 */

#ifdef __DECC
# pragma message save
# pragma message disable DOLLARID
#endif

static int get(io_channel chan, char *buffer, int maxlen, int *length)
{
    int status;
    struct io_status iosb;
    status = sys$qiow(0, chan, IO$_READVBLK, &iosb, 0, 0,
                      buffer, maxlen, 0, 0, 0, 0);
    if ((status & 1) == 1)
        status = iosb.status;
    if ((status & 1) == 1)
        *length = iosb.count;
    return status;
}

static int put(io_channel chan, char *buffer, int length)
{
    int status;
    struct io_status iosb;
    status = sys$qiow(0, chan, IO$_WRITEVBLK, &iosb, 0, 0,
                      buffer, length, 0, 0, 0, 0);
    if ((status & 1) == 1)
        status = iosb.status;
    return status;
}

#ifdef __DECC
# pragma message restore
#endif

/***************************************************************************/

static int rtcp_new(BIO *bi)
{
    struct rpc_ctx *ctx;
    bi->init = 1;
    bi->num = 0;
    bi->flags = 0;
    bi->ptr = OPENSSL_malloc(sizeof(struct rpc_ctx));
    if (bi->ptr == NULL)
        return (0);
    ctx = (struct rpc_ctx *)bi->ptr;
    ctx->filled = 0;
    ctx->pos = 0;
    return (1);
}

static int rtcp_free(BIO *a)
{
    if (a == NULL)
        return (0);
    if (a->ptr)
        OPENSSL_free(a->ptr);
    a->ptr = NULL;
    return (1);
}

static int rtcp_read(BIO *b, char *out, int outl)
{
    int status, length;
    struct rpc_ctx *ctx;
    /*
     * read data, return existing.
     */
    ctx = (struct rpc_ctx *)b->ptr;
    if (ctx->pos < ctx->filled) {
        length = ctx->filled - ctx->pos;
        if (length > outl)
            length = outl;
        memmove(out, &ctx->msg.data[ctx->pos], length);
        ctx->pos += length;
        return length;
    }
    /*
     * Requst more data from R channel.
     */
    ctx->msg.channel = 'R';
    ctx->msg.function = 'G';
    ctx->msg.length = sizeof(ctx->msg.data);
    status = put(b->num, (char *)&ctx->msg, RPC_HDR_SIZE);
    if ((status & 1) == 0) {
        return -1;
    }
    /*
     * Read.
     */
    ctx->pos = ctx->filled = 0;
    status = get(b->num, (char *)&ctx->msg, sizeof(ctx->msg), &length);
    if ((status & 1) == 0)
        length = -1;
    if (ctx->msg.channel != 'R' || ctx->msg.function != 'C') {
        length = -1;
    }
    ctx->filled = length - RPC_HDR_SIZE;

    if (ctx->pos < ctx->filled) {
        length = ctx->filled - ctx->pos;
        if (length > outl)
            length = outl;
        memmove(out, ctx->msg.data, length);
        ctx->pos += length;
        return length;
    }

    return length;
}

static int rtcp_write(BIO *b, const char *in, int inl)
{
    int status, i, segment, length;
    struct rpc_ctx *ctx;
    /*
     * Output data, send in chunks no larger that sizeof(ctx->msg.data).
     */
    ctx = (struct rpc_ctx *)b->ptr;
    for (i = 0; i < inl; i += segment) {
        segment = inl - i;
        if (segment > sizeof(ctx->msg.data))
            segment = sizeof(ctx->msg.data);
        ctx->msg.channel = 'R';
        ctx->msg.function = 'P';
        ctx->msg.length = segment;
        memmove(ctx->msg.data, &in[i], segment);
        status = put(b->num, (char *)&ctx->msg, segment + RPC_HDR_SIZE);
        if ((status & 1) == 0) {
            i = -1;
            break;
        }

        status = get(b->num, (char *)&ctx->msg, sizeof(ctx->msg), &length);
        if (((status & 1) == 0) || (length < RPC_HDR_SIZE)) {
            i = -1;
            break;
        }
        if ((ctx->msg.channel != 'R') || (ctx->msg.function != 'C')) {
            printf("unexpected response when confirming put %c %c\n",
                   ctx->msg.channel, ctx->msg.function);

        }
    }
    return (i);
}

static long rtcp_ctrl(BIO *b, int cmd, long num, void *ptr)
{
    long ret = 1;

    switch (cmd) {
    case BIO_CTRL_RESET:
    case BIO_CTRL_EOF:
        ret = 1;
        break;
    case BIO_C_SET_FD:
        b->num = num;
        ret = 1;
        break;
    case BIO_CTRL_SET_CLOSE:
    case BIO_CTRL_FLUSH:
    case BIO_CTRL_DUP:
        ret = 1;
        break;
    case BIO_CTRL_GET_CLOSE:
    case BIO_CTRL_INFO:
    case BIO_CTRL_GET:
    case BIO_CTRL_PENDING:
    case BIO_CTRL_WPENDING:
    default:
        ret = 0;
        break;
    }
    return (ret);
}

static int rtcp_gets(BIO *bp, char *buf, int size)
{
    return (0);
}

static int rtcp_puts(BIO *bp, const char *str)
{
    int length;
    if (str == NULL)
        return (0);
    length = strlen(str);
    if (length == 0)
        return (0);
    return rtcp_write(bp, str, length);
}
+1 −1
Original line number Diff line number Diff line
@@ -285,7 +285,7 @@ $ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
	"bf_null,bf_buff,b_print,b_dump,"+ -
	"b_sock,bss_acpt,bf_nbio,bss_log,bss_bio,"+ -
	"bss_dgram,"+ -
	"bf_lbuf,bss_rtcp"	! The last two are VMS specific
	"bf_lbuf"	! The last one is VMS specific
$ LIB_STACK = "stack"
$ LIB_LHASH = "lhash,lh_stats"
$ LIB_RAND = "md_rand,randfile,rand_lib,rand_err,rand_egd,"+ -
+1 −34
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ $! CRYPTO Just build the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library.
$!      CRYPTO/x  Just build the x part of the
$!                "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library.
$!      SSL       Just build the "[.xxx.EXE.SSL]LIBSSL.OLB" library.
$!      SSL_TASK  Just build the "[.xxx.EXE.SSL]SSL_TASK.EXE" program.
$!      TEST      Just build the "[.xxx.EXE.TEST]" test programs for OpenSSL.
$!      APPS      Just build the "[.xxx.EXE.APPS]" application programs for OpenSSL.
$!      ENGINES   Just build the "[.xxx.EXE.ENGINES]" application programs for OpenSSL.
@@ -158,10 +157,6 @@ $! Build The [.xxx.EXE.SSL]LIBSSL.OLB Library.
$!
$   GOSUB SSL
$!
$!  Build The [.xxx.EXE.SSL]SSL_TASK.EXE DECNet SSL Engine.
$!
$   GOSUB SSL_TASK
$!
$!  Build The [.xxx.EXE.TEST] OpenSSL Test Utilities.
$!
$   GOSUB TEST
@@ -920,33 +915,6 @@ $! Time To Return.
$!
$ RETURN
$!
$! Build The "[.xxx.EXE.SSL]SSL_TASK.EXE" Program.
$!
$ SSL_TASK:
$!
$! Tell The User What We Are Doing.
$!
$ WRITE SYS$OUTPUT ""
$ WRITE SYS$OUTPUT -
   "Building DECNet Based SSL Engine, [.",ARCHD,".EXE.SSL]SSL_TASK.EXE"
$!
$! Go To The [.SSL] Directory.
$!
$ SET DEFAULT SYS$DISK:[.SSL]
$!
$! Build The [.xxx.EXE.SSL]SSL_TASK.EXE
$!
$ @SSL-LIB SSL_TASK 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" -
   "''ISSEVEN'" "''POINTER_SIZE'" "''ZLIB'"
$!
$! Go Back To The Main Directory.
$!
$ SET DEFAULT [-]
$!
$! That's All, Time To RETURN.
$!
$ RETURN
$!
$! Build The OpenSSL Test Programs.
$!
$ TEST:
@@ -1057,7 +1025,7 @@ $!
$   IF (P1.EQS."CONFIG").OR.(P1.EQS."BUILDINF").OR.(P1.EQS."SOFTLINKS") -
       .OR.(P1.EQS."BUILDALL") -
       .OR.(P1.EQS."CRYPTO").OR.(P1.EQS."SSL") -
       .OR.(P1.EQS."SSL_TASK").OR.(P1.EQS."TEST").OR.(P1.EQS."APPS") -
       .OR.(P1.EQS."TEST").OR.(P1.EQS."APPS") -
       .OR.(P1.EQS."ENGINES")
$   THEN
$!
@@ -1087,7 +1055,6 @@ $ WRITE SYS$OUTPUT " CRYPTO : To Build Just The [.xxx.EXE.CRYPTO]LIBCR
$     WRITE SYS$OUTPUT "    CRYPTO/x :  To Build Just The x Part Of The"
$     WRITE SYS$OUTPUT "                [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library."
$     WRITE SYS$OUTPUT "    SSL      :  To Build Just The [.xxx.EXE.SSL]LIBSSL.OLB Library."
$     WRITE SYS$OUTPUT "    SSL_TASK :  To Build Just The [.xxx.EXE.SSL]SSL_TASK.EXE Program."
$     WRITE SYS$OUTPUT "    TEST     :  To Build Just The OpenSSL Test Programs."
$     WRITE SYS$OUTPUT "    APPS     :  To Build Just The OpenSSL Application Programs."
$     WRITE SYS$OUTPUT "    ENGINES  :  To Build Just The ENGINES"
+1 −257
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ $! Specify the following as P1 to build just that part or ALL to just
$!  build everything.
$!
$!    		LIBRARY    To just compile the [.xxx.EXE.SSL]LIBSSL.OLB Library.
$!    		SSL_TASK   To just compile the [.xxx.EXE.SSL]SSL_TASK.EXE
$!
$!  Specify DEBUG or NODEBUG as P2 to compile with or without debugger
$!  information.
@@ -162,10 +161,6 @@ $! Define The CRYPTO-LIB We Are To Use.
$!
$ CRYPTO_LIB := SYS$DISK:[-.'ARCHD'.EXE.CRYPTO]SSL_LIBCRYPTO'LIB32'.OLB
$!
$! Set up exceptional compilations.
$!
$ CC5_SHOWN = 0
$!
$! Check To See What We Are To Do.
$!
$ IF (BUILDALL.EQS."TRUE")
@@ -174,7 +169,6 @@ $!
$!  Since Nothing Special Was Specified, Do Everything.
$!
$   GOSUB LIBRARY
$   GOSUB SSL_TASK
$!
$! Else...
$!
@@ -223,8 +217,6 @@ $ LIB_SSL = "s3_meth, s3_srvr, s3_clnt, s3_lib, s3_enc,s3_pkt,s3_both,s3_cbc,"+
	    "ssl_asn1,ssl_txt,ssl_algs,ssl_conf,"+ -
	    "bio_ssl,ssl_err,kssl,t1_reneg,tls_srp,t1_trce,ssl_utst"
$!
$ COMPILEWITH_CC5 = ""
$!
$! Tell The User That We Are Compiling The Library.
$!
$ WRITE SYS$OUTPUT "Building The ",SSL_LIB," Library."
@@ -309,251 +301,6 @@ $!
$! Time To RETURN.
$!
$ RETURN
$ SSL_TASK:
$!
$! Check To See If We Have The Proper Libraries.
$!
$ GOSUB LIB_CHECK
$!
$! Check To See If We Have A Linker Option File.
$!
$ GOSUB CHECK_OPT_FILE
$!
$! Check To See If The File We Want To Compile Is Actually There.
$!
$ IF (F$SEARCH("SYS$DISK:[]SSL_TASK.C").EQS."")
$ THEN
$!
$!  Tell The User That The File Dosen't Exist.
$!
$   WRITE SYS$OUTPUT ""
$   WRITE SYS$OUTPUT "The File SSL_TASK.C Dosen't Exist."
$   WRITE SYS$OUTPUT ""
$!
$!  Exit The Build.
$!
$   EXIT
$!
$! End The SSL_TASK.C File Check.
$!
$ ENDIF
$!
$ COMPILEWITH_CC5 = "" !!! ",ssl_task,"
$!
$! Tell The User We Are Creating The SSL_TASK.
$!
$! Tell The User We Are Creating The SSL_TASK.
$!
$ WRITE SYS$OUTPUT "Creating SSL_TASK OSU HTTP SSL Engine."	
$!
$!  Tell The User What File We Are Compiling.
$!
$ FILE_NAME = "ssl_task"
$ WRITE SYS$OUTPUT "	",FILE_NAME,".c"
$!
$! Compile The File.
$!
$ ON ERROR THEN GOTO SSL_TASK_END
$!
$ FILE_NAME0 = ","+ F$ELEMENT(0,".",FILE_NAME)+ ","
$ IF COMPILEWITH_CC5 - FILE_NAME0 .NES. COMPILEWITH_CC5
$ THEN
$   if (.not. CC5_SHOWN)
$   then
$     CC5_SHOWN = 1
$     write sys$output "        \Using special rule (5)"
$     x = "    "+ CC5
$     write /symbol sys$output x
$   endif
$   CC5 /OBJECT='OBJ_DIR''FILE_NAME'.OBJ SYS$DISK:[]'FILE_NAME'.C
$ ELSE
$   CC /OBJECT='OBJ_DIR''FILE_NAME'.OBJ SYS$DISK:[]'FILE_NAME'.C
$ ENDIF
$!
$! Link The Program.
$!
$ LINK /'DEBUGGER' /'LINKMAP' /'TRACEBACK' /EXE='EXE_DIR'SSL_TASK.EXE -
   'OBJ_DIR'SSL_TASK.OBJ, -
   'SSL_LIB'/LIBRARY, -
   'CRYPTO_LIB'/LIBRARY -
   'TCPIP_LIB' -
   'ZLIB_LIB' -
   ,'OPT_FILE' /OPTIONS
$!
$! Time To Return.
$!
$SSL_TASK_END:
$ RETURN
$!
$! Check For The Link Option FIle.
$!
$ CHECK_OPT_FILE:
$!
$! Check To See If We Need To Make A VAX C Option File.
$!
$ IF (COMPILER.EQS."VAXC")
$ THEN
$!
$!  Check To See If We Already Have A VAX C Linker Option File.
$!
$   IF (F$SEARCH(OPT_FILE).EQS."")
$   THEN
$!
$!    We Need A VAX C Linker Option File.
$!
$     CREATE 'OPT_FILE'
$DECK
!
! Default System Options File To Link Against 
! The Sharable VAX C Runtime Library.
!
SYS$SHARE:VAXCRTL.EXE/SHARE
$EOD
$!
$!  End The Option File Check.
$!
$   ENDIF
$!
$! End The VAXC Check.
$!
$ ENDIF
$!
$! Check To See If We Need A GNU C Option File.
$!
$ IF (COMPILER.EQS."GNUC")
$ THEN
$!
$!  Check To See If We Already Have A GNU C Linker Option File.
$!
$   IF (F$SEARCH(OPT_FILE).EQS."")
$   THEN
$!
$!    We Need A GNU C Linker Option File.
$!
$     CREATE 'OPT_FILE'
$DECK
!
! Default System Options File To Link Against 
! The Sharable C Runtime Library.
!
GNU_CC:[000000]GCCLIB/LIBRARY
SYS$SHARE:VAXCRTL/SHARE
$EOD
$!
$!  End The Option File Check.
$!
$   ENDIF
$!
$! End The GNU C Check.
$!
$ ENDIF
$!
$! Check To See If We Need A DEC C Option File.
$!
$ IF (COMPILER.EQS."DECC")
$ THEN
$!
$!  Check To See If We Already Have A DEC C Linker Option File.
$!
$   IF (F$SEARCH(OPT_FILE).EQS."")
$   THEN
$!
$!    Figure Out If We Need A non-VAX Or A VAX Linker Option File.
$!
$     IF (ARCH.EQS."VAX")
$     THEN
$!
$!      We Need A DEC C Linker Option File For VAX.
$!
$       CREATE 'OPT_FILE'
$DECK
!
! Default System Options File To Link Against 
! The Sharable DEC C Runtime Library.
!
SYS$SHARE:DECC$SHR.EXE/SHARE
$EOD
$!
$!    Else...
$!
$     ELSE
$!
$!      Create The non-VAX Linker Option File.
$!
$       CREATE 'OPT_FILE'
$DECK
!
! Default System Options File For non-VAX To Link Against 
! The Sharable C Runtime Library.
!
SYS$SHARE:CMA$OPEN_LIB_SHR/SHARE
SYS$SHARE:CMA$OPEN_RTL/SHARE
$EOD
$!
$!    End The DEC C Option File Check.
$!
$     ENDIF
$!
$!  End The Option File Search.
$!
$   ENDIF
$!
$! End The DEC C Check.
$!
$ ENDIF
$!
$!  Tell The User What Linker Option File We Are Using.
$!
$ WRITE SYS$OUTPUT "Using Linker Option File ",OPT_FILE,"."	
$!
$! Time To RETURN.
$!
$ RETURN
$ LIB_CHECK:
$!
$! Look For The VAX Library LIBSSL.OLB.
$!
$ IF (F$SEARCH(SSL_LIB).EQS."")
$ THEN
$!
$!  Tell The User We Can't Find The LIBSSL.OLB Library.
$!
$   WRITE SYS$OUTPUT ""
$   WRITE SYS$OUTPUT "Can't Find The Library ",SSL_LIB,"."
$   WRITE SYS$OUTPUT "We Can't Link Without It."
$   WRITE SYS$OUTPUT ""
$!
$!  Since We Can't Link Without It, Exit.
$!
$   EXIT
$!
$! End The LIBSSL.OLB Library Check.
$!
$ ENDIF
$!
$! Look For The Library LIBCRYPTO.OLB.
$!
$ IF (F$SEARCH(CRYPTO_LIB).EQS."")
$ THEN
$!
$!  Tell The User We Can't Find The LIBCRYPTO.OLB Library.
$!
$   WRITE SYS$OUTPUT ""
$   WRITE SYS$OUTPUT "Can't Find The Library ",CRYPTO_LIB,"."
$   WRITE SYS$OUTPUT "We Can't Link Without It."
$   WRITE SYS$OUTPUT ""
$!
$!  Since We Can't Link Without It, Exit.
$!
$   EXIT
$!
$! End The LIBCRYPTO.OLB Library Check.
$!
$ ENDIF
$!
$! Time To Return.
$!
$ RETURN
$!
$! Check The User's Options.
$!
@@ -574,7 +321,7 @@ $ ELSE
$!
$!  Else, Check To See If P1 Has A Valid Argument.
$!
$   IF (P1.EQS."LIBRARY").OR.(P1.EQS."SSL_TASK")
$   IF (P1.EQS."LIBRARY")
$   THEN
$!
$!    A Valid Argument.
@@ -592,7 +339,6 @@ $ WRITE SYS$OUTPUT "The Option ",P1," Is Invalid. The Valid Options Are:"
$     WRITE SYS$OUTPUT ""
$     WRITE SYS$OUTPUT "    ALL      :  Just Build Everything."
$     WRITE SYS$OUTPUT "    LIBRARY  :  To Compile Just The [.xxx.EXE.SSL]LIBSSL.OLB Library."
$     WRITE SYS$OUTPUT "    SSL_TASK :  To Compile Just The [.xxx.EXE.SSL]SSL_TASK.EXE Program."
$     WRITE SYS$OUTPUT ""
$     WRITE SYS$OUTPUT " Where 'xxx' Stands For:"
$     WRITE SYS$OUTPUT ""
@@ -1039,10 +785,8 @@ $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$   IF COMPILER .EQS. "DECC"
$   THEN
$     CC4 = CC - CCDISABLEWARNINGS + CC4DISABLEWARNINGS
$     CC5 = CC3 - CCDISABLEWARNINGS + CC4DISABLEWARNINGS
$   ELSE
$     CC4 = CC
$     CC5 = CC3
$   ENDIF
$!
$!  Show user the result

ssl/ssl_task.c

deleted100644 → 0
+0 −389

File deleted.

Preview size limit exceeded, changes collapsed.