* pgpgroup-to-gpggroup: New perl script to take groups from PGP command
authorDavid Shaw <dshaw@jabberwocky.com>
Tue, 14 Sep 2004 01:57:25 +0000 (01:57 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Tue, 14 Sep 2004 01:57:25 +0000 (01:57 +0000)
line and write out GnuPG 'group' config lines.

tools/ChangeLog
tools/pgpgroup-to-gpggroup [new file with mode: 0755]

index b7350b3..75f4cc7 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-13  David Shaw  <dshaw@jabberwocky.com>
+
+       * pgpgroup-to-gpggroup: New perl script to take groups from PGP
+       command line and write out GnuPG 'group' config lines.
+
 2004-07-04  David Shaw  <dshaw@jabberwocky.com>
 
        * ring-a-party: ElGamal -> Elgamal
diff --git a/tools/pgpgroup-to-gpggroup b/tools/pgpgroup-to-gpggroup
new file mode 100755 (executable)
index 0000000..5ea9990
--- /dev/null
@@ -0,0 +1,42 @@
+#!/usr/bin/perl -w
+
+# pgpgroup-to-gpggroup - convert PGP groups to GnuPG groups
+# Copyright (C) 2004 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+# This program requires a PGP command line program that supports
+# groups (note that the PGP 8 command line doesn't).
+
+$pgp="pgp -gvv 2>/dev/null";
+
+open(PGP,"$pgp|") || die "Unable to call PGP: $!";
+
+while(<PGP>)
+{
+    # If the line begins with a ">", then it is a new group.
+
+    if(/^ > (\S+)/)
+    {
+       print "\ngroup $1 = ";
+    }
+    elsif(/\s+(0x\S+)/)
+    {
+       print "$1 ";
+    }
+}
+
+print "\n";
+close(PGP);