axtls build error #1220

Closed
boostiewj opened this Issue Jan 18, 2017 · 7 comments

Projects

None yet

3 participants

@boostiewj

curl-7.52.1,axTLS-2.1.2,centos 6.8
1.
axTLS/os_int.h:45:16: error: two or more data types in declaration specifiers
typedef char bool;
^
2.
vtls/axtls.c:269:13: error: too few arguments to function 'ssl_client_new'
ssl = ssl_client_new(ssl_ctx, conn->sock[sockindex],

vtls/axtls.c:276:11: error: too few arguments to function 'ssl_client_new'
ssl = ssl_client_new(ssl_ctx, conn->sock[sockindex], NULL, 0);

@bagder bagder added the SSL/TLS label Jan 18, 2017
@bagder
Member
bagder commented Jan 18, 2017

axTLS is naughty when it defines symbols (like bool) out of its name space. That's an axTLS bug, not a curl bug.

Regarding ssl_client_new it sounds as if they've changed their API?

@boostiewj
boostiewj commented Jan 18, 2017 edited

@bagder yes.they've changed their API.add some features.That's an axTLS bug for bool,but refuse to submit bug

@bagder
Member
bagder commented Jan 19, 2017
  1. axTLS refuses to accept bug reports from users
  2. I still can't build axTLS, make just returns with errors and during the minutes I looked into it I couldn't figure out why

So we can't report the axTLS bug and I can't work on fixing the libcurl side of things.

@bagder
Member
bagder commented Jan 20, 2017

I got a config file from @dfandrich and using that I could build axTLS 2.1.2.

  1. Remove the bool typedef from the axTLS public header. It shouldn't be there.
  2. Apply my patch. It adapts to the new API for ssl_client_new and fixes a bug with session IDs that I noticed.

0001-axtls-adapt-to-API-changes.patch.txt

@bagder
Member
bagder commented Jan 20, 2017

Does anyone think it is worth keeping support for the older axTLS API?

@camster444

I'll remove the typedef char bool on the next build. But the API has changed due to SNI functionality being added. Looks like curl supports it: http://stackoverflow.com/questions/12941703/use-curl-with-sni-server-name-indication#12942331.

@bagder
Member
bagder commented Jan 30, 2017

Of course curl supports SNI, it would be hard to function on the Internet without it! =) But quite apparently it does not do SNI with axTLS yet since we can't build with a axTLS version using the modified API.

I'm leaning towards just stating that we no longer build with older axTLS versions.

@bagder bagder added a commit that closed this issue Feb 15, 2017
@bagder bagder axtls: adapt to API changes
Builds with axTLS 2.1.2. This then also breaks compatibility with axTLS
< 2.1.0 (the older API)

... and fix the session_id mixup brought in 04b4ee5

Fixes #1220
a08db49
@bagder bagder closed this in a08db49 Feb 15, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment