Commit Graph

3508 Commits

Author SHA1 Message Date
Petar Maymounkov
8794928c31
add remote pinning policy for mfs (#7798)
* remote pinning service MFS policy
* update go-ipfs-config
* hardening secret sanitization in `ipfs config` commands

Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-01-28 18:58:44 -05:00
Andrew Gillis
6f6f04543b
Improve error message when running key command that locks repo (#7821)
* Improve error message when running key commands that must be run when the daemon is not already running

Fixes Issue #7814

`ipfs key export` now does a PreRun check like `ipfs key rotate` was to give a better error to the user then "someone else has the lock" in the event that the daemon is running while trying to execute these offline-only commands.

While unlikely the "someone else has the lock" error can still be shown if two processes try and grab the repo lock at the same time.

This PreRun function is also exported so it can be used by `ipfs init` where it was originally copied from.

* Added more `ipfs key` command tests

When daemon is running:
- Test that import works
- Test that export fails
- Test that rotate fails
2021-01-28 15:15:49 -05:00
Adin Schmahmann
3e7a105676
Merge pull request #7887 from ipfs/docs/clarify-repeated-options
docs: comma delimited options in pin remote --help
2021-01-28 13:31:24 -05:00
Marcin Rataj
3bca93787a
docs: comma delimited options in pin remote --help
This adds clarification suggested in
https://github.com/ipfs/go-ipfs/pull/7823#pullrequestreview-577889138
2021-01-28 17:23:46 +01:00
Adin Schmahmann
61f3a2f3a2 fix: restrict remote pinning service endpoint URIs to HTTP/HTTPS 2021-01-27 19:28:58 -05:00
Marcin Rataj
fc4095cfb3 refactor: url → endpoint
https://github.com/ipfs/go-ipfs/pull/7828#discussion_r543520089
2021-01-27 19:28:58 -05:00
Marcin Rataj
7313a45bc7 fix: url.RawFragment does not work in go1.14
I don't think we need to worry about #hash, so just removed it
2021-01-27 19:28:58 -05:00
Marcin Rataj
6851ede8eb refactor: normalization with path.Clean 2021-01-27 19:28:58 -05:00
Marcin Rataj
5f692a76de fix: normalize remote service endpoint
Closes #7826
2021-01-27 19:28:54 -05:00
Marcin Rataj
0b6912e3b3 refactor: cleanup arg params 2021-01-27 23:55:09 +01:00
Marcin Rataj
1cb90d7109 docs: pin remote readability
Co-authored-by: Jessica Schilling <jessica@protocol.ai>
2021-01-27 23:55:07 +01:00
Marcin Rataj
3b82dd8e55 docs: CLI docs for pin remote commands
This adds docs in form of longer description that is displayed
when --help is passes on the CLI.

While at it, unified some language to match fields in the config file
and other places + included some tips and best practices which should
improve onboarding experience.
2021-01-27 23:53:41 +01:00
Adin Schmahmann
a95a86ed54 feat: ipfs pin remote ls commands are comma delimited on the CLI only 2021-01-27 12:07:44 -05:00
Adin Schmahmann
7588a6a52a
Merge pull request #7829 from ipfs/fix/pin-remote-service-ls-json
fix: remote services ls always return a list
2021-01-14 17:37:40 -05:00
Marcin Rataj
a0f90d3a14 test: cover 2 remaining lines 2021-01-14 20:53:20 +01:00
Marcin Rataj
abb25a1cfc refactor: remove redundant urlescape
URL.Query() will already decode the query parameters
2021-01-14 20:52:04 +01:00
Marcin Rataj
3de5b14e0c fix: ?uri= url-decode and preserve query
This makes ?uri= param able to process URIs passed by web browsers
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler
2021-01-14 20:52:04 +01:00
Dennis Trautwein
36368ee4dd feat: support requests from registerProtocolHandler
This commit adds support for requests produced by navigator.registerProtocolHandler on gateways. Now one can register `dweb.link` as an URI handler for `ipfs://`:

```
navigator.registerProtocolHandler('ipfs', 'https://dweb.link/ipfs/?uri=%s', 'ipfs resolver')
```

Then opening `ipfs://QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR` will produce an HTTP GET call to:

```
https://dweb.link/ipfs?uri=ipfs%3A%2F%2FQmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
```

The query parameter `uri` will now be parsed and the given content identifier resolved via:

`https://dweb.link/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR`
2021-01-14 20:52:04 +01:00
Adin Schmahmann
4ccb526b94
Merge pull request #7847 from ipfs/fix/dnslink-in-subdomain-gw
feat(gw): DNSLink names on https:// subdomains
2021-01-14 14:50:04 -05:00
Marcin Rataj
f932510b88
fix: check if rootID has DNSLink before uninlining
This kinda enables to run their custom DNS resolver with custom
tlds/names that are independent from the public DNS network.
2021-01-14 20:14:35 +01:00
gammazero
20132a83ef code review changes 2021-01-14 02:29:11 -08:00
gammazero
267d6fc4fe Modify escaping 2021-01-12 14:54:21 -08:00
Marcin Rataj
88dd257ace
test: false for isHTTPSRequest
As suggested in
https://github.com/ipfs/go-ipfs/pull/7847#discussion_r551933162
2021-01-08 00:31:46 +01:00
Marcin Rataj
09178aa717
feat(gw): support inlined DNSLink names with TLS
Problem statement and rationale for doing this can be found under
"Option C" at: https://github.com/ipfs/in-web-browsers/issues/169

TLDR is:

`https://dweb.link/ipns/my.v-long.example.com` can be loaded from a
subdomain gateway with a wildcard TLS cert if represented as a single
DNS label: `https://my-v--long-example-com.ipns.dweb.link`
2021-01-01 21:39:42 +01:00
gammazero
306dfb34a1 additional escape 2020-12-18 17:23:30 -08:00
gammazero
7193f950d7 Escape non-printable characters in user output
Replaces control characters and non-printable characters with escape sequences, in any fields that are printed by the CLI, which could have been user input.

Output from `ipfs cat` is unchanged.
2020-12-17 18:16:34 -08:00
Marcin Rataj
4d52bbdde8
fix: remote services ls always return a list
Closes #7824
2020-12-15 00:42:18 +01:00
Adin Schmahmann
fb3316ad05 fix: decrease log level of opencensus initialization 2020-12-08 21:46:49 -05:00
Adin Schmahmann
78c6dba9cc
Merge pull request #7593 from lanzafame/register-oc-metrics
Register oc metrics
2020-12-08 21:10:36 -05:00
Petar Maymounkov
a8c7980721
add remote pinning to ipfs command (#7661)
Added support for remote pinning services

A pinning service is a service that accepts CIDs from a user in order to host the data associated with them.
The spec for these services is defined at https://github.com/ipfs/pinning-services-api-spec

Support is available via the `ipfs pin remote` CLI and the corresponding HTTP API

Co-authored-by: Petar Maymounkov <petarm@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2020-12-08 20:32:33 -05:00
lanzafame
024bf80e6a change the scraping url 2020-12-08 20:22:43 -05:00
lanzafame
3d9821260a register quic opencensus metrics 2020-12-08 20:22:38 -05:00
Adin Schmahmann
edde2809e7
Merge pull request #7797 from ipfs/fix/p2p-proxy-checks
More p2p proxy checks
2020-12-08 17:15:30 -05:00
Adin Schmahmann
0b1276db59 Use datastore based pinner 2020-12-04 15:33:31 -05:00
Adin Schmahmann
76f3395ee6 p2p-proxy: earlier peerID validation check 2020-12-01 12:24:18 -05:00
Adin Schmahmann
a329e4fc66 p2p-proxy: better request length checking 2020-12-01 11:01:40 -05:00
Steven Allen
7a50636f9a fix: return an error when an unknown object type is passed
fixes #7785
2020-11-30 17:59:37 -08:00
Adin Schmahmann
373f5f9f0d
Merge pull request #7755 from ChaituVR/patch-1
* Clarify why ipfs file ls is being deprecated.
* Explain that ipfs files ls works on both IPFS paths and MFS paths.
2020-11-24 13:40:49 -05:00
Adin Schmahmann
6e82b53f03
Merge pull request #7753 from ipfs/fix/dag-import-export-coreapi
fix: ipfs dag export uses the CoreAPI and respects the offline flag
2020-11-24 13:14:53 -05:00
Chaitanya
f46891e0b5
Update ls.go 2020-11-24 14:02:10 +05:30
Chaitanya
8487fad43c
Update ls.go 2020-11-24 14:00:42 +05:30
Chaitanya
ec64dc5c39
Update ls.go 2020-11-24 13:51:29 +05:30
Chaitanya
1cfd8c7568
Update core/commands/unixfs/ls.go
Co-authored-by: Steven Allen <steven@stebalien.com>
2020-11-24 13:42:48 +05:30
Chaitanya
fa81f2a7b3
Update core/commands/files.go
Co-authored-by: Steven Allen <steven@stebalien.com>
2020-11-24 13:42:36 +05:30
Chaitanya
475e0ea399
Update ls.go 2020-11-16 18:01:22 +05:30
Chaitanya
0c4ad11cfb
Update files.go 2020-11-16 17:52:30 +05:30
Steven Allen
5cd013ed38 update libp2p for stream closure refactor 2020-11-13 13:59:03 -08:00
Andrew Nesbitt
37a637e8c1
Fix typo in ipfs dag stat command 2020-11-11 13:04:52 +00:00
Adin Schmahmann
499e011df9
Merge pull request #7699 from ipfs/fix/dnslink-dir-listing
fix(dnslink-gw): breadcrumbs and CID column when dir listing
2020-11-10 15:03:36 -05:00
Adin Schmahmann
0700c74bad
Merge pull request #7727 from ipfs/fix/preserver-query-on-website-redirect
fix(gw): preserve query on website redirect
2020-11-10 14:36:11 -05:00