git-annex/Command
Joey Hess de138c642b
p2phttp: Allow unauthenticated users to lock content by default
* p2phttp: Allow unauthenticated users to lock content by default.
* p2phttp: Added --unauth-nolocking option to prevent unauthenticated
  users from locking content.

The rationalle for this is that locking is not really a write operation, so
makes sense to allow in a repository that only allows read-only access. Not
supporting locking in that situation will prevent the user from dropping
content from a special remote they control in cases where the other copy of
the content is on the p2phttp server.

Also, when p2phttp is configured to also allow authenticated access,
lockcontent was resulting in a password prompt for users who had no way to
authenticate. And there is no good way to distinguish between the two types
of users client side.

--unauth-nolocking anticipates that this might be abused, and seems better
than disabling unauthenticated access entirely if a server is being
attacked. It may be that rate limiting locking by IP address or similar
would be an effective measure in such a situation. Or just limiting the
number of locks by anonymous users that can be live at any one time. Since
the impact of such an DOS attempt is limited to preventing dropping content
from the server, it seems not a very appealing target anyway.
2024-10-21 10:02:12 -04:00
..
Add.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
AddUnused.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
AddUrl.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Adjust.hs rename to --unlock-present and better reverse adjusting 2020-11-13 14:56:43 -04:00
Assist.hs assist: With --jobs, parallelize transferring content to/from remotes 2023-07-05 12:47:30 -04:00
Assistant.hs remove dead nodes when loading the cluster log 2024-06-16 14:39:44 -04:00
Benchmark.hs improve benchmark --databases 2019-11-21 17:25:20 -04:00
CalcKey.hs safe output to terminal for calckey inprogress and lookupkey 2023-04-12 14:03:44 -04:00
CheckPresentKey.hs fix --from overriding annex-ignore 2023-11-30 15:12:07 -04:00
Config.hs config: Added the --show-origin and --for-file options 2023-06-12 16:24:31 -04:00
ConfigList.hs remove dead nodes when loading the cluster log 2024-06-16 14:39:44 -04:00
ConfigRemote.hs configremote: Support --json and --json-error-messages 2023-05-10 14:21:42 -04:00
ContentLocation.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Copy.hs plumb in LiveUpdate to copy/get/move/mirror 2024-08-24 09:20:58 -04:00
Dead.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
Describe.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
DiffDriver.hs more LiveUpdate plumbing 2024-08-24 09:28:41 -04:00
Direct.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
Drop.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
DropKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
DropUnused.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
EnableRemote.hs initremote, enableremote: Added --with-url to enable using git-remote-annex 2024-05-24 14:29:36 -04:00
EnableTor.hs support a P2PConnection that uses TMVars rather than Handles 2024-06-28 11:22:29 -04:00
ExamineKey.hs implement URL to VURL migration 2024-03-01 16:42:02 -04:00
Expire.hs newtype MapLog 2023-11-13 14:37:22 -04:00
Export.hs NoLiveExport for export and import 2024-08-24 09:19:12 -04:00
ExtendCluster.hs use annex+http for accessing proxies 2024-07-25 12:00:57 -04:00
FilterBranch.hs multiple -m second try 2024-04-09 12:56:47 -04:00
FilterProcess.hs smudge: Warn when encountering a pointer file that has other content appended to it 2022-02-23 15:17:08 -04:00
Find.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
FindKeys.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
FindRef.hs remove --backend from global options 2022-06-29 13:33:25 -04:00
Fix.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
Forget.hs filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
FromKey.hs support VURL backend 2024-02-29 13:48:51 -04:00
Fsck.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
FuzzTest.hs avoid head 2024-09-26 17:49:41 -04:00
GCryptSetup.hs eliminate s2w8 and w82s 2023-10-26 13:12:57 -04:00
Get.hs plumb in LiveUpdate to copy/get/move/mirror 2024-08-24 09:20:58 -04:00
Group.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
GroupWanted.hs git style quoting for ActionItemOther 2023-04-08 16:30:01 -04:00
Help.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Import.hs NoLiveExport for export and import 2024-08-24 09:19:12 -04:00
ImportFeed.hs run codespell throughout fixing typos automagically 2024-05-01 15:46:21 -04:00
InAnnex.hs add SeekInput (not yet used) 2020-09-15 15:41:13 -04:00
Indirect.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
Info.hs export only the parts of aeson that are used 2024-09-25 14:41:23 -04:00
Init.hs remove dead nodes when loading the cluster log 2024-06-16 14:39:44 -04:00
InitCluster.hs broke out initcluster 2024-06-14 17:23:11 -04:00
InitRemote.hs git-remote-annex: Display full url when using remote with the shorthand url 2024-05-24 17:15:31 -04:00
Inprogress.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
List.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
Lock.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Log.hs run codespell throughout fixing typos automagically 2024-05-01 15:46:21 -04:00
LookupKey.hs lookupkey: Allow using --ref in a bare repository. 2024-08-30 10:55:48 -04:00
Map.hs filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
MatchExpression.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
MaxSize.hs use live reposizes in balanced preferred content 2024-08-27 10:17:43 -04:00
Merge.hs sync: When in an adjusted branch, merge changes from the original branch 2023-07-06 12:42:24 -04:00
MetaData.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
Migrate.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
MinCopies.hs git style quoting for ActionItemOther 2023-04-08 16:30:01 -04:00
Mirror.hs plumb in LiveUpdate to copy/get/move/mirror 2024-08-24 09:20:58 -04:00
Move.hs plumb in LiveUpdate to copy/get/move/mirror 2024-08-24 09:20:58 -04:00
Multicast.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
NotifyChanges.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
NumCopies.hs git style quoting for ActionItemOther 2023-04-08 16:30:01 -04:00
OldKeys.hs oldkeys: check associated files by default and add --unchecked 2023-08-23 13:46:41 -04:00
P2P.hs git-annex-shell: block relay requests 2024-06-10 14:16:27 -04:00
P2PHttp.hs p2phttp: Allow unauthenticated users to lock content by default 2024-10-21 10:02:12 -04:00
P2PStdIO.hs clean up protocol version for proxying 2024-07-26 13:49:05 -04:00
PostReceive.hs post-receive: use the exporttree=yes remote as a source 2024-08-08 13:49:53 -04:00
PreCommit.hs pre-commit: Avoid committing the git-annex branch 2024-02-12 14:42:11 -04:00
Proxy.hs Automatically convert direct mode repositories to v7 with adjusted unlocked branches 2019-08-26 15:05:25 -04:00
Pull.hs git-annex pull and push 2023-05-16 16:51:07 -04:00
Push.hs git-annex pull and push 2023-05-16 16:51:07 -04:00
ReadPresentKey.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
RecvKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
RegisterUrl.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Reinit.hs remove dead nodes when loading the cluster log 2024-06-16 14:39:44 -04:00
Reinject.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
ReKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
RemoteDaemon.hs fix build with unix-2.8.0 2023-08-01 18:41:27 -04:00
RenameRemote.hs renameremote: Support --json and --json-error-messages 2023-05-08 16:25:40 -04:00
Repair.hs move several readonly values to AnnexRead 2022-06-28 15:40:19 -04:00
Required.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
ReregisterUrl.hs add reregisterurl command 2024-03-05 15:06:14 -04:00
ResolveMerge.hs filter out control characters in error messages 2023-04-10 13:50:51 -04:00
Restage.hs restage: New git-annex command, handles restaging unlocked files 2022-09-23 16:29:59 -04:00
RmUrl.hs rmurl: Support --json and --json-error-messages 2023-05-04 11:28:27 -04:00
Satisfy.hs added git-annex satisfy 2023-06-29 15:34:53 -04:00
Schedule.hs filter out control characters and quote filenames 2023-04-11 14:27:22 -04:00
Semitrust.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
SendKey.hs add optional object file location to storeKey 2024-07-01 10:42:27 -04:00
SetKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
SetPresentKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Sim.hs fix build with old random 2024-09-30 17:36:19 -04:00
Smudge.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Status.hs filter out control characters and quote filenames 2023-04-11 14:27:22 -04:00
Sync.hs more LiveUpdate plumbing 2024-08-24 09:28:41 -04:00
Test.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
TestRemote.hs avoid head 2024-09-26 17:53:00 -04:00
TransferKey.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
TransferKeys.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Transferrer.hs plumb in LiveUpdate (WIP) 2024-08-23 16:35:12 -04:00
Trust.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
Unannex.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
Undo.hs move commitStaged out of Command.Sync which no longer uses it 2024-02-07 16:19:28 -04:00
Ungroup.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
Uninit.hs remove slightly unsafe use of head 2024-09-26 17:21:22 -04:00
Unlock.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
UnregisterUrl.hs restore old registerurl location tracking behavior 2023-04-05 17:06:44 -04:00
Untrust.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
Unused.hs Tab completion of many commands like info and trust now includes remotes 2024-06-30 12:39:18 -04:00
UpdateCluster.hs updateproxy, updatecluster check annexobjects=yes 2024-08-07 12:27:24 -04:00
UpdateProxy.hs updateproxy, updatecluster check annexobjects=yes 2024-08-07 12:27:24 -04:00
Upgrade.hs remove dead nodes when loading the cluster log 2024-06-16 14:39:44 -04:00
VAdd.hs filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
VCycle.hs filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
Version.hs version: Avoid error message when entire output is not read 2023-05-19 15:00:57 -04:00
VFilter.hs understand adjusted view branch names 2023-02-27 14:57:58 -04:00
Vicfg.hs implement maxsize log and command 2024-08-11 15:41:26 -04:00
View.hs filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
VPop.hs git style quoting for ActionItemOther 2023-04-08 16:30:01 -04:00
Wanted.hs improve usage 2024-08-11 14:37:18 -04:00
Watch.hs webapp: Added --port option, and annex.port config 2024-01-25 14:08:36 -04:00
WebApp.hs webapp: Added --port option, and annex.port config 2024-01-25 14:08:36 -04:00
Whereis.hs don't count clusters as copies 2024-06-16 14:17:56 -04:00
WhereUsed.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00