1 /* crypto/o_dir.h -*- mode:C; c-file-style: "eay" -*- */ 2 /* Copied from Richard Levitte's (richard (at) levitte.org) LP library. All 3 * symbol names have been changed, with permission from the author. 4 */ 5 6 /* $LP: LPlib/test/test_dir.c,v 1.1 2004/06/16 22:59:47 _cvs_levitte Exp $ */ 7 /* 8 * Copyright (c) 2004, Richard Levitte <richard (at) levitte.org> 9 * All rights reserved. 10 * 11 * Redistribution and use in source and binary forms, with or without 12 * modification, are permitted provided that the following conditions 13 * are met: 14 * 1. Redistributions of source code must retain the above copyright 15 * notice, this list of conditions and the following disclaimer. 16 * 2. Redistributions in binary form must reproduce the above copyright 17 * notice, this list of conditions and the following disclaimer in the 18 * documentation and/or other materials provided with the distribution. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30 * SUCH DAMAGE. 31 */ 32 33 #include <stddef.h> 34 #include <stdlib.h> 35 #include <stdio.h> 36 #include <errno.h> 37 #include "e_os2.h" 38 #include "o_dir.h" 39 40 #if defined OPENSSL_SYS_UNIX || defined OPENSSL_SYS_WIN32 || defined OPENSSL_SYS_WINCE 41 #define CURRDIR "." 42 #elif defined OPENSSL_SYS_VMS 43 #define CURRDIR "SYS$DISK:[]" 44 #else 45 #error "No supported platform defined!" 46 #endif 47 48 int main() 49 { 50 OPENSSL_DIR_CTX *ctx = NULL; 51 const char *result; 52 53 while((result = OPENSSL_DIR_read(&ctx, CURRDIR)) != NULL) 54 { 55 printf("%s\n", result); 56 } 57 58 if (errno) 59 { 60 perror("test_dir"); 61 exit(1); 62 } 63 64 if (!OPENSSL_DIR_end(&ctx)) 65 { 66 perror("test_dir"); 67 exit(2); 68 } 69 exit(0); 70 } 71