aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/utils/flags.go
diff options
context:
space:
mode:
authorBas van Kervel <bas@ethdev.com>2015-06-12 15:32:37 +0800
committerBas van Kervel <bas@ethdev.com>2015-06-12 15:32:37 +0800
commit359e6414e50df415caa1d4411224c6d48b6cb798 (patch)
tree2bbe96226f778e0b5d06dd32408bf6646fcf829a /cmd/utils/flags.go
parent22080e1fdd8eafd6201bb5a06ac19859bcc6b432 (diff)
downloadgo-tangerine-359e6414e50df415caa1d4411224c6d48b6cb798.tar.gz
go-tangerine-359e6414e50df415caa1d4411224c6d48b6cb798.tar.zst
go-tangerine-359e6414e50df415caa1d4411224c6d48b6cb798.zip
fixed windows ipc path issue
Diffstat (limited to 'cmd/utils/flags.go')
-rw-r--r--cmd/utils/flags.go22
1 files changed, 21 insertions, 1 deletions
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index 80f21d50a..3626c36f2 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -385,9 +385,29 @@ func MakeAccountManager(ctx *cli.Context) *accounts.Manager {
return accounts.NewManager(ks)
}
+func IpcSocketPath(ctx *cli.Context) (ipcpath string) {
+
+ if common.IsWindows() {
+ ipcpath = common.DefaultIpcPath()
+ if ipcpath != ctx.GlobalString(IPCPathFlag.Name) {
+ ipcpath = ctx.GlobalString(IPCPathFlag.Name)
+ }
+ } else {
+ ipcpath = common.DefaultIpcPath()
+ if ctx.GlobalString(IPCPathFlag.Name) != common.DefaultIpcPath() {
+ ipcpath = ctx.GlobalString(IPCPathFlag.Name)
+ } else if ctx.GlobalString(DataDirFlag.Name) != "" &&
+ ctx.GlobalString(DataDirFlag.Name) != common.DefaultDataDir() {
+ ipcpath = filepath.Join(ctx.GlobalString(DataDirFlag.Name), "geth.ipc")
+ }
+ }
+
+ return
+}
+
func StartIPC(eth *eth.Ethereum, ctx *cli.Context) error {
config := comms.IpcConfig{
- Endpoint: filepath.Join(ctx.GlobalString(DataDirFlag.Name), "geth.ipc"),
+ Endpoint: IpcSocketPath(ctx),
}
xeth := xeth.New(eth, nil)