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

64bit ssl op #15230

Closed
wants to merge 7 commits into from
Closed

64bit ssl op #15230

wants to merge 7 commits into from

Conversation

richsalz
Copy link
Contributor

The last commit is a code readability issue. It duplicates the cleanup in #15184 so either this or that (heh) could be merged first without causing major headaches. Expressing things in terms of bits is much more clear than comparing large hex numbers, especially 64-bit hex numbers :)

The OTC wanted this for beta as it's an API change.

Less tersely: converted SSL_get_options, SSL_set_options,
SSL_CTX_get_options and SSL_CTX_get_options to take and return uint64_t
since we were running out of 32 bits.

Fixes: 15145
ssl/ssl_conf.c Outdated Show resolved Hide resolved
include/openssl/ssl.h.in Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
paulidale
paulidale previously approved these changes May 11, 2021
Copy link
Contributor

@paulidale paulidale left a comment

Choose a reason for hiding this comment

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

LGTM.

Just one (ignorable) suggestion.

include/openssl/ssl.h.in Outdated Show resolved Hide resolved
@mattcaswell mattcaswell added this to the 3.0.0 beta1 milestone May 12, 2021
ssl/ssl_conf.c Outdated Show resolved Hide resolved
util/missingmacro.txt Outdated Show resolved Hide resolved
@t8m t8m added the branch: master Merge to master branch label May 12, 2021
@tmshort
Copy link
Contributor

tmshort commented May 12, 2021

I'm in favor of 64-bit options field; I had tried it a while ago when one of my features would've pushed the limit.

@richsalz
Copy link
Contributor Author

fixup commit pushed.

@t8m t8m added the approval: review pending This pull request needs review by a committer label May 12, 2021
# define SSL_OP_PRIORITIZE_CHACHA 0x00200000U
# define SSL_OP_NO_SSL_MASK ( \
SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 \
| SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3 )
Copy link
Member

Choose a reason for hiding this comment

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

Nit: I think this is more readable:

# define SSL_OP_NO_SSL_MASK \
    ( SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 \
      | SSL_OP_NO_TLSv1_2 | SSL_OP_NO_TLSv1_3 )

Copy link
Member

Choose a reason for hiding this comment

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

(to be applied generally, not just in this spot)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think this is more readable

Okay, fixed in all places.

@richsalz
Copy link
Contributor Author

Surely someone on the git project sees things like "fixup! fixup! fixup! fixup! fixup! Slightly reformat ssl.h.in " and wants to make "spam" and alias for "fixup" :)

Copy link
Member

@t8m t8m left a comment

Choose a reason for hiding this comment

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

Still ok

@t8m t8m dismissed paulidale’s stale review May 12, 2021 17:14

Changes happened

@tmshort
Copy link
Contributor

tmshort commented May 12, 2021

Surely someone on the git project sees things like "fixup! fixup! fixup! fixup! fixup! Slightly reformat ssl.h.in " and wants to make "spam" and alias for "fixup" :)

People need to learn how to use --fixup or git should recognize this stuff... Sigh...

@t8m
Copy link
Member

t8m commented May 12, 2021

The --autosquash handles the multiple-fixup commits just fine so it is just a cosmetic problem.

@richsalz
Copy link
Contributor Author

it is just a cosmetic problem.

I know. I was making a joke, a reference to the famous (https://www.dailymotion.com/video/x9fly1 etc)

@t-j-h
Copy link
Member

t-j-h commented May 12, 2021

You have removed all the older OP which were defined as zero and were being left for compatibility reasons.
That wasn't meant to happen in this PR.


/* Removed from OpenSSL 1.1.0. Was 0x00000001L */
/* Related to removed SSLv2. */
# define SSL_OP_MICROSOFT_SESS_ID_BUG 0x0
Copy link
Contributor

Choose a reason for hiding this comment

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

@t-j-h The old SSL_OPs are still here, but the comments surrounding them have been removed.

Copy link
Member

Choose a reason for hiding this comment

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

I wouldn't remove the comments indicating they are obsolete ...

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There is a block comment before the obsolete ones that says "these are obsolete" Saying what they uses to do seems pointless since they no longer do it. :) Showing the old value is even more useless.

Copy link
Member

Choose a reason for hiding this comment

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

The old sources won't disappear from Internet for the historians to dig it.

@t8m t8m requested review from paulidale and mattcaswell May 13, 2021 07:48
Copy link
Member

@mattcaswell mattcaswell left a comment

Choose a reason for hiding this comment

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

LGTM

@mattcaswell mattcaswell added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels May 13, 2021
@openssl-machine openssl-machine added approval: ready to merge The 24 hour grace period has passed, ready to merge and removed approval: done This pull request has the required number of approvals labels May 14, 2021
@openssl-machine
Copy link
Collaborator

This pull request is ready to merge

@mattcaswell
Copy link
Member

Pushed! Thanks.

openssl-machine pushed a commit that referenced this pull request May 14, 2021
Less tersely: converted SSL_get_options, SSL_set_options,
SSL_CTX_get_options and SSL_CTX_get_options to take and return uint64_t
since we were running out of 32 bits.

Fixes: 15145

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #15230)
openssl-machine pushed a commit that referenced this pull request May 14, 2021
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from #15230)
@richsalz richsalz deleted the 64bit-ssl-op branch May 14, 2021 15:10
devnexen pushed a commit to devnexen/openssl that referenced this pull request Jul 7, 2021
Less tersely: converted SSL_get_options, SSL_set_options,
SSL_CTX_get_options and SSL_CTX_get_options to take and return uint64_t
since we were running out of 32 bits.

Fixes: 15145

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from openssl#15230)
devnexen pushed a commit to devnexen/openssl that referenced this pull request Jul 7, 2021
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from openssl#15230)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approval: ready to merge The 24 hour grace period has passed, ready to merge branch: master Merge to master branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet