@@ -97,22 +97,32 @@ size_t createTempFILEpath(char buffer[PATH_MAX]) {
97
97
}
98
98
return GetTempFileNameA (pathname, " awslctest" , 0 , buffer);
99
99
}
100
+ FILE* createRawTempFILE () {
101
+ char filename[PATH_MAX];
102
+ if (createTempFILEpath (filename) == 0 ) {
103
+ return nullptr ;
104
+ }
105
+ return fopen (filename, " w+b" );
106
+ }
100
107
#else
108
+ #include < cstdlib>
101
109
size_t createTempFILEpath (char buffer[PATH_MAX]) {
102
- if (tmpnam (buffer) == nullptr ) {
110
+ const auto pattern = " awslc.XXXXXXXXX" ;
111
+ strncpy (buffer, pattern, PATH_MAX);
112
+ OPENSSL_BEGIN_ALLOW_DEPRECATED
113
+ // Functions for constructing a tempfile path (i.e., tmpname and mktemp)
114
+ // are deprecated in C99.
115
+ if (NULL == mktemp (buffer)) {
103
116
return 0 ;
104
117
}
118
+ OPENSSL_BEGIN_ALLOW_DEPRECATED
105
119
return strnlen (buffer, PATH_MAX);
106
120
}
107
- #endif
108
-
109
121
FILE* createRawTempFILE () {
110
- char filename[PATH_MAX];
111
- if (createTempFILEpath (filename) == 0 ) {
112
- return nullptr ;
113
- }
114
- return fopen (filename, " w+b" );
122
+ return tmpfile ();
115
123
}
124
+ #endif
125
+
116
126
117
127
TempFILE createTempFILE () {
118
128
return TempFILE (createRawTempFILE ());
0 commit comments