Freeze exception for webauth 3.7.1-2
Hi all,
Yesterday, we discovered a serious brown-paper-bag bug in WebAuth 3.7.1
introduced in 3.7.0 that rendered the wa_keyring utility unusable. I've
pulled up the specific fix for this problem and have just uploaded 3.7.1-2
targetted at squeeze. Could you unblock it?
(The new upstream 3.7.2 release went into experimental and will go into
unstable after the release.)
Here is the complete diff:
diff --git a/debian/changelog b/debian/changelog
index 6f2e9b6..87e02c9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+webauth (3.7.1-2) unstable; urgency=low
+
+ * Apply upstream deltas:
+ - [49ad22d2] Fix wa_keyring option parsing and verbose mode bugs
+ * Update standards version to 3.9.1 (no changes required).
+
+ -- Russ Allbery <rra@debian.org> Thu, 12 Aug 2010 15:37:53 -0700
+
webauth (3.7.1-1) unstable; urgency=low
* New upstream release.
diff --git a/debian/control b/debian/control
index 686736a..282af91 100644
--- a/debian/control
+++ b/debian/control
@@ -6,7 +6,7 @@ Build-Depends: debhelper (>> 7), apache2-threaded-dev (>= 2.2),
libcgi-fast-perl, libcurl4-openssl-dev, libhtml-template-perl,
libkrb5-dev, libldap2-dev, libssl-dev, liburi-perl, libwww-perl,
libxml-parser-perl, perl
-Standards-Version: 3.9.0
+Standards-Version: 3.9.1
Homepage: http://webauth.stanford.edu/
Vcs-Git: git://git.eyrie.org/kerberos/webauth.git
Vcs-Browser: http://git.eyrie.org/?p=kerberos/webauth.git
diff --git a/tools/wa_keyring.c b/tools/wa_keyring.c
index b102cd9..6c1e1c1 100644
--- a/tools/wa_keyring.c
+++ b/tools/wa_keyring.c
@@ -372,7 +372,7 @@ int
main(int argc, char **argv)
{
int option;
- bool verbose;
+ bool verbose = false;
unsigned long id;
long offset;
char *end;
@@ -380,7 +380,13 @@ main(int argc, char **argv)
const char *command = "list";
message_program_name = argv[0];
- while ((option = getopt(argc, argv, "f:hv")) != EOF) {
+
+ /*
+ * The + tells GNU getopt to stop option parsing at the first non-argument
+ * rather than proceeding on to find options anywhere. This allows easier
+ * specification of negative time offsets.
+ */
+ while ((option = getopt(argc, argv, "+f:hv")) != EOF) {
switch (option) {
case 'f':
keyring = optarg;
@@ -391,6 +397,8 @@ main(int argc, char **argv)
case 'v':
verbose = true;
break;
+ case '+':
+ fprintf(stderr, "%s: invalid option -- +\n", argv[0]);
default:
usage(1);
break;
@@ -402,6 +410,7 @@ main(int argc, char **argv)
usage(1);
if (argc > 0) {
command = argv[0];
+ argc--;
argv++;
}
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: