| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
|
Will rebase onto #10389 once it lands. |
Sorry, something went wrong.
Sorry, something went wrong.
|
@nodejs/crypto |
Sorry, something went wrong.
Sorry, something went wrong.
There was a problem hiding this comment.
Are ca3, ca4 and ca6 used anywhere?
Sorry, something went wrong.
There was a problem hiding this comment.
Target should be .PHONY.
Sorry, something went wrong.
There was a problem hiding this comment.
You could make the recipes a little more DRY by using $@, $< and $^ more.
Sorry, something went wrong.
There was a problem hiding this comment.
Can you use util.format here? Saves the casual reader from having to look up what fmt() is.
Sorry, something went wrong.
There was a problem hiding this comment.
Stylistic change.
Sorry, something went wrong.
|
Are there any matching cert + intermediate + key files in here? Asking so I can test #7230 (comment). |
Sorry, something went wrong.
Sorry, something went wrong.
|
@silverwind bf43a60a383fa5fce1051532c4e499c4b1df4c07 has the tests you are looking for, I believe, but this PR is partially broken at the moment, I am in process of rebasing (master had an agent8 and agent9 added to it, so I need to move my numbered certs forward, which I'm in process of doing right now). |
Sorry, something went wrong.
|
Hmm, can't find a fitting case there, but this should be a failing example: cert: [agent10-cert, ca4-cert] key: agent10-key |
Sorry, something went wrong.
|
I think I see what is happening, you are trying to provide the certs a+b+c of a cert chain as cert: [a, b, c]. This is invalid usage, not documented, and doesn't surprise me it doesn't work (though honestly, it wouldn't surprise me if it had worked, either, ossl is a bit weird). Also, I think you haven't noticed that the PEM files built by the Makefile are chains (they have multiple certs in the single PEM file if there are intermediates). Pre-existing test with pre-existing agent6 cert: This PR adds tests for mixed algorithm identies, where the mixed algs have intermediate certs:
Your example: cert: [agent10-cert, ca4-cert] key: agent10-key is invalid usage. agent10-cert.pem is a CHAIN, it already contains ca4-cert.pem, as did the pre-existing cert that had an intermediate cert, agent6:
Docs say:
Your example above has two identities, one is agent10+ca4, and the other is just ca4. This is weird, because ca4 is a sub-chain of the first identity, and also, because they are both RSA, and OpenSSL doesn't permit multiple identities of the same algorithm, because it doesn't know which one to pick (unless you use SNI callback, when it picks by the server name). |
Sorry, something went wrong.
|
Sorry, for agent10-cert I actually meant just the first cert, not the whole chain in that file. Let's call the individual certs agent10-cert and agent10-int to avoid confusion. So the interesting part is that it works if I concatenate agent10-cert and agent10-int into a single file, but not if I provide them individually in the form [agent10-cert, agent10-int]. I think this should be fixable. |
Sorry, something went wrong.
Exactly. That is the documented behaviour, so lets not hijack this PR to discuss it further, now that we agree what is happening. Open another issue if you think there is a problem and we can discuss there. |
Sorry, something went wrong.
I agree. I also would like to change file names and cert attributes to see its use and purpose for ease. |
Sorry, something went wrong.
|
@shigeki any more comments I can address? |
Sorry, something went wrong.
|
@shigeki I have responded to all comments, how can I move this forward? |
Sorry, something went wrong.
addressed comments, no replies to request for more comments
Sorry, something went wrong.
|
@sam-github would you be so kind and rebase? I guess it is otherwise ready? |
Sorry, something went wrong.
Sorry, something went wrong.
|
@mhdawson @bnoordhuis would you be so kind and reconfirm your LG? |
Sorry, something went wrong.
There was a problem hiding this comment.
LGTM
Sorry, something went wrong.
|
@sam-github the CI is dark red. Seems like some tests need some additional work. |
Sorry, something went wrong.
PFX is not PEM, its binary DER. Use the same .pfx extension as test/fixtures/test_cert.pfx does.
agent6 was the only cert that had a chain (an intermediate certificate), and there were no non-RSA certs other than a single self-signed one. This makes it impossible to test cert-chain scenarios with multiple identities which require chains to prove chain completion, and multi-algorithm because OpenSSL doesn't support multiple identities unless they are multi-algorithm. PFX files were also missing for most identities, making it difficult to test multi-PFX and PFX interactions with cert-chain+key and CA options. New server cert chains: - ECC: ca5 signs ca6 signs ec10, CN=agent10.example.com - RSA: ca2 signs ca4 signs agent10, CN=agent10.example.com PFX added for: - agent6 - agent10 - ec10
Prove that cert and key options do not have to be ordered, and that the pfx option can be used at the same time as the cert/key option (which was claimed to be impossible by some pre-existing documentation).
When honorCipherOrder is not explicitly set, it defaults to true, cover this condition in the test. Also, run all tests in parallel, instead of sequentially.
| Back | FazBrowse Home | New Git URL |
Checklist
Affected core subsystem(s)
tls