Skip to content

Non SSL build with GSSAPI is broken #16919

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

Closed
andrewkirillov-ibm opened this issue Apr 2, 2025 · 1 comment
Closed

Non SSL build with GSSAPI is broken #16919

andrewkirillov-ibm opened this issue Apr 2, 2025 · 1 comment
Labels

Comments

@andrewkirillov-ibm
Copy link
Contributor

andrewkirillov-ibm commented Apr 2, 2025

I did this

Did a non SSL build of 8.13.0 on IBMi V7R4M0 system and got it broken:

CZM1003:  http_negotiate.c, 113.49: CZM0045(30) Undeclared identifier SSL_CB_MAX_SIZE.
CZS0601:  Module HNEGOTIATE is not created because statement errors occurred.

Non SSL build worked fine however on Windows/Linux.

The issue seem to be introduced here:
646b2d6#diff-9940151c5408b92900d62ecbd521d5cee6eee0600a6d1297c72a0a26f322a4f0

Before the code was protected by

#if defined(USE_SSL) && defined(HAVE_GSSAPI)

But now the code references SSL_CB_MAX_SIZE (which is only defined for SSL builds) already under HAVE_GSSAPI check.

#ifdef HAVE_GSSAPI
  Curl_dyn_init(&neg_ctx->channel_binding_data, SSL_CB_MAX_SIZE + 1);
#ifdef USE_SSL
  ...

I expected the following

A clean build

curl/libcurl version

8.13.0

operating system

OS400 V7R4M0
(anything with GSSAPI)

@andrewkirillov-ibm
Copy link
Contributor Author

andrewkirillov-ibm commented Apr 2, 2025

To fix the issue the original #if defined(USE_SSL) && defined(HAVE_GSSAPI) could be restored. However, there might be a reason why it was undone in the first place.

Alternative solution can be Curl_dyn_init(&neg_ctx->channel_binding_data, 1); for non SSL builds. It did work for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging a pull request may close this issue.

2 participants