summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO3
-rwxr-xr-xdgit27
2 files changed, 29 insertions, 1 deletions
diff --git a/TODO b/TODO
index 7a3d688..f61fa50 100644
--- a/TODO
+++ b/TODO
@@ -1,4 +1,5 @@
-implement i_resp_*
+implement i_localname_*
+implement i_want_*
--gpg= etc. @gpg should be in manual
should pass @gpg to debsign
diff --git a/dgit b/dgit
index b551eac..eb6f01d 100755
--- a/dgit
+++ b/dgit
@@ -1406,7 +1406,34 @@ sub cmd_rpush {
};
i_cleanup();
die $@;
+}
+
+sub i_resp_progress ($) {
+ my ($rhs) = @_;
+ my $msg = protocol_read_bytes \*RO, $rhs;
+ progress $msg;
+}
+
+sub i_resp_complete {
+ i_cleanup();
+ exit 0;
+}
+
+sub i_resp_file ($) {
+ my ($keyword) = @_;
+ my $localname = i_method "i_localname_", $keyword;
+ my $localpath = "$i_tmp/$localname";
+ stat $localpath and badproto \*RO, "file $keyword ($localpath) twice";
+ protocol_receive_file \*RO, $localpath;
+}
+
+sub i_resp_want ($) {
+ my ($keyword) = @_;
+ my @localpaths = i_method "i_want_", $keyword;
+ foreach my $localpath (@localpaths) {
+ protocol_send_file \*RI, $localpath;
}
+ print RI "end-files\n" or die $!;
}
#---------- building etc. ----------