Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nss/renego-and-resumption-NSS-with-OpenSSL - test extension #7

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

mrc0mmand
Copy link
Member

This PR extends the nss/renego-and-resumption-NSS-with-OpenSSL test to cover all combinations of settings for renegotiation and resumption protocols.

What's being tested (server-client):

  • OpenSSL-NSS - simple communication (NEW)
  • OpenSSL-NSS - simple communication with client authentication (NEW)
  • OpenSSL-NSS - renegotiation
  • OpenSSL-NSS - renegotiation with client authentication
  • OpenSSL-NSS - resumption (sessionID, SessionTicket)
  • OpenSSL-NSS - resumption (sessionID, SessionTicket) with client authentication (BUG)
  • NSS-OpenSSL - simple communication (FIXED)
  • NSS-OpenSSL - simple communication with client authentication (FIXED)
  • NSS-OpenSSL - renegotiation (NEW)
  • NSS-OpenSSL - renegotiation with client authentication (NEW)
  • NSS-OpenSSL - resumption (sessionID, SessionTicket) (NEW, BUG)
  • NSS-OpenSSL - resumption (sessionID, SessionTicket) with client authentication (NEW, BUG)

This PR must not be merged until following issues are resolved:

  • Beakerlib does not support CentOS in rlIsRHEL function
    • Discussed with devels, a new function rlIsCentos should be implemented soon
  • Segfault/server breakdown in NSS when using ECDHE-ECDSA ciphersuites
  • strsclnt cannot handle client certificates during session resumption
  • session resumption does not work for DHE-DSS ciphersuites

@mrc0mmand mrc0mmand force-pushed the nss-renego-and-resumption branch from 420527f to 7225000 Compare December 5, 2016 09:37
if [[ $prot == "tls1_2" ]]; then
options+=(-V tls1.0:)
else
options+=(-V tls1.0:tls1.1)
fi
options+=(-n $clnt_nickname)
rlRun -s "expect nss-client.expect ${options[*]}"
rlRun -s "${options[*]} <<< 'GET /'"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

technically, it should be 'GET / HTTP/1.0\n\n'

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed, thanks.

@@ -640,7 +640,7 @@ rlJournalStart
rlLogInfo "Test proper"
declare -a options=()
options+=(${SERVER_UTIL} -d sql:./nssdb/ -p 4433 -V tls1.0:
-c :${C_ID[$j]} -H 1)
-c :${C_ID[$j]} -u -H 1)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't it enable it only when session ticket is being tested?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should, thanks. I also found out that one resumption phase is missing the -u option completely. That should be fixed as well.

mrc0mmand and others added 6 commits March 11, 2017 15:56
Fix:
    - add missing expect scripts
    - enable disabled phases
        * OpenSSL-NSS (client auth)
        * NSS-OpenSSL
New:
    - NSS-OpenSSL renegotiation
    - NSS-OpenSSL renegotiation (client auth)
    - NSS-OpenSSL resumption [sessionID, ticket]
    - NSS-OpenSSL resumption (client auth) [session ID, ticket]
Issues:
    - NSS-OpenSSL resumption (both) fails for DHE-DSS ciphers
    - OpenSSL-NSS resumption (client auth) - strsclnt doesn't like
      client certs
- NSS-OpenSSL
- NSS-OpenSSL with client auth
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants