aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorBodo Möller <bodo@openssl.org>2001-09-06 13:09:00 +0000
committerBodo Möller <bodo@openssl.org>2001-09-06 13:09:00 +0000
commit619b2c03dc206af4ecd8df5ea4233972e38baaec (patch)
treef850fe9378ed5b4b33b4e20df8b67b1d4e3ad6e0 /crypto
parentaa4c2de10e4e8b39f59cde9d668c765d50f23e46 (diff)
downloadopenssl-619b2c03dc206af4ecd8df5ea4233972e38baaec.tar.gz
Avoid strdup.
(Some platforms need _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED to get the declaration, but on other platforms _XOPEN_SOURCE disables the strdup declaration in <string.h>.)
Diffstat (limited to 'crypto')
-rw-r--r--crypto/engine/enginetest.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/crypto/engine/enginetest.c b/crypto/engine/enginetest.c
index 3a98eff463..befaef8c29 100644
--- a/crypto/engine/enginetest.c
+++ b/crypto/engine/enginetest.c
@@ -57,17 +57,9 @@
*/
#include <openssl/e_os2.h>
-/* The following defines enable the declaration of strdup(), which is an
- extended function according to X/Open. */
-#ifdef OPENSSL_SYS_VMS_DECC
-# define _XOPEN_SOURCE_EXTENDED
-#endif
-#ifdef OPENSSL_SYS_UNIX
-/* # define _XOPEN_SOURCE */
-# define _XOPEN_SOURCE_EXTENDED /* For Linux and probably anything GNU */
-#endif
#include <stdio.h>
-#include <string.h>
+#include <openssl/buffer.h>
+#include <openssl/crypto.h>
#include <openssl/engine.h>
#include <openssl/err.h>
@@ -205,9 +197,9 @@ int main(int argc, char *argv[])
for(loop = 0; loop < 512; loop++)
{
sprintf(buf, "id%i", loop);
- id = strdup(buf);
+ id = BUF_strdup(buf);
sprintf(buf, "Fake engine type %i", loop);
- name = strdup(buf);
+ name = BUF_strdup(buf);
if(((block[loop] = ENGINE_new()) == NULL) ||
!ENGINE_set_id(block[loop], id) ||
!ENGINE_set_name(block[loop], name))
@@ -242,8 +234,8 @@ cleanup_loop:
}
for(loop = 0; loop < 512; loop++)
{
- free((char *)(ENGINE_get_id(block[loop])));
- free((char *)(ENGINE_get_name(block[loop])));
+ OPENSSL_free((char *)(ENGINE_get_id(block[loop])));
+ OPENSSL_free((char *)(ENGINE_get_name(block[loop])));
}
printf("\nTests completed happily\n");
to_return = 0;