chiark / gitweb /
Include canonicalised suite name in signed tag message.
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 50c45d7a4168045b6cc4e43a6ea557012bafd488..2d2c0f19fe7dc60ca90c0c50f6b8d55f77d38cb1 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -52,6 +52,8 @@ our $initiator_tempdir;
 
 our %format_ok = map { $_=>1 } ("1.0","3.0 (native)","3.0 (quilt)");
 
+our $suite_re = '[-+.0-9a-z]+';
+
 our (@git) = qw(git);
 our (@dget) = qw(dget);
 our (@dput) = qw(dput);
@@ -1305,7 +1307,7 @@ type commit
 tag $tag
 tagger $authline
 
-$package release $cversion for $clogsuite [dgit]
+$package release $cversion for $clogsuite ($csuite) [dgit]
 END
     close TO or die $!;
 
@@ -1412,6 +1414,7 @@ sub dopush () {
 
     responder_send_file('changes',$changesfile);
     responder_send_command("param head $head");
+    responder_send_command("param csuite $csuite");
 
     my $tfn = sub { ".git/dgit/tag$_[0]"; };
     my $tagobjfn;
@@ -1724,10 +1727,13 @@ sub i_file_changes { }
 sub i_want_signed_tag {
     printdebug Dumper(\%i_param, $i_dscfn);
     defined $i_param{'head'} && defined $i_dscfn && defined $i_clogp
+       && defined $i_param{'csuite'}
        or badproto \*RO, "premature desire for signed-tag";
     my $head = $i_param{'head'};
     die if $head =~ m/[^0-9a-f]/ || $head !~ m/^../;
 
+    die unless $i_param{'csuite'} =~ m/^$suite_re$/;
+    $csuite = $&;
     push_parse_dsc $i_dscfn, 'remote dsc', $i_version;
 
     my $tagobjfn =