Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: corda/corda
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: release/os/4.5
Choose a base ref
...
head repository: djc/corda
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: amqp-rpc
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 15 commits
  • 10 files changed
  • 3 contributors

Commits on Apr 8, 2020

  1. Allow RPC users to create and delete durable queues

    Without these permissions, it is impossible to use anything but the Artemis
    Core protocol to conduct RPC calls, since Artemis only allows either:
    
    a) non-durable queues with a random (UUID) name
    b) durable queues with fixed name
    
    to be created.
    djc committed Apr 8, 2020
    Configuration menu
    Copy the full SHA
    ed9c0c2 View commit details
    Browse the repository at this point in the history
  2. Strip queue:// prefix from client address

    For AMQP queues, Artemis prefixes the replyTo address with 'queue://',
    but it doesn't do the same for the BINDING_ADDED notification. Strip
    the prefix from the replyTo name to make sure the queueing logic
    in RPCServer works as expected.
    djc committed Apr 8, 2020
    Configuration menu
    Copy the full SHA
    552fcf2 View commit details
    Browse the repository at this point in the history
  3. Set RpcReply message type to BYTES_TYPE

    When converting Core messages to AMQP, Artemis converts the message
    payload as a string value by default. Corda RPC responses are binary,
    and they are not prefixed with their length as strings are.
    djc committed Apr 8, 2020
    Configuration menu
    Copy the full SHA
    5d1ef21 View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2020

  1. Configuration menu
    Copy the full SHA
    80bdd2b View commit details
    Browse the repository at this point in the history

Commits on May 1, 2020

  1. Merge branch 'release/os/4.5' into amqp-rpc

    # Conflicts:
    #	node/src/integration-test/kotlin/net/corda/node/NodeRPCTests.kt
    vkolomeyko committed May 1, 2020
    Configuration menu
    Copy the full SHA
    c53452c View commit details
    Browse the repository at this point in the history
  2. CORDA-3710: Refactor test into a separate file

    Make it compile to start with and make Detekt happier.
    
    Test currently fails as authentication credentials not properly passed via JMS.
    vkolomeyko committed May 1, 2020
    Configuration menu
    Copy the full SHA
    a55bc00 View commit details
    Browse the repository at this point in the history
  3. CORDA-3710: Provide correct user credentials

    Next blocker: No permissions to create the queue
    vkolomeyko committed May 1, 2020
    Configuration menu
    Copy the full SHA
    017d5af View commit details
    Browse the repository at this point in the history
  4. CORDA-3710: Found a way to get hold of a valid queue name

    Next blocker: No permissions to send
    Interestingly, there is a test net.corda.services.messaging.MQSecurityAsRPCTest which is precisely asserts that an attacker cannot do things we are trying to do by using internal ActiveMQ API.
    vkolomeyko committed May 1, 2020
    Configuration menu
    Copy the full SHA
    2434d8d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    90932ea View commit details
    Browse the repository at this point in the history

Commits on May 4, 2020

  1. Configuration menu
    Copy the full SHA
    ba69ab6 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2020

  1. CORDA-3710: Trying to write a valid message and send it to server

        Currently blocked by:
        ```
        Identifier contains invalid JMS identifier character '-': 'rpc-id'
        java.lang.IllegalArgumentException: Identifier contains invalid JMS identifier character '-': 'rpc-id'
        	at org.apache.qpid.jms.message.JmsMessagePropertySupport.checkIdentifierLetterAndDigitRequirements(JmsMessagePropertySupport.java:101)
        	at org.apache.qpid.jms.message.JmsMessagePropertySupport.checkPropertyNameIsValid(JmsMessagePropertySupport.java:63)
        	at org.apache.qpid.jms.message.JmsMessagePropertyIntercepter.setProperty(JmsMessagePropertyIntercepter.java:724)
        	at org.apache.qpid.jms.message.JmsMessage.setObjectProperty(JmsMessage.java:348)
        	at org.apache.qpid.jms.message.JmsMessage.setStringProperty(JmsMessage.java:433)
        	at net.corda.node.amqp.jms.AmqpRpcTests$Companion.mapTo(AmqpRpcTests.kt:52)
        	at net.corda.node.amqp.jms.AmqpRpcTests$Companion.mapTo(AmqpRpcTests.kt:47)
        	at net.corda.node.amqp.jms.AmqpRpcTests$Companion.access$mapTo(AmqpRpcTests.kt:35)
        	at net.corda.node.amqp.jms.AmqpRpcTests$RPC over AMQP$1.invoke(AmqpRpcTests.kt:84)
        	at net.corda.node.amqp.jms.AmqpRpcTests$RPC over AMQP$1.invoke(AmqpRpcTests.kt:33)
        	at net.corda.testing.node.internal.DriverDSLImplKt.genericDriver(DriverDSLImpl.kt:1199)
        	at net.corda.testing.driver.Driver.driver(Driver.kt:185)
        	at net.corda.node.amqp.jms.AmqpRpcTests.RPC over AMQP(AmqpRpcTests.kt:59)
        	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        	at java.lang.reflect.Method.invoke(Method.java:498)
        	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
        	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
        	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        	at java.lang.Thread.run(Thread.java:748)
        ```
    vkolomeyko committed May 5, 2020
    Configuration menu
    Copy the full SHA
    c2864e0 View commit details
    Browse the repository at this point in the history
  2. CORDA-3710: Finishing off the integration test and making server side…

    … changes for JMS call to go through
    vkolomeyko committed May 5, 2020
    Configuration menu
    Copy the full SHA
    7040c01 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6147657 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5067d7d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f9afde9 View commit details
    Browse the repository at this point in the history
Loading