diff options
Diffstat (limited to 'src/lib/libssl')
| -rwxr-xr-x | src/lib/libssl/src/apps/vms_decc_init.c | 188 | ||||
| -rw-r--r-- | src/lib/libssl/src/apps/winrand.c | 148 |
2 files changed, 0 insertions, 336 deletions
diff --git a/src/lib/libssl/src/apps/vms_decc_init.c b/src/lib/libssl/src/apps/vms_decc_init.c deleted file mode 100755 index f512c8f1bc..0000000000 --- a/src/lib/libssl/src/apps/vms_decc_init.c +++ /dev/null | |||
| @@ -1,188 +0,0 @@ | |||
| 1 | #if defined( __VMS) && !defined( OPENSSL_NO_DECC_INIT) && \ | ||
| 2 | defined( __DECC) && !defined( __VAX) && (__CRTL_VER >= 70301000) | ||
| 3 | # define USE_DECC_INIT 1 | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #ifdef USE_DECC_INIT | ||
| 7 | |||
| 8 | /* | ||
| 9 | * 2010-04-26 SMS. | ||
| 10 | * | ||
| 11 | *---------------------------------------------------------------------- | ||
| 12 | * | ||
| 13 | * decc_init() | ||
| 14 | * | ||
| 15 | * On non-VAX systems, uses LIB$INITIALIZE to set a collection of C | ||
| 16 | * RTL features without using the DECC$* logical name method. | ||
| 17 | * | ||
| 18 | *---------------------------------------------------------------------- | ||
| 19 | */ | ||
| 20 | |||
| 21 | #include <stdio.h> | ||
| 22 | #include <stdlib.h> | ||
| 23 | #include <unixlib.h> | ||
| 24 | |||
| 25 | |||
| 26 | /* Global storage. */ | ||
| 27 | |||
| 28 | /* Flag to sense if decc_init() was called. */ | ||
| 29 | |||
| 30 | int decc_init_done = -1; | ||
| 31 | |||
| 32 | |||
| 33 | /* Structure to hold a DECC$* feature name and its desired value. */ | ||
| 34 | |||
| 35 | typedef struct | ||
| 36 | { | ||
| 37 | char *name; | ||
| 38 | int value; | ||
| 39 | } decc_feat_t; | ||
| 40 | |||
| 41 | |||
| 42 | /* Array of DECC$* feature names and their desired values. | ||
| 43 | * Note: DECC$ARGV_PARSE_STYLE is the urgent one. | ||
| 44 | */ | ||
| 45 | |||
| 46 | decc_feat_t decc_feat_array[] = | ||
| 47 | { | ||
| 48 | /* Preserve command-line case with SET PROCESS/PARSE_STYLE=EXTENDED */ | ||
| 49 | { "DECC$ARGV_PARSE_STYLE", 1 }, | ||
| 50 | |||
| 51 | /* Preserve case for file names on ODS5 disks. */ | ||
| 52 | { "DECC$EFS_CASE_PRESERVE", 1 }, | ||
| 53 | |||
| 54 | /* Enable multiple dots (and most characters) in ODS5 file names, | ||
| 55 | * while preserving VMS-ness of ";version". | ||
| 56 | */ | ||
| 57 | { "DECC$EFS_CHARSET", 1 }, | ||
| 58 | |||
| 59 | /* List terminator. */ | ||
| 60 | { (char *)NULL, 0 } | ||
| 61 | }; | ||
| 62 | |||
| 63 | |||
| 64 | /* LIB$INITIALIZE initialization function. */ | ||
| 65 | |||
| 66 | static void decc_init( void) | ||
| 67 | { | ||
| 68 | char *openssl_debug_decc_init; | ||
| 69 | int verbose = 0; | ||
| 70 | int feat_index; | ||
| 71 | int feat_value; | ||
| 72 | int feat_value_max; | ||
| 73 | int feat_value_min; | ||
| 74 | int i; | ||
| 75 | int sts; | ||
| 76 | |||
| 77 | /* Get debug option. */ | ||
| 78 | openssl_debug_decc_init = getenv( "OPENSSL_DEBUG_DECC_INIT"); | ||
| 79 | if (openssl_debug_decc_init != NULL) | ||
| 80 | { | ||
| 81 | verbose = strtol( openssl_debug_decc_init, NULL, 10); | ||
| 82 | if (verbose <= 0) | ||
| 83 | { | ||
| 84 | verbose = 1; | ||
| 85 | } | ||
| 86 | } | ||
| 87 | |||
| 88 | /* Set the global flag to indicate that LIB$INITIALIZE worked. */ | ||
| 89 | decc_init_done = 1; | ||
| 90 | |||
| 91 | /* Loop through all items in the decc_feat_array[]. */ | ||
| 92 | |||
| 93 | for (i = 0; decc_feat_array[ i].name != NULL; i++) | ||
| 94 | { | ||
| 95 | /* Get the feature index. */ | ||
| 96 | feat_index = decc$feature_get_index( decc_feat_array[ i].name); | ||
| 97 | if (feat_index >= 0) | ||
| 98 | { | ||
| 99 | /* Valid item. Collect its properties. */ | ||
| 100 | feat_value = decc$feature_get_value( feat_index, 1); | ||
| 101 | feat_value_min = decc$feature_get_value( feat_index, 2); | ||
| 102 | feat_value_max = decc$feature_get_value( feat_index, 3); | ||
| 103 | |||
| 104 | /* Check the validity of our desired value. */ | ||
| 105 | if ((decc_feat_array[ i].value >= feat_value_min) && | ||
| 106 | (decc_feat_array[ i].value <= feat_value_max)) | ||
| 107 | { | ||
| 108 | /* Valid value. Set it if necessary. */ | ||
| 109 | if (feat_value != decc_feat_array[ i].value) | ||
| 110 | { | ||
| 111 | sts = decc$feature_set_value( feat_index, | ||
| 112 | 1, | ||
| 113 | decc_feat_array[ i].value); | ||
| 114 | |||
| 115 | if (verbose > 1) | ||
| 116 | { | ||
| 117 | fprintf( stderr, " %s = %d, sts = %d.\n", | ||
| 118 | decc_feat_array[ i].name, | ||
| 119 | decc_feat_array[ i].value, | ||
| 120 | sts); | ||
| 121 | } | ||
| 122 | } | ||
| 123 | } | ||
| 124 | else | ||
| 125 | { | ||
| 126 | /* Invalid DECC feature value. */ | ||
| 127 | fprintf( stderr, | ||
| 128 | " INVALID DECC$FEATURE VALUE, %d: %d <= %s <= %d.\n", | ||
| 129 | feat_value, | ||
| 130 | feat_value_min, decc_feat_array[ i].name, feat_value_max); | ||
| 131 | } | ||
| 132 | } | ||
| 133 | else | ||
| 134 | { | ||
| 135 | /* Invalid DECC feature name. */ | ||
| 136 | fprintf( stderr, | ||
| 137 | " UNKNOWN DECC$FEATURE: %s.\n", decc_feat_array[ i].name); | ||
| 138 | } | ||
| 139 | } | ||
| 140 | |||
| 141 | if (verbose > 0) | ||
| 142 | { | ||
| 143 | fprintf( stderr, " DECC_INIT complete.\n"); | ||
| 144 | } | ||
| 145 | } | ||
| 146 | |||
| 147 | /* Get "decc_init()" into a valid, loaded LIB$INITIALIZE PSECT. */ | ||
| 148 | |||
| 149 | #pragma nostandard | ||
| 150 | |||
| 151 | /* Establish the LIB$INITIALIZE PSECTs, with proper alignment and | ||
| 152 | * other attributes. Note that "nopic" is significant only on VAX. | ||
| 153 | */ | ||
| 154 | #pragma extern_model save | ||
| 155 | |||
| 156 | #if __INITIAL_POINTER_SIZE == 64 | ||
| 157 | # define PSECT_ALIGN 3 | ||
| 158 | #else | ||
| 159 | # define PSECT_ALIGN 2 | ||
| 160 | #endif | ||
| 161 | |||
| 162 | #pragma extern_model strict_refdef "LIB$INITIALIZ" PSECT_ALIGN, nopic, nowrt | ||
| 163 | const int spare[ 8] = { 0 }; | ||
| 164 | |||
| 165 | #pragma extern_model strict_refdef "LIB$INITIALIZE" PSECT_ALIGN, nopic, nowrt | ||
| 166 | void (*const x_decc_init)() = decc_init; | ||
| 167 | |||
| 168 | #pragma extern_model restore | ||
| 169 | |||
| 170 | /* Fake reference to ensure loading the LIB$INITIALIZE PSECT. */ | ||
| 171 | |||
| 172 | #pragma extern_model save | ||
| 173 | |||
| 174 | int LIB$INITIALIZE( void); | ||
| 175 | |||
| 176 | #pragma extern_model strict_refdef | ||
| 177 | int dmy_lib$initialize = (int) LIB$INITIALIZE; | ||
| 178 | |||
| 179 | #pragma extern_model restore | ||
| 180 | |||
| 181 | #pragma standard | ||
| 182 | |||
| 183 | #else /* def USE_DECC_INIT */ | ||
| 184 | |||
| 185 | /* Dummy code to avoid a %CC-W-EMPTYFILE complaint. */ | ||
| 186 | int decc_init_dummy( void); | ||
| 187 | |||
| 188 | #endif /* def USE_DECC_INIT */ | ||
diff --git a/src/lib/libssl/src/apps/winrand.c b/src/lib/libssl/src/apps/winrand.c deleted file mode 100644 index 59bede3d70..0000000000 --- a/src/lib/libssl/src/apps/winrand.c +++ /dev/null | |||
| @@ -1,148 +0,0 @@ | |||
| 1 | /* apps/winrand.c */ | ||
| 2 | /* ==================================================================== | ||
| 3 | * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. | ||
| 4 | * | ||
| 5 | * Redistribution and use in source and binary forms, with or without | ||
| 6 | * modification, are permitted provided that the following conditions | ||
| 7 | * are met: | ||
| 8 | * | ||
| 9 | * 1. Redistributions of source code must retain the above copyright | ||
| 10 | * notice, this list of conditions and the following disclaimer. | ||
| 11 | * | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in | ||
| 14 | * the documentation and/or other materials provided with the | ||
| 15 | * distribution. | ||
| 16 | * | ||
| 17 | * 3. All advertising materials mentioning features or use of this | ||
| 18 | * software must display the following acknowledgment: | ||
| 19 | * "This product includes software developed by the OpenSSL Project | ||
| 20 | * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" | ||
| 21 | * | ||
| 22 | * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to | ||
| 23 | * endorse or promote products derived from this software without | ||
| 24 | * prior written permission. For written permission, please contact | ||
| 25 | * openssl-core@openssl.org. | ||
| 26 | * | ||
| 27 | * 5. Products derived from this software may not be called "OpenSSL" | ||
| 28 | * nor may "OpenSSL" appear in their names without prior written | ||
| 29 | * permission of the OpenSSL Project. | ||
| 30 | * | ||
| 31 | * 6. Redistributions of any form whatsoever must retain the following | ||
| 32 | * acknowledgment: | ||
| 33 | * "This product includes software developed by the OpenSSL Project | ||
| 34 | * for use in the OpenSSL Toolkit (http://www.openssl.org/)" | ||
| 35 | * | ||
| 36 | * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY | ||
| 37 | * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
| 38 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 39 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR | ||
| 40 | * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
| 41 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
| 42 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
| 43 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 44 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, | ||
| 45 | * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 46 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED | ||
| 47 | * OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 48 | * ==================================================================== | ||
| 49 | * | ||
| 50 | * This product includes cryptographic software written by Eric Young | ||
| 51 | * (eay@cryptsoft.com). This product includes software written by Tim | ||
| 52 | * Hudson (tjh@cryptsoft.com). | ||
| 53 | * | ||
| 54 | */ | ||
| 55 | |||
| 56 | /* Usage: winrand [filename] | ||
| 57 | * | ||
| 58 | * Collects entropy from mouse movements and other events and writes | ||
| 59 | * random data to filename or .rnd | ||
| 60 | */ | ||
| 61 | |||
| 62 | #include <windows.h> | ||
| 63 | #include <openssl/opensslv.h> | ||
| 64 | #include <openssl/rand.h> | ||
| 65 | |||
| 66 | LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); | ||
| 67 | const char *filename; | ||
| 68 | |||
| 69 | int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, | ||
| 70 | PSTR cmdline, int iCmdShow) | ||
| 71 | { | ||
| 72 | static char appname[] = "OpenSSL"; | ||
| 73 | HWND hwnd; | ||
| 74 | MSG msg; | ||
| 75 | WNDCLASSEX wndclass; | ||
| 76 | char buffer[200]; | ||
| 77 | |||
| 78 | if (cmdline[0] == '\0') | ||
| 79 | filename = RAND_file_name(buffer, sizeof buffer); | ||
| 80 | else | ||
| 81 | filename = cmdline; | ||
| 82 | |||
| 83 | RAND_load_file(filename, -1); | ||
| 84 | |||
| 85 | wndclass.cbSize = sizeof(wndclass); | ||
| 86 | wndclass.style = CS_HREDRAW | CS_VREDRAW; | ||
| 87 | wndclass.lpfnWndProc = WndProc; | ||
| 88 | wndclass.cbClsExtra = 0; | ||
| 89 | wndclass.cbWndExtra = 0; | ||
| 90 | wndclass.hInstance = hInstance; | ||
| 91 | wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION); | ||
| 92 | wndclass.hCursor = LoadCursor(NULL, IDC_ARROW); | ||
| 93 | wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH); | ||
| 94 | wndclass.lpszMenuName = NULL; | ||
| 95 | wndclass.lpszClassName = appname; | ||
| 96 | wndclass.hIconSm = LoadIcon(NULL, IDI_APPLICATION); | ||
| 97 | RegisterClassEx(&wndclass); | ||
| 98 | |||
| 99 | hwnd = CreateWindow(appname, OPENSSL_VERSION_TEXT, | ||
| 100 | WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, | ||
| 101 | CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL); | ||
| 102 | |||
| 103 | ShowWindow(hwnd, iCmdShow); | ||
| 104 | UpdateWindow(hwnd); | ||
| 105 | |||
| 106 | |||
| 107 | while (GetMessage(&msg, NULL, 0, 0)) | ||
| 108 | { | ||
| 109 | TranslateMessage(&msg); | ||
| 110 | DispatchMessage(&msg); | ||
| 111 | } | ||
| 112 | |||
| 113 | return msg.wParam; | ||
| 114 | } | ||
| 115 | |||
| 116 | LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam) | ||
| 117 | { | ||
| 118 | HDC hdc; | ||
| 119 | PAINTSTRUCT ps; | ||
| 120 | RECT rect; | ||
| 121 | static int seeded = 0; | ||
| 122 | |||
| 123 | switch (iMsg) | ||
| 124 | { | ||
| 125 | case WM_PAINT: | ||
| 126 | hdc = BeginPaint(hwnd, &ps); | ||
| 127 | GetClientRect(hwnd, &rect); | ||
| 128 | DrawText(hdc, "Seeding the PRNG. Please move the mouse!", -1, | ||
| 129 | &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); | ||
| 130 | EndPaint(hwnd, &ps); | ||
| 131 | return 0; | ||
| 132 | |||
| 133 | case WM_DESTROY: | ||
| 134 | PostQuitMessage(0); | ||
| 135 | return 0; | ||
| 136 | } | ||
| 137 | |||
| 138 | if (RAND_event(iMsg, wParam, lParam) == 1 && seeded == 0) | ||
| 139 | { | ||
| 140 | seeded = 1; | ||
| 141 | if (RAND_write_file(filename) <= 0) | ||
| 142 | MessageBox(hwnd, "Couldn't write random file!", | ||
| 143 | "OpenSSL", MB_OK | MB_ICONERROR); | ||
| 144 | PostQuitMessage(0); | ||
| 145 | } | ||
| 146 | |||
| 147 | return DefWindowProc(hwnd, iMsg, wParam, lParam); | ||
| 148 | } | ||
