b43c835def
Untested, but this should be close to working. The proxied remotes have the same url but a different uuid. When talking to current git-annex-shell, it will fail due to a uuid mismatch. Once it supports proxies, it will know that the presented uuid is for a remote that it proxies for. The check for any git config settings for a remote with the same name as the proxied remote is there for several reasons. One is security: Writing a name to the proxy log should not cause changes to how an existing, configured git remote operates in a different clone of the repo. It's possible that the user has been using a proxied remote, and decides to set a git config for it. We can't tell the difference between that scenario and an evil remote trying to eg, intercept a file upload by replacing their remote with a proxied remote. Also, if the user sets some git config, does it override the config inherited from the proxy remote? Seems a difficult question. Luckily, the above means we don't need to think through it. This does mean though, that in order for a user to change the config of a proxy remote, they have to manually set its annex-uuid and url, as well as the config they want to change. They may also have to set any of the inherited configs that they were relying on. |
||
---|---|---|
.. | ||
Directory | ||
External | ||
Helper | ||
List | ||
Rsync | ||
WebDAV | ||
Adb.hs | ||
BitTorrent.hs | ||
Borg.hs | ||
Bup.hs | ||
Ddar.hs | ||
Directory.hs | ||
External.hs | ||
GCrypt.hs | ||
Git.hs | ||
GitLFS.hs | ||
Glacier.hs | ||
Hook.hs | ||
HttpAlso.hs | ||
List.hs | ||
P2P.hs | ||
Rclone.hs | ||
Rsync.hs | ||
S3.hs | ||
Tahoe.hs | ||
Web.hs | ||
WebDAV.hs |