wolfSSL / wolfssl

The wolfSSL library is a small, fast, portable implementation of TLS/SSL for embedded devices to the cloud. wolfSSL supports up to TLS 1.3 and DTLS 1.3!
https://www.wolfssl.com
GNU General Public License v2.0
2.36k stars 834 forks source link

Fix conversion on various files #8135

Open gasbytes opened 3 weeks ago

gasbytes commented 3 weeks ago

These ones were linux specific (x86_64 on Void Linux). Most of them were automated using a shell script that I wrote locally, that uses a vim interactive shell. Working on the next block of files.

Testing: "gcc (GCC) 13.2.0"

$ ./configure --enable-all CC=gcc 'CFLAGS=-Werror -Wno-pragmas -Wall -Wextra -Wunknown-pragmas --param=ssp-buffer-size=1 -Waddress -Warray-bounds -Wbad-function-cast -Wchar-subscripts -Wcomment -Wfloat-equal -Wformat-security -Wformat=2 -Wmaybe-uninitialized -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wnormalized=id -Woverride-init -Wpointer-arith -Wpointer-sign -Wshadow -Wsign-compare -Wstrict-overflow=1 -Wstrict-prototypes -Wswitch-enum -Wundef -Wunused -Wunused-result -Wunused-variable -Wwrite-strings -fwrapv -Wsign-conversion -fmax-errors=1'
$ make
gasbytes commented 1 week ago

retest this please

dgarske commented 1 week ago

@gasbytes please share how you produced these conversion warnings. Which complier and what build steps. Thank you

dgarske commented 1 week ago

@gasbytes please squash.

gasbytes commented 1 week ago

@gasbytes please share how you produced these conversion warnings. Which complier and what build steps. Thank you

@dgarske Of course, version of gcc:

$ gcc --version
$ gcc (GCC) 13.2.0

And this is the configuration, followed just by a make:

$ ./config.status --config
$ --enable-all CC=gcc 'CFLAGS=-Werror -Wno-pragmas -Wall -Wextra -Wunknown-pragmas --param=ssp-buffer-size=1 -Waddress -Warray-bounds -Wbad-function-cast -Wchar-subscripts -Wcomment -Wfloat-equal -Wformat-security -Wformat=2 -Wmaybe-uninitialized -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wnormalized=id -Woverride-init -Wpointer-arith -Wpointer-sign -Wshadow -Wsign-compare -Wstrict-overflow=1 -Wstrict-prototypes -Wswitch-enum -Wundef -Wunused -Wunused-result -Wunused-variable -Wwrite-strings -fwrapv -Wsign-conversion -fmax-errors=1'
dgarske commented 6 days ago

Retest this please:

[make check (macos-latest, --enable-harden-tls)](https://github.com/wolfSSL/wolfssl/pull/8135#logs)

Test complete
wolfSSL error: tcp connect failed: Connection refused

Running simple test
SSL version is TLSv1.2
SSL cipher suite is TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
SSL curve name is SECP256R1
SSL version is TLSv1.2
SSL cipher suite is TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
SSL curve name is SECP256R1
Client message: hello wolfssl!
I hear you fa shizzle!

Running TLS test
FAIL testsuite/testsuite.test (exit status: 1)
./configure --enable-aesgcm=table --enable-all --enable-intelasm --enable-sp-math-all 
FAIL scripts/ocsp-stapling_tls13multi.test (exit status: 1)
douzzer commented 6 days ago

has a slew of conflicts relative to current master:

CONFLICT (content): Merge conflict in configure.ac
CONFLICT (content): Merge conflict in src/ssl.c
CONFLICT (content): Merge conflict in src/tls.c
CONFLICT (content): Merge conflict in tests/quic.c

it's a mystery to me why github thinks "Merging can be performed automatically"...

gasbytes commented 4 days ago

@douzzer

I think this might be because I resolved those conflicts using GitHub's web editor, but I'm not entirely sure why GitHub now says the merge can be performed automatically. As far as I can tell, those files don’t seem to have any breaking changes compared to master, so that might also be a reason.

gasbytes commented 1 day ago

Retest this please (https://github.com/wolfSSL/wolfssl/pull/8182/)