Commit Graph

2186 Commits

Author SHA1 Message Date
c319b190c8 CORDA-2232 external id to pub key mapping - additional setup for integration tests in database mode (#1597)
* Added new tables and view (from commit c41960520c) to setup for integration tests in database mode.
2018-11-28 10:49:18 +00:00
50c2112a2b Merge OS to Enterprise 2018-11-27 12:53:31 +00:00
b7d04b1c6e [CORDA-2235]: Add overrides for network parameters via command line and file (#4279)
* Temp commit

* Print the error message first by default, makes error output more natural.

* Polishing

* Further modifications after testing

* Documentation updates

* Couple of fixes after review

* Removing unnecessary tests

* Fix broken test

* Add interface to bootstrapper for testign

* Added unit tests

* Remove unused class

* Fix up bootstrapper unit tests and add a couple more

* Refactor the tests slightly

* Review comments

* Couple of minor tweaks
2018-11-26 17:11:05 +00:00
d399e3c242 CORDA-2232 external id to pub key mapping - fixes
Fixes in PersistentKeyManagementService.kt, VaultSchema.kt, and vault-schema.changelog-v8.xml. (#4295)
2018-11-26 16:03:06 +00:00
88fbb47f67 ENT-2320 state contract identification (#4285)
* Enforce state/contract agreement validation

* Fix some broken tests

* Ascertain targetVersion by inspecting the jar source of the ContractState

* Docs added and rebased against master

* contextLogger doesn't work here

* Java examples in docs

* Label IRSState with owning contract

* Fix rst formatting

* Add @BelongsToContract annotation to PortfolioState
2018-11-26 16:02:32 +00:00
61f2183328 Merge remote-tracking branch 'open/master' into os-merge-5d43f31 2018-11-26 15:28:19 +00:00
5d43f3139e Finance CorDapp jar includes confidential-identities (#4296)
https://github.com/corda/corda/pull/4260 removed the dependency that node had to confidential-identities which means CorDapps using it must now use compile and not cordaCompile. This resolves the failing smoke test.
2018-11-26 14:59:24 +00:00
3b8a74fe44 CORDA-2114: SwapIdentitiesFlow is now inlined (#4260)
This is to fix the security issue whereby any counterparty is able to generate anonymous identities with a node at will without checks.
2018-11-26 09:41:14 +00:00
b6736cbaf9 Merge remote-tracking branch 'remotes/open/master' into parkri-os-merge-20181126-1 2018-11-26 08:44:08 +00:00
04054f7c68 Merge branch 'merge-point-e14421b' into shams-os-merge-231118 2018-11-23 17:35:40 +00:00
2dfb88ac14 Merge branch 'merge-point-4c8dabc' into shams-os-merge-231118 2018-11-23 17:14:45 +00:00
fef2adac59 Merge fixes 2018-11-23 16:43:58 +00:00
6f79e60a9d Merge branch 'merge-point-c419605' into shams-os-merge-231118
# Conflicts:
#	CONTRIBUTING.md
#	build.gradle
#	docs/source/api-scanner.rst
#	docs/source/building-corda.rst
#	docs/source/contributing-index.rst
#	docs/source/contributing.rst
#	docs/source/testing.rst
#	node/capsule/build.gradle
#	node/src/main/kotlin/net/corda/node/services/schema/NodeSchemaService.kt
#	node/src/main/resources/migration/vault-schema.changelog-master.xml
2018-11-23 16:34:49 +00:00
2c182dd158 Use a wrapper over StateRef for references (#4286) 2018-11-23 15:20:10 +00:00
9b15d4dafb CORDA-2232: external id to pubkey mapping (#4210)
* First pass
Update test.
Address review comments.
Added docs and kdocs.
Clean-up.

* Addressed review comments.

Changes to docsite.

* First pass at account service.
Added new hibernate schemas and liquibase scripts.
Added indexes to new tables.
Removed mock network.
Removed fresh key for external id from key management service.
Removed some redundant changes.
Rebase to master.

* Clean up.

* Added try/catch block as recommended by Andras.

* Removed accounts test to another branch.
Removed element collections from fungible states and linear states table.
Added a new state_parties table which stores x500 names and public key hashes.
Added a view which can be used to query by external ID.

* Removed try catch block. It's not required as the checkpoint serialiser deals with this.
Re-used existing DB session instead of creating a new session.
Entity manager auto flushes.

* Added java friendly api.

*  This is a combination of 10 commits.
 This is the 1st commit message:

Shortened table name.

 This is the commit message #2:

Minor changes.

 This is the commit message #3:

Common criteria parser now returns a predicate set which is concatenated to the predicate sets of sub-class criteria.

 This is the commit message #4:

Fixed api compatibility issue.
Reverted some changes to reduce size of PR.

 This is the commit message #5:

Multiple states can now be mapped to the same externalId.
Multiple externalIds can now be mapped to the same state.

 This is the commit message #6:

Relaxed upper bound type constraint in some of the vault types.

 This is the commit message #7:

Added comment to test.

 This is the commit message #8:

Changed name of external id to public key join table.
Removed some comments/TODOs.

 This is the commit message #9:

Added docs.
General clean up.

 This is the commit message #10:

Fixed participants query bug and updated unit test.

* Removed unused code.
2018-11-23 14:29:57 +00:00
1c59d321ee Update testnet-explorer-corda.rst (#4270) 2018-11-23 14:27:27 +00:00
683e641a61 Fix node configuration doc for network parameter auto-acceptance settings (#4268) 2018-11-23 14:27:27 +00:00
3cc1c47cf0 Combines all contributing info in one place. Clean-up. (#4266) 2018-11-23 14:27:27 +00:00
e3ccf6a79f Add Docker image as output of build (#4223) 2018-11-23 14:25:40 +00:00
109bed8def ENT-2653: Split Artemis and Tunnel keys generation onto two separate sub-commands (#1584)
* ENT-2653: Introduce generation modes in InternalKeystoreGenerator

So that it would be possible to produce Artemis and Tunnel keystores independently.

* ENT-2653: Split Artemis certificates generation and Tunnel certificate generation onto two separate sub-commands.

* ENT-2653: Minor documentation update
2018-11-23 11:20:10 +00:00
51adf9b678 LedgerTransaction no longer a data class to prevent more copy methods and fixed serialisation issue (CORDA-2231) (#4287)
LedgerTransaction is not meant to be created directly from client code, but it being a data class means we will expose new copy methods as new properties are added. The existing copy methods that we've exposed since V3 are deprecated, and equals and hashCode have been updated to be based just on id.

The primary c'tor has been clearly marked as the class' wire format, and so the internal stuff has been moved out. The references property cannot be made nullable and so DeprecatedConstructorForDeserialization is used instead.
2018-11-22 22:53:24 +00:00
4c8dabc288 ENT-2506 restore the attachment party signers (#4255)
* ENT-2506 restore the attachment party signers

* ENT-2506 restore the attachment party signers

* ENT-2506 restore the attachment party signers

* ENT-2675 Address code review changes.

* ENT-2675 Address code review changes.
2018-11-22 18:35:30 +00:00
c41960520c CORDA-2232: external id to pubkey mapping (#4210)
* First pass
Update test.
Address review comments.
Added docs and kdocs.
Clean-up.

* Addressed review comments.

Changes to docsite.

* First pass at account service.
Added new hibernate schemas and liquibase scripts.
Added indexes to new tables.
Removed mock network.
Removed fresh key for external id from key management service.
Removed some redundant changes.
Rebase to master.

* Clean up.

* Added try/catch block as recommended by Andras.

* Removed accounts test to another branch.
Removed element collections from fungible states and linear states table.
Added a new state_parties table which stores x500 names and public key hashes.
Added a view which can be used to query by external ID.

* Removed try catch block. It's not required as the checkpoint serialiser deals with this.
Re-used existing DB session instead of creating a new session.
Entity manager auto flushes.

* Added java friendly api.

*  This is a combination of 10 commits.
 This is the 1st commit message:

Shortened table name.

 This is the commit message #2:

Minor changes.

 This is the commit message #3:

Common criteria parser now returns a predicate set which is concatenated to the predicate sets of sub-class criteria.

 This is the commit message #4:

Fixed api compatibility issue.
Reverted some changes to reduce size of PR.

 This is the commit message #5:

Multiple states can now be mapped to the same externalId.
Multiple externalIds can now be mapped to the same state.

 This is the commit message #6:

Relaxed upper bound type constraint in some of the vault types.

 This is the commit message #7:

Added comment to test.

 This is the commit message #8:

Changed name of external id to public key join table.
Removed some comments/TODOs.

 This is the commit message #9:

Added docs.
General clean up.

 This is the commit message #10:

Fixed participants query bug and updated unit test.

* Removed unused code.
2018-11-22 14:31:34 +00:00
b411ad6665 [ENT-2539] Implement support for holding node Legal Identity keys in Ultimaco HSM (#1571)
* Add dependencies for Utimaco HSM.

  The CryptoServerJCE.jar was added in node/lib.
  The node/capsule/build.gradle excludes this jar from
  the final corda.jar.

* Copy the HSM Simulator utility from Network Services.

  HsmSimulator.kt uses the spotify docker client to pull an
  image with a pre-configured hsm simulator from our docker
  registry and run it in integration tests.

* Implementation of the CryptoService interface for Utimaco HSM.

* Integration test for Utimaco CryptoService.

* Unit tests for UtimacoCryptoService (only config parsing).

* Integrate Utimaco CryptoService in AbstractNode and NodeConfiguration.

* Respond to Feedback: Remove copyright notice.

* Respond to PR Feedback: Improve integration test.

* Use custom overrides in DriverDSLImpl.startNodeRegistration

* Make Utimaco dependencies compileOnly and testCompile.

* Add integration test for registering a node that is backed by utimaco HSM.

* Respond to feedback: move HsmSimulator to different package.

* Make NodeConfiguration.cryptoServiceConf a Path instead of String.

* Add Keyfile-based login.

* Respond to feedback -- default signing algorithm.

* Respond to feedback: naming.

* UtimacoNodeRegistrationTest: explicitly verify that tx signature is valid.

* Respond to feedback: Static import assertThat.

* Rename key file for test login so it's not ignored.
2018-11-22 13:40:50 +00:00
8f5e62a326 Update testnet-explorer-corda.rst (#4270) 2018-11-21 12:54:58 +00:00
b8ac16fd0f Fix node configuration doc for network parameter auto-acceptance settings (#4268) 2018-11-21 12:51:21 +00:00
1d511269f6 ENT-2653: Add more options for providing distinct passwords for store and private keys. (#1580)
* ENT-2653: Add more options for providing distinct passwords for store and private keys.

* ENT-2653: Documentation update.
2018-11-21 10:04:28 +00:00
01387d082a Rename fat jar in build and docs (#1578) 2018-11-21 09:35:38 +00:00
94dd223662 Merge pull request #1579 from corda/oknowles-os-merge-20-11
OS Merge 20/11/18
2018-11-21 09:07:34 +00:00
faa9606dea Combines all contributing info in one place. Clean-up. (#4266) 2018-11-20 18:17:11 +00:00
8ef4de9eaf ENT-2653: Minor command line tools changes (#1577)
* ENT-2653: Correcting "country" typo.

* ENT-2653: Introduce common constant for command line tools and use it.
2018-11-20 15:01:46 +00:00
b1982e5b55 Merge remote-tracking branch 'open/master' into oknowles-os-merge-20-11 2018-11-20 14:46:30 +00:00
bbd5369e04 Add Docker image as output of build (#4223) 2018-11-20 13:38:44 +00:00
8827801ae6 CORDA-1915 Release notes for build system signing CorDapp JARs. (#4185) 2018-11-20 13:53:11 +01:00
373d99435c CORDA-1965 Auto-accept network parameter changes (#4222)
* add auto acceptance of certain network parameters

* Remove incorrect nullification of newNetworkParameters object within NetworkMapUpdater

* Automatically update network parameters if update accepted and flag day occured

* Comment cleanup

* Add node configuration for auto accepting network parameter changes

* Remove hot swapping of network parameters

* Add docs for auto accept config flag

* Minor change to log line

* Remove unrelated fix that was corrected on master

* Minor name change within NetworkParameters class

* Minor doc rewording

* Fix typo in docs

* Address PR comments

* Add node config option to turn off network param auto-accept on a per param basis

* Address PR comments

* Fix failing Network Map update integration test
2018-11-20 09:50:42 +00:00
06e74c4442 Merge remote-tracking branch 'open/master' into tudor-os-merge-19-11
# Conflicts:
#	docs/source/cli-ux-guidelines.rst
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/main/java/CordaCaplet.java
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/Kryo.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/core/TestUtils.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/InternalTestUtils.kt
2018-11-19 17:40:34 +00:00
2d043828a0 CORDA-2083 verify transaction in AttachmentsClassloader (#4188)
CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 fix tests

CORDA-2083 add support for explicit upgrade transactions

CORDA-2083 cleanup

CORDA-2083 cleanup

CORDA-2083 More cleanup

CORDA-2083 More cleanup

CORDA-2083 Clean up tests

CORDA-2083 Address code review comments

CORDA-2083 Fix merge

CORDA-2083 Fix merge

CORDA-2083 Address code review comments

revert file

CORDA-2083 Fix test

CORDA-2083 Add test

CORDA-2083 cleanup

CORDA-2083 Fix test

CORDA-2083 Address code review comments.

CORDA-2083 Remove unused functions.

CORDA-2083 Address code review comments.

CORDA-2083 Address code review comments.

CORDA-2083 Address code review comments.

CORDA-2083 Address code review comments.

CORDA-2083 Address code review comments.
2018-11-19 13:42:12 +00:00
1658cb0269 Updates running-a-cordapp to point to new samples page. (#4251) 2018-11-19 12:19:05 +00:00
0c323bce5c Documents Corda dependencies. Clean-up. (#4196)
* Documents Corda dependencies. Clean-up.

* Review feedback.

* Addresses review feedback.
2018-11-19 11:09:33 +00:00
8ea6f1c7c5 [CORDA-2004]: Update CLI UX guidelines for backwards compatibility (#4248)
* Update CLI UX guidelines for backwards compatibility

* De-lousing

* Spelling mistake
2018-11-18 12:36:21 +00:00
4c88e26a46 Fixed incorrect diagram. (#4212) 2018-11-18 11:35:56 +00:00
51e66af2fd CORDA-2201 add documentation for hiding passwords in node.conf (#4221) 2018-11-16 17:10:53 +00:00
134f6a016c Merge pull request #1568 from corda/os-merge-e8b6f5f
O/S merge e8b6f5f
2018-11-16 13:58:42 +00:00
5244d41384 ENT-2653 Standalone Keytool/Registration tool for HA deployment (#1558)
* Node registration tool for registering multiple nodes at the same time
* SSL key import tool for creating SSL keystore for the bridge or adding new key to existing bridge keystore
* Self signed SSL keystores generator for creating SSL keystores for firewall components' internal communication
2018-11-16 11:49:21 +00:00
15a6618223 Bunch of changes to get ENT working in light of the new FinalityFlow API
* Updated the performance cordapp tests to use target version 3 as it's not been updated and uses the old FinalityFlow API
* Updated the api-current.txt file as the API checker on TC is throwing a false-negative
* Deleted IntegrationTestingTutorial, rather than fixing its failure, as it's a leftover of KotlinIntegrationTestingTutorial
2018-11-16 10:19:41 +00:00
ac1d3d1fc7 Merge branch 'merge-point-e8b6f5f' into os-merge-e8b6f5f
# Conflicts:
#	docs/source/api-persistence.rst
#	docs/source/example-code/src/main/java/net/corda/docs/java/FlowCookbook.java
#	docs/source/upgrade-notes.rst
#	node/src/integration-test/kotlin/net/corda/node/modes/draining/FlowsDrainingModeContentionTest.kt
2018-11-15 13:09:06 +00:00
4984e92e31 Merge branch 'os-merge-point' into os-merge-shams
# Conflicts:
#	build.gradle
#	core/src/main/kotlin/net/corda/core/transactions/LedgerTransaction.kt
#	core/src/main/kotlin/net/corda/core/transactions/TransactionBuilder.kt
#	docs/source/api-persistence.rst
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/bridging/BridgeControlListener.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/test/kotlin/net/corda/node/services/vault/VaultQueryTests.kt
#	settings.gradle
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockServices.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/dsl/TransactionDSLInterpreter.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/MockCordappProvider.kt
2018-11-14 18:13:01 +00:00
e8b6f5f2f2 CORDA-2005: FinalityFlow has been made into an inlined flow to resolve issue with FinalityHandler (#4050)
FinalityHandler is insecure in that it is open to receive any transaction from any party.

Any CorDapp targeting platform version 4 or above is required use the new c'tors which take in FlowSession objects to the counterpart flow. This flow must subcall ReceiveFinalityFlow to receive and record the finalised transaction.

Old CorDapps (with target platform version < 4) will continue to work as previously. However if there are no old CorDapps loaded then the node will disable FinalityHandler.
2018-11-14 14:16:22 +00:00
6a4ef24f54 Merge commit '74c80aafd657e2718787f97932b89a069af7949f' into colljos-merge-141118 2018-11-14 13:52:56 +00:00
1e27f0cbe0 Merge remote-tracking branch 'private/master' into feature/tudor_constraints
# Conflicts:
#	core/src/main/kotlin/net/corda/core/transactions/LedgerTransaction.kt
#	core/src/main/kotlin/net/corda/core/transactions/TransactionBuilder.kt
#	core/src/main/kotlin/net/corda/core/utilities/KotlinUtils.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/NodeAttachmentServiceTest.kt
2018-11-14 11:50:19 +00:00