- (djm) OpenBSD CVS Sync
   - martynas@cvs.openbsd.org 2008/06/21 07:46:46
     [sftp.c]
     use optopt to get invalid flag, instead of return value of getopt,
     which is always '?';  ok djm@
diff --git a/sftp.c b/sftp.c
index 9b8bf38..f361378 100644
--- a/sftp.c
+++ b/sftp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sftp.c,v 1.101 2008/06/08 20:15:29 dtucker Exp $ */
+/* $OpenBSD: sftp.c,v 1.102 2008/06/21 07:46:46 martynas Exp $ */
 /*
  * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
  *
@@ -364,7 +364,7 @@
 static int
 parse_getput_flags(const char *cmd, char **argv, int argc, int *pflag)
 {
-	extern int optind, optreset, opterr;
+	extern int opterr, optind, optopt, optreset;
 	int ch;
 
 	optind = optreset = 1;
@@ -378,7 +378,7 @@
 			*pflag = 1;
 			break;
 		default:
-			error("%s: Invalid flag -%c", cmd, ch);
+			error("%s: Invalid flag -%c", cmd, optopt);
 			return -1;
 		}
 	}
@@ -389,7 +389,7 @@
 static int
 parse_ls_flags(char **argv, int argc, int *lflag)
 {
-	extern int optind, optreset, opterr;
+	extern int opterr, optind, optopt, optreset;
 	int ch;
 
 	optind = optreset = 1;
@@ -428,7 +428,7 @@
 			*lflag |= LS_TIME_SORT;
 			break;
 		default:
-			error("ls: Invalid flag -%c", ch);
+			error("ls: Invalid flag -%c", optopt);
 			return -1;
 		}
 	}
@@ -439,7 +439,7 @@
 static int
 parse_df_flags(const char *cmd, char **argv, int argc, int *hflag, int *iflag)
 {
-	extern int optind, optreset, opterr;
+	extern int opterr, optind, optopt, optreset;
 	int ch;
 
 	optind = optreset = 1;
@@ -455,7 +455,7 @@
 			*iflag = 1;
 			break;
 		default:
-			error("%s: Invalid flag -%c", cmd, ch);
+			error("%s: Invalid flag -%c", cmd, optopt);
 			return -1;
 		}
 	}