aboutsummaryrefslogtreecommitdiffstats
path: root/whisper/main.go
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-12-08 19:43:33 +0800
committerobscuren <geffobscura@gmail.com>2014-12-08 19:43:33 +0800
commitebe2d9d872c5482e02508f1d3e9c3a56e8a41d44 (patch)
treec26c4e780226851bc699ca182bcb2f4d5da3dc0e /whisper/main.go
parentf06543fd066e11ac5c36f3eba4f1f82a7a1aefb8 (diff)
downloadgo-tangerine-ebe2d9d872c5482e02508f1d3e9c3a56e8a41d44.tar.gz
go-tangerine-ebe2d9d872c5482e02508f1d3e9c3a56e8a41d44.tar.zst
go-tangerine-ebe2d9d872c5482e02508f1d3e9c3a56e8a41d44.zip
First draft of Whisper messages relaying
Diffstat (limited to 'whisper/main.go')
-rw-r--r--whisper/main.go46
1 files changed, 46 insertions, 0 deletions
diff --git a/whisper/main.go b/whisper/main.go
new file mode 100644
index 000000000..3868f604f
--- /dev/null
+++ b/whisper/main.go
@@ -0,0 +1,46 @@
+// +build none
+
+package main
+
+import (
+ "fmt"
+ "log"
+ "net"
+ "os"
+
+ "github.com/ethereum/go-ethereum/logger"
+ "github.com/ethereum/go-ethereum/p2p"
+ "github.com/ethereum/go-ethereum/whisper"
+ "github.com/obscuren/secp256k1-go"
+)
+
+func main() {
+ logger.AddLogSystem(logger.NewStdLogSystem(os.Stdout, log.LstdFlags, logger.InfoLevel))
+
+ pub, sec := secp256k1.GenerateKeyPair()
+
+ whisper := whisper.New(pub, sec)
+
+ srv := p2p.Server{
+ MaxPeers: 10,
+ Identity: p2p.NewSimpleClientIdentity("whisper-go", "1.0", "", string(pub)),
+ ListenAddr: ":30303",
+ NAT: p2p.UPNP(),
+
+ Protocols: []p2p.Protocol{whisper.Protocol()},
+ }
+ if err := srv.Start(); err != nil {
+ fmt.Println("could not start server:", err)
+ os.Exit(1)
+ }
+
+ // add seed peers
+ seed, err := net.ResolveTCPAddr("tcp", "poc-7.ethdev.com:30300")
+ if err != nil {
+ fmt.Println("couldn't resolve:", err)
+ os.Exit(1)
+ }
+ srv.SuggestPeer(seed.IP, seed.Port, nil)
+
+ select {}
+}