RFR: 8320219: Actually resolve issues with goto labels in sspi [v4]

Weijun Wang weijun at openjdk.org
Mon Dec 4 14:51:42 UTC 2023


On Mon, 4 Dec 2023 09:26:57 GMT, Julian Waters <jwaters at openjdk.org> wrote:

>> I regret not actually addressing the issues with the goto labels in https://github.com/openjdk/jdk/pull/15996, where initialization of locals in sspi were jumped over by gotos to a certain label. I changed the initializations into split declarations and assignments in https://github.com/openjdk/jdk/pull/15996, but this is simply a hack and does not address the real issue of gotos jumping over locals. I've as such fixed the issues with them properly this time, by simply deleting the labels and duplicating the code where they're used. As mentioned, this unfortunately does increase duplicate code, but is the cleanest solution I could come up with for the labels
>
> Julian Waters has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
> 
>  - Merge branch 'openjdk:master' into patch-9
>  - NULL to nullptr in sspi.cpp
>  - Missed labels in sspi.cpp
>  - Actually resolve issues with goto labels in sspi

I don't like all those duplicated lines. Why do you think the previous fix is a hack? I would guess the C++ designers are also not happy of this restriction so they provide us a way to avoid it. Maybe they will enhance it again sometime in the future?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/16682#issuecomment-1838804739



More information about the security-dev mailing list