diff --git a/cmd/ipfs/init.go b/cmd/ipfs/init.go index ddad2b2d1..1765de750 100644 --- a/cmd/ipfs/init.go +++ b/cmd/ipfs/init.go @@ -16,7 +16,7 @@ import ( namesys "github.com/ipfs/go-ipfs/namesys" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" - "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit" ) diff --git a/cmd/ipfs/main.go b/cmd/ipfs/main.go index fc8f70d6c..e9c7b6820 100644 --- a/cmd/ipfs/main.go +++ b/cmd/ipfs/main.go @@ -24,7 +24,7 @@ import ( repo "github.com/ipfs/go-ipfs/repo" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" - "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" u "gx/ipfs/QmPdKqUcHGFdeSpvjVoaTRPPstGif9GBZb5Q56RVw9o69A/go-ipfs-util" "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds/cli" diff --git a/cmd/ipfswatch/main.go b/cmd/ipfswatch/main.go index 38029e63d..43820bad5 100644 --- a/cmd/ipfswatch/main.go +++ b/cmd/ipfswatch/main.go @@ -15,7 +15,7 @@ import ( coreunix "github.com/ipfs/go-ipfs/core/coreunix" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" process "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess" homedir "gx/ipfs/QmdcULN1WCzgoQmcCaUAmEhwcxHYsDrbZ2LvRJKCL8dMrK/go-homedir" fsnotify "gx/ipfs/QmfNjggF4Pt6erqg3NDafD3MdvDHk1qqCVr8pL5hnPucS8/fsnotify" diff --git a/commands/request.go b/commands/request.go index 96d2d7836..cffe7124b 100644 --- a/commands/request.go +++ b/commands/request.go @@ -10,7 +10,7 @@ import ( coreapi "github.com/ipfs/go-ipfs/core/coreapi" coreiface "github.com/ipfs/go-ipfs/core/coreapi/interface" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" files "gx/ipfs/QmZMWMvWMVKCbHetJ4RgndbuEF1io2UpUxwQwtNjtYPzSC/go-ipfs-files" "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit" diff --git a/core/bootstrap.go b/core/bootstrap.go index bfd982493..869c9449e 100644 --- a/core/bootstrap.go +++ b/core/bootstrap.go @@ -12,7 +12,7 @@ import ( math2 "github.com/ipfs/go-ipfs/thirdparty/math2" lgbl "gx/ipfs/QmVrDtvvQCUeMZaY9UFkae6c85kdQ1GvVEhPrjPTdjxRLv/go-libp2p-loggables" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" goprocess "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess" procctx "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess/context" periodicproc "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess/periodic" diff --git a/core/bootstrap_test.go b/core/bootstrap_test.go index 84e4fb20b..f2b49b33d 100644 --- a/core/bootstrap_test.go +++ b/core/bootstrap_test.go @@ -4,7 +4,7 @@ import ( "fmt" "testing" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" pstore "gx/ipfs/QmTTJcDL3gsnGDALjh2fDGg1onGRUdVgNL2hU2WEZcVrMX/go-libp2p-peerstore" testutil "gx/ipfs/Qma6ESRQTf1ZLPgzpCwDTqQJefPnU6uLvMjP18vK8EWp8L/go-testutil" ) diff --git a/core/builder.go b/core/builder.go index 569be1885..6670b7d8f 100644 --- a/core/builder.go +++ b/core/builder.go @@ -19,7 +19,7 @@ import ( bserv "gx/ipfs/QmWfhv1D18DRSiSm73r4QGcByspzPtxxRTcmHW3axFXZo8/go-blockservice" dag "gx/ipfs/QmY8BMUSpCwNiTmFhACmC9Bt1qT63cHP35AoQAus4x14qH/go-merkledag" - cfg "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + cfg "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" ci "gx/ipfs/QmPvyPwuCgJ7pDmrKDxRtsScJgBaM5h4EpRL2qQJsmXf4n/go-libp2p-crypto" goprocessctx "gx/ipfs/QmSF8fPo3jgVBAy8fpdjjYqgG87dkJgUprRBHRd2tmfgpP/goprocess/context" offline "gx/ipfs/QmT6dHGp3UYd3vUMpy7rzX2CXQv7HLcj42Vtq8qwwjgASb/go-ipfs-exchange-offline" diff --git a/core/commands/bootstrap.go b/core/commands/bootstrap.go index 3d6607aee..6ea0dc2ef 100644 --- a/core/commands/bootstrap.go +++ b/core/commands/bootstrap.go @@ -11,7 +11,7 @@ import ( repo "github.com/ipfs/go-ipfs/repo" "github.com/ipfs/go-ipfs/repo/fsrepo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit" ) diff --git a/core/commands/cmdenv/env.go b/core/commands/cmdenv/env.go index 53020e2ee..8e40707ad 100644 --- a/core/commands/cmdenv/env.go +++ b/core/commands/cmdenv/env.go @@ -7,7 +7,7 @@ import ( "github.com/ipfs/go-ipfs/core" coreiface "github.com/ipfs/go-ipfs/core/coreapi/interface" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" cmds "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" ) diff --git a/core/commands/config.go b/core/commands/config.go index 098411fb9..73385d7ea 100644 --- a/core/commands/config.go +++ b/core/commands/config.go @@ -16,8 +16,8 @@ import ( repo "github.com/ipfs/go-ipfs/repo" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" "gx/ipfs/QmP2i47tnU23ijdshrZtuvrSkQPtf9HhsMb9fwGVe8owj2/jsondiff" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit" ) diff --git a/core/commands/mount_unix.go b/core/commands/mount_unix.go index 61101ae80..62d8bb8c1 100644 --- a/core/commands/mount_unix.go +++ b/core/commands/mount_unix.go @@ -11,7 +11,7 @@ import ( e "github.com/ipfs/go-ipfs/core/commands/e" nodeMount "github.com/ipfs/go-ipfs/fuse/node" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit" ) diff --git a/core/commands/repo.go b/core/commands/repo.go index 3a37d6721..1e084797a 100644 --- a/core/commands/repo.go +++ b/core/commands/repo.go @@ -17,7 +17,7 @@ import ( corerepo "github.com/ipfs/go-ipfs/core/corerepo" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" cid "gx/ipfs/QmPSQnBKM9g7BaUcZCvswUJVscQ1ipjmwxN5PXCjkp9EQ7/go-cid" cmds "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" bstore "gx/ipfs/QmcDDgAXDbpDUpadCJKLr49KYR4HuL7T8Z1dZTHt6ixsoR/go-ipfs-blockstore" diff --git a/core/commands/swarm.go b/core/commands/swarm.go index 430869721..f8e5fc4e3 100644 --- a/core/commands/swarm.go +++ b/core/commands/swarm.go @@ -14,7 +14,7 @@ import ( "github.com/ipfs/go-ipfs/repo" "github.com/ipfs/go-ipfs/repo/fsrepo" - "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" mafilter "gx/ipfs/QmSMZwvs3n4GBikZ7hKzT17c3bk65FmyZo2JqtJ16swqCv/multiaddr-filter" ma "gx/ipfs/QmT4U94DnD8FRfqr21obWY32HLM5VExccPKMjQHofeYqr9/go-multiaddr" diff --git a/core/core.go b/core/core.go index db780b2df..f626e20b6 100644 --- a/core/core.go +++ b/core/core.go @@ -30,12 +30,11 @@ import ( pin "github.com/ipfs/go-ipfs/pin" repo "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" bitswap "gx/ipfs/QmNkxFCmPtr2RQxjZNRCNryLud4L9wMEiBJsLgF14MqTHj/go-bitswap" bsnet "gx/ipfs/QmNkxFCmPtr2RQxjZNRCNryLud4L9wMEiBJsLgF14MqTHj/go-bitswap/network" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" cid "gx/ipfs/QmPSQnBKM9g7BaUcZCvswUJVscQ1ipjmwxN5PXCjkp9EQ7/go-cid" u "gx/ipfs/QmPdKqUcHGFdeSpvjVoaTRPPstGif9GBZb5Q56RVw9o69A/go-ipfs-util" - psrouter "gx/ipfs/QmPgUM9uSnDuM8MAF56htHLMLn33KuUqT82PBsF13qyJNk/go-libp2p-pubsub-router" ic "gx/ipfs/QmPvyPwuCgJ7pDmrKDxRtsScJgBaM5h4EpRL2qQJsmXf4n/go-libp2p-crypto" dht "gx/ipfs/QmQHnqaNULV8WeUGgh97o9K3KAW6kWQmDyNf9UuikgnPTe/go-libp2p-kad-dht" dhtopts "gx/ipfs/QmQHnqaNULV8WeUGgh97o9K3KAW6kWQmDyNf9UuikgnPTe/go-libp2p-kad-dht/opts" @@ -45,6 +44,7 @@ import ( mamask "gx/ipfs/QmSMZwvs3n4GBikZ7hKzT17c3bk65FmyZo2JqtJ16swqCv/multiaddr-filter" ma "gx/ipfs/QmT4U94DnD8FRfqr21obWY32HLM5VExccPKMjQHofeYqr9/go-multiaddr" ft "gx/ipfs/QmTJUySFxXjh54zEoFbzQEmGD3yj89XKS3A28y7Nqsn1TC/go-unixfs" + pubsub "gx/ipfs/QmTQdS71yMtTmaSeeGptMDxDBpRcq2kTsJ6X2CPd7riyMs/go-libp2p-pubsub" peer "gx/ipfs/QmTRhk7cgjUf2gfQ3p2M9KPECNZEW9XUrmHcFCgog4cPgB/go-libp2p-peer" connmgr "gx/ipfs/QmTSih5JrkhMH62dp1oGjEwcaC38dxXBgRwTbeQEL4mPcU/go-libp2p-connmgr" pstore "gx/ipfs/QmTTJcDL3gsnGDALjh2fDGg1onGRUdVgNL2hU2WEZcVrMX/go-libp2p-peerstore" @@ -58,12 +58,12 @@ import ( circuit "gx/ipfs/QmVYDvJjiKb9iFEyHxx4i1TJSRBLkQhGb5Fc8XpmDuNCEA/go-libp2p-circuit" ifconnmgr "gx/ipfs/QmWRvjn5BHMLCGkf48Hk1LDc4W72RPA9H59AAVCXmn9esJ/go-libp2p-interface-connmgr" bserv "gx/ipfs/QmWfhv1D18DRSiSm73r4QGcByspzPtxxRTcmHW3axFXZo8/go-blockservice" + psrouter "gx/ipfs/QmWqQVkbYzC8himRvPCWmkfpFuYtHidY7xEKtrrQ3dhySs/go-libp2p-pubsub-router" rhelpers "gx/ipfs/QmX3syBjwRd12qJGaKbFBWFfrBinKsaTC43ry3PsgiXCLK/go-libp2p-routing-helpers" pnet "gx/ipfs/QmY4Q5JC4vxLEi8EpVxJM4rcRryEVtH1zRKVTAm6BKV1pg/go-libp2p-pnet" merkledag "gx/ipfs/QmY8BMUSpCwNiTmFhACmC9Bt1qT63cHP35AoQAus4x14qH/go-merkledag" smux "gx/ipfs/QmY9JXR3FupnYAYJWK9aMr9bCpqWKcToQ1tz8DVGTrHpHw/go-stream-muxer" logging "gx/ipfs/QmZChCsSt8DctjceaL56Eibc29CVQq4dGKRXC5JRZ6Ppae/go-log" - pubsub "gx/ipfs/QmZuwf2M6vSPpHh9KWp59HFq3kAibka77hAbKhxeb7uW3T/go-libp2p-pubsub" record "gx/ipfs/Qma9Eqp16mNHDX1EL73pcxhFfzbyXVcAYtaDd1xdmDRDtL/go-libp2p-record" ds "gx/ipfs/QmaRb5yNXKonhbkpNxNawoydk4N6es6b4fPj19sjEKsh5D/go-datastore" mplex "gx/ipfs/QmaveCPGVaKJU57tBErGCDjzLaqEMZkFygoiv4BhYwWUGc/go-smux-multiplex" @@ -475,14 +475,23 @@ func (n *IpfsNode) startOnlineServicesWithHost(ctx context.Context, host p2phost var service *pubsub.PubSub + var pubsubOptions []pubsub.Option + if cfg.Pubsub.DisableSigning { + pubsubOptions = append(pubsubOptions, pubsub.WithMessageSigning(false)) + } + + if cfg.Pubsub.StrictSignatureVerification { + pubsubOptions = append(pubsubOptions, pubsub.WithStrictSignatureVerification(true)) + } + switch cfg.Pubsub.Router { case "": fallthrough case "floodsub": - service, err = pubsub.NewFloodSub(ctx, host) + service, err = pubsub.NewFloodSub(ctx, host, pubsubOptions...) case "gossipsub": - service, err = pubsub.NewGossipSub(ctx, host) + service, err = pubsub.NewGossipSub(ctx, host, pubsubOptions...) default: err = fmt.Errorf("Unknown pubsub router %s", cfg.Pubsub.Router) diff --git a/core/core_test.go b/core/core_test.go index 1db95b3c8..0d19ebb4f 100644 --- a/core/core_test.go +++ b/core/core_test.go @@ -7,7 +7,7 @@ import ( "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" datastore "gx/ipfs/QmaRb5yNXKonhbkpNxNawoydk4N6es6b4fPj19sjEKsh5D/go-datastore" syncds "gx/ipfs/QmaRb5yNXKonhbkpNxNawoydk4N6es6b4fPj19sjEKsh5D/go-datastore/sync" ) diff --git a/core/coreapi/pubsub.go b/core/coreapi/pubsub.go index 5bde828c4..8baceb334 100644 --- a/core/coreapi/pubsub.go +++ b/core/coreapi/pubsub.go @@ -12,9 +12,9 @@ import ( caopts "github.com/ipfs/go-ipfs/core/coreapi/interface/options" cid "gx/ipfs/QmPSQnBKM9g7BaUcZCvswUJVscQ1ipjmwxN5PXCjkp9EQ7/go-cid" + pubsub "gx/ipfs/QmTQdS71yMtTmaSeeGptMDxDBpRcq2kTsJ6X2CPd7riyMs/go-libp2p-pubsub" peer "gx/ipfs/QmTRhk7cgjUf2gfQ3p2M9KPECNZEW9XUrmHcFCgog4cPgB/go-libp2p-peer" pstore "gx/ipfs/QmTTJcDL3gsnGDALjh2fDGg1onGRUdVgNL2hU2WEZcVrMX/go-libp2p-peerstore" - pubsub "gx/ipfs/QmZuwf2M6vSPpHh9KWp59HFq3kAibka77hAbKhxeb7uW3T/go-libp2p-pubsub" ) type PubSubAPI CoreAPI diff --git a/core/coreapi/unixfs_test.go b/core/coreapi/unixfs_test.go index db1b47804..0977749b1 100644 --- a/core/coreapi/unixfs_test.go +++ b/core/coreapi/unixfs_test.go @@ -23,7 +23,7 @@ import ( "github.com/ipfs/go-ipfs/keystore" "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" mh "gx/ipfs/QmPnFwZ2JXKnXgMw8CdBPxn7FWh6LLdjUjxV1fKHuJnkr8/go-multihash" ci "gx/ipfs/QmPvyPwuCgJ7pDmrKDxRtsScJgBaM5h4EpRL2qQJsmXf4n/go-libp2p-crypto" unixfs "gx/ipfs/QmTJUySFxXjh54zEoFbzQEmGD3yj89XKS3A28y7Nqsn1TC/go-unixfs" diff --git a/core/corehttp/commands.go b/core/corehttp/commands.go index 4b0494d73..57e292c90 100644 --- a/core/corehttp/commands.go +++ b/core/corehttp/commands.go @@ -14,7 +14,7 @@ import ( "github.com/ipfs/go-ipfs/core" corecommands "github.com/ipfs/go-ipfs/core/commands" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" path "gx/ipfs/QmRKuTyCzg7HFBcV1YUhzStroGtJSb8iWgyxfsDCwFhWTS/go-path" cmds "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds" cmdsHttp "gx/ipfs/QmRRovo1DE6i5cMjCbf19mQCSuszF6SKwdZNUMS7MtBnH1/go-ipfs-cmds/http" diff --git a/core/corehttp/gateway_test.go b/core/corehttp/gateway_test.go index d589646e4..6c7b33057 100644 --- a/core/corehttp/gateway_test.go +++ b/core/corehttp/gateway_test.go @@ -18,7 +18,7 @@ import ( nsopts "github.com/ipfs/go-ipfs/namesys/opts" repo "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" ci "gx/ipfs/QmPvyPwuCgJ7pDmrKDxRtsScJgBaM5h4EpRL2qQJsmXf4n/go-libp2p-crypto" path "gx/ipfs/QmRKuTyCzg7HFBcV1YUhzStroGtJSb8iWgyxfsDCwFhWTS/go-path" id "gx/ipfs/QmUDTcnDp2WssbmiDLC6aYurUeyt7QeRakHUQMxA2mZ5iB/go-libp2p/p2p/protocol/identify" diff --git a/core/coreunix/add_test.go b/core/coreunix/add_test.go index 163a94afe..06bfdfc62 100644 --- a/core/coreunix/add_test.go +++ b/core/coreunix/add_test.go @@ -15,7 +15,7 @@ import ( "github.com/ipfs/go-ipfs/pin/gc" "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" pi "gx/ipfs/QmPG32VXR5jmpo9q8R9FNdR4Ae97Ky9CiZE6SctJLUB79H/go-ipfs-posinfo" cid "gx/ipfs/QmPSQnBKM9g7BaUcZCvswUJVscQ1ipjmwxN5PXCjkp9EQ7/go-cid" blocks "gx/ipfs/QmRcHuYzAyswytBuMF78rj3LTChYszomRFXNg4685ZN1WM/go-block-format" diff --git a/core/mock/mock.go b/core/mock/mock.go index a41e24e68..f5f838b83 100644 --- a/core/mock/mock.go +++ b/core/mock/mock.go @@ -7,7 +7,7 @@ import ( core "github.com/ipfs/go-ipfs/core" "github.com/ipfs/go-ipfs/repo" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" peer "gx/ipfs/QmTRhk7cgjUf2gfQ3p2M9KPECNZEW9XUrmHcFCgog4cPgB/go-libp2p-peer" pstore "gx/ipfs/QmTTJcDL3gsnGDALjh2fDGg1onGRUdVgNL2hU2WEZcVrMX/go-libp2p-peerstore" libp2p "gx/ipfs/QmUDTcnDp2WssbmiDLC6aYurUeyt7QeRakHUQMxA2mZ5iB/go-libp2p" diff --git a/package.json b/package.json index 73dc9b86e..f89a272c8 100644 --- a/package.json +++ b/package.json @@ -47,9 +47,9 @@ "version": "0.1.3" }, { - "hash": "QmPwecoMB9jN9DosznNqcApK63PnrEmMduxp1mn5nqS7Pq", + "hash": "QmV1DPm5F46LvQMxCVPhu35zHgZEeMvyVtpxjb5TwfGiua", "name": "iptb", - "version": "1.3.18" + "version": "1.3.19" }, { "hash": "QmPnFwZ2JXKnXgMw8CdBPxn7FWh6LLdjUjxV1fKHuJnkr8", @@ -458,9 +458,9 @@ }, { "author": "stebalien", - "hash": "QmPgUM9uSnDuM8MAF56htHLMLn33KuUqT82PBsF13qyJNk", + "hash": "QmWqQVkbYzC8himRvPCWmkfpFuYtHidY7xEKtrrQ3dhySs", "name": "go-libp2p-pubsub-router", - "version": "0.4.14" + "version": "0.5.1" }, { "author": "Stebalien", @@ -518,9 +518,9 @@ }, { "author": "magik6k", - "hash": "QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6", + "hash": "QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR", "name": "go-ipfs-config", - "version": "0.2.15" + "version": "0.2.16" }, { "author": "why", @@ -583,9 +583,9 @@ }, { "author": "whyrusleeping", - "hash": "QmZuwf2M6vSPpHh9KWp59HFq3kAibka77hAbKhxeb7uW3T", + "hash": "QmTQdS71yMtTmaSeeGptMDxDBpRcq2kTsJ6X2CPd7riyMs", "name": "go-libp2p-pubsub", - "version": "0.10.2" + "version": "0.11.1" } ], "gxVersion": "0.10.0", diff --git a/repo/fsrepo/config_test.go b/repo/fsrepo/config_test.go index 4fe3ae0ae..7cbf9c6fe 100644 --- a/repo/fsrepo/config_test.go +++ b/repo/fsrepo/config_test.go @@ -7,7 +7,7 @@ import ( "reflect" "testing" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" ) // note: to test sorting of the mountpoints in the disk spec they are diff --git a/repo/fsrepo/fsrepo.go b/repo/fsrepo/fsrepo.go index 4f0f376fe..c26332e0f 100644 --- a/repo/fsrepo/fsrepo.go +++ b/repo/fsrepo/fsrepo.go @@ -18,8 +18,8 @@ import ( mfsr "github.com/ipfs/go-ipfs/repo/fsrepo/migrations" dir "github.com/ipfs/go-ipfs/thirdparty/dir" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" - serialize "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config/serialize" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" + serialize "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config/serialize" util "gx/ipfs/QmPdKqUcHGFdeSpvjVoaTRPPstGif9GBZb5Q56RVw9o69A/go-ipfs-util" measure "gx/ipfs/QmQS6UXi1R87y9nEgnCNmG6YfMzvBSLir7xUheMNFP3hoe/go-ds-measure" ma "gx/ipfs/QmT4U94DnD8FRfqr21obWY32HLM5VExccPKMjQHofeYqr9/go-multiaddr" diff --git a/repo/fsrepo/fsrepo_test.go b/repo/fsrepo/fsrepo_test.go index b21f3bc41..77399f2a0 100644 --- a/repo/fsrepo/fsrepo_test.go +++ b/repo/fsrepo/fsrepo_test.go @@ -9,7 +9,7 @@ import ( "github.com/ipfs/go-ipfs/thirdparty/assert" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" datastore "gx/ipfs/QmaRb5yNXKonhbkpNxNawoydk4N6es6b4fPj19sjEKsh5D/go-datastore" ) diff --git a/repo/fsrepo/misc.go b/repo/fsrepo/misc.go index 5b9776c3d..f3799368d 100644 --- a/repo/fsrepo/misc.go +++ b/repo/fsrepo/misc.go @@ -3,7 +3,7 @@ package fsrepo import ( "os" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" homedir "gx/ipfs/QmdcULN1WCzgoQmcCaUAmEhwcxHYsDrbZ2LvRJKCL8dMrK/go-homedir" ) diff --git a/repo/mock.go b/repo/mock.go index ab63ffe89..acf91ec29 100644 --- a/repo/mock.go +++ b/repo/mock.go @@ -6,7 +6,7 @@ import ( filestore "github.com/ipfs/go-ipfs/filestore" keystore "github.com/ipfs/go-ipfs/keystore" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" ma "gx/ipfs/QmT4U94DnD8FRfqr21obWY32HLM5VExccPKMjQHofeYqr9/go-multiaddr" ) diff --git a/repo/repo.go b/repo/repo.go index f1ae6fdde..7912ee9f0 100644 --- a/repo/repo.go +++ b/repo/repo.go @@ -7,7 +7,7 @@ import ( filestore "github.com/ipfs/go-ipfs/filestore" keystore "github.com/ipfs/go-ipfs/keystore" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" ma "gx/ipfs/QmT4U94DnD8FRfqr21obWY32HLM5VExccPKMjQHofeYqr9/go-multiaddr" ds "gx/ipfs/QmaRb5yNXKonhbkpNxNawoydk4N6es6b4fPj19sjEKsh5D/go-datastore" ) diff --git a/test/bench/bench_cli_ipfs_add/main.go b/test/bench/bench_cli_ipfs_add/main.go index d426d1b7c..2d9e960fd 100644 --- a/test/bench/bench_cli_ipfs_add/main.go +++ b/test/bench/bench_cli_ipfs_add/main.go @@ -12,7 +12,7 @@ import ( "github.com/ipfs/go-ipfs/thirdparty/unit" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" random "gx/ipfs/QmSJ9n2s9NUoA9D849W5jj5SJ94nMcZpj1jCgQJieiNqSt/go-random" ) diff --git a/test/bench/offline_add/main.go b/test/bench/offline_add/main.go index d79b6977d..0ceb9f9b0 100644 --- a/test/bench/offline_add/main.go +++ b/test/bench/offline_add/main.go @@ -11,7 +11,7 @@ import ( "github.com/ipfs/go-ipfs/thirdparty/unit" - config "gx/ipfs/QmNUhkTWN7iynJZTj1RcTsQDSRGGkh87zMo9ELypxhY8Y6/go-ipfs-config" + config "gx/ipfs/QmPEpj17FDRpc7K1aArKZp3RsHtzRMKykeK9GVgn4WQGPR/go-ipfs-config" random "gx/ipfs/QmSJ9n2s9NUoA9D849W5jj5SJ94nMcZpj1jCgQJieiNqSt/go-random" ) diff --git a/test/sharness/t0180-pubsub.sh b/test/sharness/t0180-pubsub.sh index 16b5b0085..bf3586bc9 100755 --- a/test/sharness/t0180-pubsub.sh +++ b/test/sharness/t0180-pubsub.sh @@ -10,85 +10,145 @@ test_expect_success 'init iptb' ' iptb init -n $NUM_NODES --bootstrap=none --port=0 ' +run_pubsub_tests() { + test_expect_success 'peer ids' ' + PEERID_0=$(iptb get id 0) && + PEERID_2=$(iptb get id 2) + ' + + # ipfs pubsub sub + test_expect_success 'pubsub' ' + echo "testOK" > expected && + touch empty && + mkfifo wait || + test_fsh echo init fail + + # ipfs pubsub sub is long-running so we need to start it in the background and + # wait put its output somewhere where we can access it + ( + ipfsi 0 pubsub sub --enc=ndpayload testTopic | if read line; then + echo $line > actual && + echo > wait + fi + ) & + ' + + test_expect_success "wait until ipfs pubsub sub is ready to do work" ' + go-sleep 500ms + ' + + test_expect_success "can see peer subscribed to testTopic" ' + ipfsi 1 pubsub peers testTopic > peers_out + ' + + test_expect_success "output looks good" ' + echo $PEERID_0 > peers_exp && + test_cmp peers_exp peers_out + ' + + test_expect_success "publish something" ' + ipfsi 1 pubsub pub testTopic "testOK" &> pubErr + ' + + test_expect_success "wait until echo > wait executed" ' + cat wait && + test_cmp pubErr empty && + test_cmp expected actual + ' + + test_expect_success "wait for another pubsub message" ' + echo "testOK2" > expected && + mkfifo wait2 || + test_fsh echo init fail + + # ipfs pubsub sub is long-running so we need to start it in the background and + # wait put its output somewhere where we can access it + ( + ipfsi 2 pubsub sub --enc=ndpayload testTopic | if read line; then + echo $line > actual && + echo > wait2 + fi + ) & + ' + + test_expect_success "wait until ipfs pubsub sub is ready to do work" ' + go-sleep 500ms + ' + + test_expect_success "publish something" ' + echo "testOK2" | ipfsi 3 pubsub pub testTopic &> pubErr + ' + + test_expect_success "wait until echo > wait executed" ' + echo "testOK2" > expected && + cat wait2 && + test_cmp pubErr empty && + test_cmp expected actual + ' + + test_expect_success 'cleanup fifos' ' + rm -f wait wait2 + ' + +} + +# Normal tests + +startup_cluster $NUM_NODES --enable-pubsub-experiment +run_pubsub_tests +test_expect_success 'stop iptb' ' + iptb stop +' + +# Test with some nodes not signing messages. + +test_expect_success 'disable signing on node 1' ' + ipfsi 1 config --json Pubsub.DisableSigning true +' + +startup_cluster $NUM_NODES --enable-pubsub-experiment +run_pubsub_tests +test_expect_success 'stop iptb' ' + iptb stop +' + +# Test strict message verification. + +test_expect_success 'enable strict signature verification on node 4' ' + ipfsi 4 config --json Pubsub.StrictSignatureVerification true +' + startup_cluster $NUM_NODES --enable-pubsub-experiment -test_expect_success 'peer ids' ' - PEERID_0=$(iptb get id 0) && - PEERID_2=$(iptb get id 2) +test_expect_success 'set node 4 to listen on testTopic' ' + ipfsi 4 pubsub sub --enc=ndpayload testTopic > node4_actual & ' -# ipfs pubsub sub -test_expect_success 'pubsub' ' - echo "testOK" > expected && - touch empty && - mkfifo wait || - test_fsh echo init fail - - # ipfs pubsub sub is long-running so we need to start it in the background and - # wait put its output somewhere where we can access it - ( - ipfsi 0 pubsub sub --enc=ndpayload testTopic | if read line; then - echo $line > actual && - echo > wait - fi - ) & -' - -test_expect_success "wait until ipfs pubsub sub is ready to do work" ' - go-sleep 500ms -' - -test_expect_success "can see peer subscribed to testTopic" ' - ipfsi 1 pubsub peers testTopic > peers_out -' - -test_expect_success "output looks good" ' - echo $PEERID_0 > peers_exp && - test_cmp peers_exp peers_out -' - -test_expect_success "publish something" ' - ipfsi 1 pubsub pub testTopic "testOK" &> pubErr -' - -test_expect_success "wait until echo > wait executed" ' - cat wait && - test_cmp pubErr empty && - test_cmp expected actual -' - -test_expect_success "wait for another pubsub message" ' - echo "testOK2" > expected && - mkfifo wait2 || - test_fsh echo init fail - - # ipfs pubsub sub is long-running so we need to start it in the background and - # wait put its output somewhere where we can access it - ( - ipfsi 2 pubsub sub --enc=ndpayload testTopic | if read line; then - echo $line > actual && - echo > wait2 - fi - ) & -' - -test_expect_success "wait until ipfs pubsub sub is ready to do work" ' - go-sleep 500ms -' - -test_expect_success "publish something" ' - echo "testOK2" | ipfsi 1 pubsub pub testTopic &> pubErr -' - -test_expect_success "wait until echo > wait executed" ' - echo "testOK2" > expected && - cat wait2 && - test_cmp pubErr empty && - test_cmp expected actual -' +run_pubsub_tests test_expect_success 'stop iptb' ' iptb stop ' +test_expect_success 'node 4 only got the signed message' ' + echo "testOK2" > node4_expected && + test_cmp node4_actual node4_expected +' + +# Test all nodes signing with strict verification + +test_expect_success 're-enable signing on node 1' ' + ipfsi 1 config --json Pubsub.DisableSigning false +' + +test_expect_success 'enable strict signature verification on all nodes' ' + iptb for-each ipfs config --json Pubsub.StrictSignatureVerification true +' + +startup_cluster $NUM_NODES --enable-pubsub-experiment +run_pubsub_tests +test_expect_success 'stop iptb' ' + iptb stop +' + test_done