strophe / libstrophe

A simple, lightweight C library for writing XMPP clients
http://strophe.im/libstrophe
Other
401 stars 163 forks source link

A bunch more fixes and improvements #200

Closed sjaeckel closed 2 years ago

sjaeckel commented 2 years ago

Major fix

There was a random segfault of the resolver tests in Test-run 5413576855

...
PASS: tests/test_stanza
./test-driver: line 107: [116](https://github.com/strophe/libstrophe/runs/5413576855?check_suite_focus=true#step:5:116)52 Segmentation fault      (core dumped) "$@" > $log_file 2>&1
FAIL: tests/test_resolver
PASS: tests/test_xmppaddr
============================================================================
make[2]: *** [Makefile:2430: test-suite.log] Error 1
Testsuite summary for libstrophe 0.11.0
============================================================================
# TOTAL: 16
# PASS:  15
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
============================================================================
See ./test-suite.log
Please report to jack@metajack.im
============================================================================
make[2]: Leaving directory '/home/runner/work/libstrophe/libstrophe'
make[1]: *** [Makefile:2538: check-TESTS] Error 2
make: *** [Makefile:2850: check-am] Error 2
make[1]: Leaving directory '/home/runner/work/libstrophe/libstrophe'
Error: Process completed with exit code 2.

Therefor I decided to add fuzzing to the resolver which nearly immediately produced a crash and lead to the bugfix in this PR.

Minor fixes

Improvement