From 706ebe8d24ba98a4ef11fe465572cb54244102cb Mon Sep 17 00:00:00 2001 From: Matt Bell Date: Tue, 18 Nov 2014 22:17:02 -0800 Subject: [PATCH] daemon: Set allowed API origins in API_ORIGIN environment variable --- cmd/ipfs/daemon.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cmd/ipfs/daemon.go b/cmd/ipfs/daemon.go index 6d5e9fc77..66d733e7c 100644 --- a/cmd/ipfs/daemon.go +++ b/cmd/ipfs/daemon.go @@ -3,6 +3,7 @@ package main import ( "fmt" "net/http" + "os" manners "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/braintree/manners" ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr" @@ -23,6 +24,7 @@ const ( ipnsMountKwd = "mount-ipns" // apiAddrKwd = "address-api" // swarmAddrKwd = "address-swarm" + originEnvKey = "API_ORIGIN" ) var daemonCmd = &cmds.Command{ @@ -144,9 +146,11 @@ func listenAndServeAPI(node *core.IpfsNode, req cmds.Request, addr ma.Multiaddr) return err } + origin := os.Getenv(originEnvKey) + server := manners.NewServer() mux := http.NewServeMux() - cmdHandler := cmdsHttp.NewHandler(*req.Context(), commands.Root) + cmdHandler := cmdsHttp.NewHandler(*req.Context(), commands.Root, origin) mux.Handle(cmdsHttp.ApiPath+"/", cmdHandler) ifpsHandler := &ipfsHandler{node}