mirror of
https://github.com/jwinterm/grin-wallet.git
synced 2026-10-17 07:11:36 +02:00
Merge pull request #1 from mimblewimble/master
Trying to merge master 9 commits into my branch. All checks passed.
This commit is contained in:
+6
-6
@@ -43,12 +43,12 @@ grin_wallet_libwallet = { path = "../libwallet", version = "5.4.0-alpha.1" }
|
||||
##### Grin Imports
|
||||
|
||||
# For Release
|
||||
grin_core = "5.3.3"
|
||||
grin_keychain = "5.3.3"
|
||||
grin_chain = "5.3.3"
|
||||
grin_util = "5.3.3"
|
||||
grin_api = "5.3.3"
|
||||
grin_store = "5.3.3"
|
||||
grin_core = "5.4.0"
|
||||
grin_keychain = "5.4.0"
|
||||
grin_chain = "5.4.0"
|
||||
grin_util = "5.4.0"
|
||||
grin_api = "5.4.0"
|
||||
grin_store = "5.4.0"
|
||||
|
||||
# For beta release
|
||||
|
||||
|
||||
@@ -200,9 +200,10 @@ impl HttpSlateSender {
|
||||
let client = if !self.use_socks {
|
||||
Client::new()
|
||||
} else {
|
||||
Client::with_socks_proxy(
|
||||
Client::with_proxy(
|
||||
self.socks_proxy_addr
|
||||
.ok_or_else(|| ClientError::Internal("No socks proxy address set".into()))?,
|
||||
"socks5h://",
|
||||
)
|
||||
}
|
||||
.map_err(|_| ClientError::Internal("Unable to create http client".into()))?;
|
||||
|
||||
@@ -696,6 +696,16 @@ where
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn delete_tx_log_entry(&mut self, tx_id: u32, parent_id: &Identifier) -> Result<(), Error> {
|
||||
let tx_log_key = to_key_u64(
|
||||
TX_LOG_ENTRY_PREFIX,
|
||||
&mut parent_id.to_bytes().to_vec(),
|
||||
tx_id as u64,
|
||||
);
|
||||
self.db.borrow().as_ref().unwrap().delete(&tx_log_key)?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn save_acct_path(&mut self, mapping: AcctPathMapping) -> Result<(), Error> {
|
||||
let acct_key = to_key(
|
||||
ACCOUNT_PATH_MAPPING_PREFIX,
|
||||
|
||||
@@ -65,11 +65,11 @@ impl Client {
|
||||
Self::build(None)
|
||||
}
|
||||
|
||||
pub fn with_socks_proxy(socks_proxy_addr: SocketAddr) -> Result<Self, Error> {
|
||||
Self::build(Some(socks_proxy_addr))
|
||||
pub fn with_proxy(socks_proxy_addr: SocketAddr, scheme: &'static str) -> Result<Self, Error> {
|
||||
Self::build(Some((socks_proxy_addr, scheme)))
|
||||
}
|
||||
|
||||
fn build(socks_proxy_addr: Option<SocketAddr>) -> Result<Self, Error> {
|
||||
fn build(proxy: Option<(SocketAddr, &str)>) -> Result<Self, Error> {
|
||||
let mut headers = HeaderMap::new();
|
||||
headers.insert(USER_AGENT, HeaderValue::from_static("grin-client"));
|
||||
headers.insert(ACCEPT, HeaderValue::from_static("application/json"));
|
||||
@@ -80,8 +80,9 @@ impl Client {
|
||||
.use_rustls_tls()
|
||||
.default_headers(headers);
|
||||
|
||||
if let Some(s) = socks_proxy_addr {
|
||||
let proxy = Proxy::all(&format!("socks5h://{}:{}", s.ip(), s.port()))
|
||||
if let Some(p) = proxy {
|
||||
let (addr, scheme) = p;
|
||||
let proxy = Proxy::all(&format!("{}{}:{}", scheme, addr.ip(), addr.port()))
|
||||
.map_err(|e| Error::Internal(format!("Unable to create proxy: {}", e)))?;
|
||||
builder = builder.proxy(proxy);
|
||||
}
|
||||
|
||||
@@ -15,17 +15,17 @@
|
||||
//! Client functions, implementations of the NodeClient trait
|
||||
|
||||
use crate::api::{self, LocatedTxKernel, OutputListing, OutputPrintable};
|
||||
use crate::client_utils::{Client, RUNTIME};
|
||||
use crate::core::core::{Transaction, TxKernel};
|
||||
use crate::libwallet;
|
||||
use crate::libwallet::{NodeClient, NodeVersionInfo};
|
||||
use crate::util::secp::pedersen;
|
||||
use crate::util::ToHex;
|
||||
use futures::stream::FuturesUnordered;
|
||||
use futures::TryStreamExt;
|
||||
use std::collections::HashMap;
|
||||
use std::env;
|
||||
|
||||
use crate::client_utils::{Client, RUNTIME};
|
||||
use crate::libwallet;
|
||||
use crate::util::secp::pedersen;
|
||||
use crate::util::ToHex;
|
||||
use std::net::SocketAddr;
|
||||
|
||||
use super::resp_types::*;
|
||||
use crate::client_utils::json_rpc::*;
|
||||
@@ -46,8 +46,22 @@ impl HTTPNodeClient {
|
||||
node_url: &str,
|
||||
node_api_secret: Option<String>,
|
||||
) -> Result<HTTPNodeClient, libwallet::Error> {
|
||||
Self::new_proxy(node_url, node_api_secret, None)
|
||||
}
|
||||
|
||||
/// Create a new client with proxy
|
||||
pub fn new_proxy(
|
||||
node_url: &str,
|
||||
node_api_secret: Option<String>,
|
||||
proxy: Option<(SocketAddr, &'static str)>,
|
||||
) -> Result<HTTPNodeClient, libwallet::Error> {
|
||||
let client = if let Some((a, s)) = proxy {
|
||||
Client::with_proxy(a, s)
|
||||
} else {
|
||||
Client::new()
|
||||
};
|
||||
Ok(HTTPNodeClient {
|
||||
client: Client::new().map_err(|_| libwallet::Error::Node)?,
|
||||
client: client.map_err(|_| libwallet::Error::Node)?,
|
||||
node_url: node_url.to_owned(),
|
||||
node_api_secret: node_api_secret,
|
||||
node_version_info: None,
|
||||
|
||||
Reference in New Issue
Block a user