45 Commits

Author SHA1 Message Date
Kevin Heifner ad886bc96f GH-842 Change all plugin startup and shutdown log messages to debug 2024-10-16 19:21:10 -05:00
Kevin Heifner 079c650f9a Merge remote-tracking branch 'origin/main' into GH-1062-time-limits 2023-05-15 09:27:10 -05:00
Kevin Heifner cb1b52de82 GH-1062 Remove deadline since we no longer want to interrupt json creation on the http thread 2023-05-05 13:28:02 -05:00
Huang-Ming Huang 6fb23ca8e4 support multiple http endpoints 2023-05-05 09:31:05 -05:00
Kevin Heifner 73da55059c Rename general queue to read_write queue and read_only_safe queue to read_only queue. 2023-03-25 10:47:38 -05:00
Lin Huang 8997ae2f89 make exec_queue parameter explicit in all APIs 2023-03-14 11:58:55 -04:00
greg7mdp 4ad4135fc2 Update http_pluging API definitions with lambdas taking rvalues
as specified in url_handler.
2023-03-03 10:00:00 -05:00
greg7mdp 7f0b67f6b8 call register_plugin() as a static member, so that static variable initializers don't create an application instance before the program is started. 2023-01-31 16:53:43 -05:00
greg7mdp fb12fe627f Update appbase/plugins to support multiple instances/exe 2023-01-12 18:05:16 -05:00
Kevin Heifner b063ddcfc9 GH-230 Use very large deadline for keosd http response time 2022-12-08 10:02:27 -06:00
Kevin Heifner 06ac1bcc8c Use http-max-response-time for limit on complete run of http call including time for main thread and http thread. Puts limit on complete execution including conversion to JSON. 2022-09-02 10:41:30 -05:00
Kevin Heifner 1913fe1528 Rename no_params_required to no_params 2022-05-09 17:47:41 -04:00
allenhan2 7d26529372 Merge pull request #9033 from EOSIO/http_400_params_call
Adding message body check (400) for http calls
2022-05-07 16:47:43 -04:00
Bart Wyatt 2a6f974b5d remove the incorrect license header from the code base
resolves EOSIO/eos#7684
2019-08-13 18:01:22 -04:00
Kevin Heifner 97b385cf03 Move json::to_string to http thread pool 2019-03-07 15:05:35 -05:00
Jeeyong Um 9b036b432c Update LICENSE path 2018-12-02 19:54:13 +09:00
Kevin Heifner ff1117f96d Add FC_LOG_AND_RETHROW to log errors in plugin init 2018-06-18 11:39:50 -05:00
Paul Calabrese f4af59457a Merge branch 'master' into remove-default-key 2018-06-14 19:46:21 -05:00
Paul Calabrese 88754e9563 Rename cleos command to remove_key. Add password to command 2018-06-14 16:45:08 -05:00
Paul Calabrese 6e9a9d996b Remove default key from keosd 2018-06-14 14:58:29 -05:00
Bart Wyatt 62b99b5cf9 Uniform and extended security warnings
- added security warning to producer API plugin
- made existing checks uniform and more robust
- added security error for wallet when its exposed to the LAN and unencrypted

EOSIO/eos#3598 EOSIO/eos#3599
2018-06-13 16:01:35 -04:00
Bart Wyatt f2e28c0a83 Merge remote-tracking branch 'origin/master' into feature/2586-oob-block-signing 2018-05-31 12:11:23 -04:00
Bart Wyatt 165065a550 EOSIO/eos#2586
- new Beast based simple http_client in fc with support for TLS and non-TLS connections (only supports synchronous POST right now)
 - added "Connection: close" to websocketpps http request handling as "keep-alive" is the default for HTTP/1.1 and it was confusing Beast
 - add "sign_digest" endpoint to wallet_(api_)?plugin
 - add support for signature-providers in producer_plugin which is a superset of the now deprecated "private-key" that can also suppot OOB signing methods like KEOSD
 - add support for manually specifying root-certs
2018-05-30 23:05:04 -04:00
Matt Witherspoon 4b10390e3b Require wallet password when revealing private keys
In addition to being unlocked, wallets now require their password to reveal their private keys.

RPC endpoint changes:
/v1/wallet/get_public_keys -- No change. This endpoint prints all public keys from all unlocked wallets.
/v1/wallet/list_keys -- This endpoint now requires two strings: the name of an unlocked wallet and its password. It will then reveal the public and private key pairs of that wallet. Be aware this means a slight change in behavior in that it is now impossible to query private keys from all unlocked wallets.

cleos changes:
wallet keys -- This command has been changed to print all public keys from unlocked wallets (corresponds to the get_public_keys endpoint). Be aware that there is a change in behavior due to different behavior in how get_public_keys works vs previous behavior: if there is no open wallet or all wallets are locked, wallet keys will now return a "no available wallet" or "locked wallet" error. Previously an empty list would be returned.
wallet private_keys -- This is a new command that maps to the list_keys endpoint. It will take the wallet name and password as arguments before printing the public/private key pairs.
2018-05-30 18:51:31 -04:00
Kevin Heifner 9b4b01fd9f Add usage of new common http exception handler 2018-05-22 11:03:16 -04:00
Matt Witherspoon a10ca3c7ff Add creation of new keys via the wallet
This change adds the concept of a wallet being asked to create a new private/public key pair. It is a precursor to hardware key support in the wallet because hardware key stores don’t always have the concept of “importing” a key. It’s also beneficial as it gives an alternative means to `cleos create key` which if not careful can cause a private key to easily weasel its way in to a user’s shell history.
2018-05-12 12:37:12 -04:00
Andrianto Lie ff2c6f862f Initial implementation to modify RPC Error Message Structure and eosioc display of it 2018-02-26 17:49:21 +08:00
Jonathan Giszczak 6d55b5034b Self-registering plugins in eosiod.
main.cpp gets shorter, CMakeLists.txt gets longer, door opens for
conditional compilation of plugins.
2018-01-12 15:43:02 -06:00
Kevin Heifner 46a83adb1d Merge pull request #828 from brianjohnson5972/186-update-endpoint-config
STAT-186 Update Endpoint Config

(reapplied on noon branch)
2017-12-08 14:04:20 -05:00
Daniel Larimer 353800eba8 Full Build Works on OS X
- rename eosd to eosiod
- rename eosc to eosioc
- rename eos-walletd to eosio-walletd
- fix wallet plugin
- fix producer plugin
- eosiod will now produce blocks every 500ms
- rename eos_chain to eosio_chain
- move include/eos to include/eosio for various libraries
2017-11-19 15:34:56 -05:00
Bart Wyatt 1915e4c2d5 re-include headers from the new eosio path 2017-11-13 14:20:17 -05:00
Kevin Heifner 94e2fe7662 Committer's Note: this was pruned to changes in the programs and plugins sub-directories
CamelCase types and names converted to under_score names and types. #624
2017-11-13 11:13:43 -05:00
Pravin 7ab2429afd Renamed eos namespace to eosio (STAT-136) 2017-11-07 13:29:58 -05:00
Jonathan Giszczak 001c867166 Revise wallet API to return 200 or 201 as appropriate. 2017-11-02 13:50:39 -05:00
Jonathan Giszczak 3b88806272 Interim commit. Does not build. 2017-11-02 13:50:39 -05:00
Jonathan Giszczak 929e24478d Revise API error return values to be valid JSON. 2017-11-02 13:50:39 -05:00
Andrianto Lie 624f6d1844 Add license to files inside programs and plugins folders 2017-10-12 14:42:47 +08:00
Kevin Heifner db283dd3c6 Remove localhost restriction #333 2017-09-25 08:57:11 -05:00
Kevin Heifner c285b099d3 Add signing option to eosc 2017-08-31 16:53:28 -05:00
Kevin Heifner 28e0cf0d20 Added temp eosc wallet interaction 2017-08-31 09:45:16 -05:00
Kevin Heifner 6803737043 Added timeout to eos-walletd 2017-08-31 09:45:16 -05:00
Kevin Heifner 784f1b59e5 Added comments to wallet_manager 2017-08-31 09:45:16 -05:00
Kevin Heifner e6101f52b6 Added wallet_manager. Moved wallet to plugin. 2017-08-31 09:45:16 -05:00
Kevin Heifner e9b550b28b Simplified wallet plugin 2017-08-31 09:45:16 -05:00
Kevin Heifner 0441a27545 Framework for wallet plugin in place. 2017-08-31 09:45:16 -05:00