*/
int opt_next(void)
{
- char *p, *estr;
+ char *p;
const OPTIONS *o;
int ival;
long lval;
unsigned long ulval;
ossl_intmax_t imval;
ossl_uintmax_t umval;
-#if !defined(_WIN32) && !defined(__VMS)
- char *c;
- int oerrno;
-#endif
/* Look at current arg; at end of the list? */
arg = NULL;
return -1;
case '<':
/* Input file. */
- if (strcmp(arg, "-") == 0 || app_access(arg, R_OK) == 0)
- break;
- BIO_printf(bio_err,
- "%s: Cannot open input file %s, %s\n",
- prog, arg, strerror(errno));
- return -1;
+ break;
case '>':
/* Output file. */
-#if !defined(_WIN32) && !defined(__VMS)
- c = OPENSSL_strdup(arg);
- if (c == NULL) {
- BIO_printf(bio_err,
- "%s: Memory allocation failure\n", prog);
- return -1;
- }
- oerrno = errno;
- errno = 0;
- if (strcmp(arg, "-") == 0
- || (app_access(app_dirname(c), W_OK) == 0
- && app_isdir(arg) <= 0
- && (app_access(arg, W_OK) == 0 || errno == ENOENT))) {
- OPENSSL_free(c);
- break;
- }
- OPENSSL_free(c);
- if (errno == 0)
- /* only possible if 'arg' is a directory */
- estr = "is a directory";
- else
- estr = strerror(errno);
- errno = oerrno;
-#else
- if (strcmp(arg, "-") == 0 || app_access(arg, W_OK) == 0
- || errno == ENOENT)
- break;
- estr = strerror(errno);
-#endif
- BIO_printf(bio_err,
- "%s: Cannot open output file %s, %s\n",
- prog, arg, estr);
- return -1;
+ break;
case 'p':
case 'n':
if (!opt_int(arg, &ival)