From 1ecf99bd0f332247df3a8976ae94e1b63b9d8a76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Szil=C3=A1gyi?= Date: Fri, 27 Jan 2017 11:38:35 +0200 Subject: [PATCH] accounts/usbwallet: skip support on iOS altogether --- accounts/usbwallet/ledger.go | 2 ++ accounts/usbwallet/ledger_test.go | 2 ++ accounts/usbwallet/{usb.go => usbwallet.go} | 2 ++ accounts/usbwallet/usbwallet_ios.go | 38 +++++++++++++++++++++ 4 files changed, 44 insertions(+) rename accounts/usbwallet/{usb.go => usbwallet.go} (98%) create mode 100644 accounts/usbwallet/usbwallet_ios.go diff --git a/accounts/usbwallet/ledger.go b/accounts/usbwallet/ledger.go index 55b313df9d..8f502c58ef 100644 --- a/accounts/usbwallet/ledger.go +++ b/accounts/usbwallet/ledger.go @@ -18,6 +18,8 @@ // wallets. The wire protocol spec can be found in the Ledger Blue GitHub repo: // https://raw.githubusercontent.com/LedgerHQ/blue-app-eth/master/doc/ethapp.asc +// +build !ios + package usbwallet import ( diff --git a/accounts/usbwallet/ledger_test.go b/accounts/usbwallet/ledger_test.go index aeab2f0f02..16a1e0b3fd 100644 --- a/accounts/usbwallet/ledger_test.go +++ b/accounts/usbwallet/ledger_test.go @@ -14,6 +14,8 @@ // You should have received a copy of the GNU Lesser General Public License // along with the go-ethereum library. If not, see . +// +build !ios + package usbwallet /* diff --git a/accounts/usbwallet/usb.go b/accounts/usbwallet/usbwallet.go similarity index 98% rename from accounts/usbwallet/usb.go rename to accounts/usbwallet/usbwallet.go index 550f05ba65..3989f3d024 100644 --- a/accounts/usbwallet/usb.go +++ b/accounts/usbwallet/usbwallet.go @@ -14,6 +14,8 @@ // You should have received a copy of the GNU Lesser General Public License // along with the go-ethereum library. If not, see . +// +build !ios + // Package usbwallet implements support for USB hardware wallets. package usbwallet diff --git a/accounts/usbwallet/usbwallet_ios.go b/accounts/usbwallet/usbwallet_ios.go new file mode 100644 index 0000000000..17d3429031 --- /dev/null +++ b/accounts/usbwallet/usbwallet_ios.go @@ -0,0 +1,38 @@ +// Copyright 2017 The go-ethereum Authors +// This file is part of the go-ethereum library. +// +// The go-ethereum library is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// The go-ethereum library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with the go-ethereum library. If not, see . + +// This file contains the implementation for interacting with the Ledger hardware +// wallets. The wire protocol spec can be found in the Ledger Blue GitHub repo: +// https://raw.githubusercontent.com/LedgerHQ/blue-app-eth/master/doc/ethapp.asc + +// +build ios + +package usbwallet + +import ( + "errors" + + "github.com/ethereum/go-ethereum/accounts" +) + +// Here be dragons! There is no USB support on iOS. + +// ErrIOSNotSupported is returned for all USB hardware backends on iOS. +var ErrIOSNotSupported = errors.New("no USB support on iOS") + +func NewLedgerHub() (accounts.Backend, error) { + return nil, ErrIOSNotSupported +}