Following the license change, modify the boilerplates in test/
[openssl.git] / test / testutil / basic_output.c
index ac413a6a4a38a72b0ea77351fc4f02c9b44f41d1..93afcd0fd1d37e0e74091d889dbdc58f1ea6d4a2 100644 (file)
@@ -1,13 +1,15 @@
 /*
- * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
  *
- * Licensed under the OpenSSL license (the "License").  You may not use
+ * Licensed under the Apache License 2.0 (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
  * in the file LICENSE in the source distribution or at
  * https://www.openssl.org/source/license.html
  */
 
 #include "../testutil.h"
+#include "output.h"
+#include "tu_local.h"
 
 #include <openssl/crypto.h>
 #include <openssl/bio.h>
 BIO *bio_out = NULL;
 BIO *bio_err = NULL;
 
-#ifdef OPENSSL_USE_APPLINK
-/*
- * Using BIO_new_fd() obligates the use of applinks on platforms where it's
- * relevant.  Because it becomes a module of the libtestutil library and would
- * be disregarded if not actively referred to, we have this dummy that does
- * exactly this.  For any module that uses the rest of the routines here,
- * OPENSSL_Applink should tag along for sure.
- */
-void Applink_dummy(void);
-void Applink_dummy(void)
-{
-    OPENSSL_EXTERN void OPENSSL_Applink(void);
-
-    OPENSSL_Applink();
-}
-/* Generate an error for anyone who tries to actually use this dummy */
-# define Applink_dummy "DON'T USE THIS"
-#endif
-
 void test_open_streams(void)
 {
-    bio_out = BIO_new_fd(1, 0);
-    bio_err = BIO_new_fd(2, 0);
+    bio_out = BIO_new_fp(stdout, BIO_NOCLOSE | BIO_FP_TEXT);
+    bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT);
+#ifdef __VMS
+    bio_out = BIO_push(BIO_new(BIO_f_linebuffer()), bio_out);
+    bio_err = BIO_push(BIO_new(BIO_f_linebuffer()), bio_err);
+#endif
+    bio_err = BIO_push(BIO_new(BIO_f_tap()), bio_err);
 
     OPENSSL_assert(bio_out != NULL);
     OPENSSL_assert(bio_err != NULL);
@@ -45,18 +33,8 @@ void test_open_streams(void)
 
 void test_close_streams(void)
 {
-    BIO_free(bio_out);
-    BIO_free(bio_err);
-}
-
-int test_puts_stdout(const char *str)
-{
-    return BIO_puts(bio_out, str);
-}
-
-int test_puts_stderr(const char *str)
-{
-    return BIO_puts(bio_err, str);
+    BIO_free_all(bio_out);
+    BIO_free_all(bio_err);
 }
 
 int test_vprintf_stdout(const char *fmt, va_list ap)