diff options
-rw-r--r-- | Remote/External.hs | 2 | ||||
-rw-r--r-- | Remote/External/Types.hs | 2 | ||||
-rw-r--r-- | debian/changelog | 6 | ||||
-rw-r--r-- | doc/design/external_special_remote_protocol.mdwn | 5 |
4 files changed, 13 insertions, 2 deletions
diff --git a/Remote/External.hs b/Remote/External.hs index e444a729d..3a567d834 100644 --- a/Remote/External.hs +++ b/Remote/External.hs @@ -226,6 +226,8 @@ handleRequest' lck external req mp responsehandler creds <- fromMaybe ("", "") <$> getRemoteCredPair c (credstorage setting) sendMessage lck external $ CREDS (fst creds) (snd creds) + handleRemoteRequest GETUUID = sendMessage lck external $ + VALUE $ fromUUID $ externalUUID external handleRemoteRequest (VERSION _) = sendMessage lck external $ ERROR "too late to send VERSION" diff --git a/Remote/External/Types.hs b/Remote/External/Types.hs index 0525cdfee..40bd8d52e 100644 --- a/Remote/External/Types.hs +++ b/Remote/External/Types.hs @@ -166,6 +166,7 @@ data RemoteRequest | GETCONFIG Setting | SETCREDS Setting String String | GETCREDS Setting + | GETUUID deriving (Show) instance Receivable RemoteRequest where @@ -176,6 +177,7 @@ instance Receivable RemoteRequest where parseCommand "GETCONFIG" = parse1 GETCONFIG parseCommand "SETCREDS" = parse3 SETCREDS parseCommand "GETCREDS" = parse1 GETCREDS + parseCommand "GETUUID" = parse0 GETUUID parseCommand _ = parseFail -- Responses to RemoteRequest. diff --git a/debian/changelog b/debian/changelog index 4689f0559..b767d86b0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +git-annex (5.20131231) UNRELEASED; urgency=medium + + * external special remote protocol: Added GETUUID. + + -- Joey Hess <joeyh@debian.org> Tue, 31 Dec 2013 13:41:18 -0400 + git-annex (5.20131230) unstable; urgency=medium * Added new external special remote interface. diff --git a/doc/design/external_special_remote_protocol.mdwn b/doc/design/external_special_remote_protocol.mdwn index 550a0ff14..8214a48a8 100644 --- a/doc/design/external_special_remote_protocol.mdwn +++ b/doc/design/external_special_remote_protocol.mdwn @@ -209,6 +209,9 @@ in control. or a file. (git-annex replies with "CREDS User Password". If no creds are found, User and Password are both empty.) +* `GETUUID` + Queries for the UUID of the special remote being used. + (git-annex replies with VALUE followed by the UUID.) ## general messages @@ -232,8 +235,6 @@ remote. the remote. However, \n and probably \0 need to be escaped somehow in the file data, which adds complication. * uuid discovery during INITREMOTE. -* uuid verification during PREPARE (so, for example, it can check if a - removable drive repo has the expected uuid) * Support for splitting files into chunks. * Support for getting and setting the list of urls that can be associated with a key. |