1509 Commits

Author SHA1 Message Date
Michael Rash
bfa1704072 [test suite] exclude /usr/include/* files from lcov coverage analysis 2014-03-30 16:06:46 -04:00
Michael Rash
3ca546092b [test suite] additional rc file code coverage tests 2014-03-29 22:23:45 -04:00
Michael Rash
a9fb3c05db [test suite] minor typo fix 2014-03-29 21:45:10 -04:00
Michael Rash
22b1b2d9d2 [test suite] additional client/config_init.c code coverage test for fwknoprc file parsing 2014-03-29 21:44:24 -04:00
Michael Rash
9c86477e72 [test suite] HTTP proxy tests for client/spa_comm.c test coverage 2014-03-29 15:05:52 -04:00
Michael Rash
535bcdf2a6 [test suite] IP resolution tests for client/http_resolve_host.c coverage 2014-03-29 14:53:52 -04:00
Michael Rash
ef0eb18fd3 [client] removed unused hex_dump() function 2014-03-29 14:04:09 -04:00
Michael Rash
c4a59ec90f [server] fix IP subnet mask CIDR range restriction bug found by Coverity 2014-03-27 21:59:30 -04:00
Michael Rash
6b87710397 [libfko] fix memory leak in fko_encode_spa_data() caught by Coverity 2014-03-27 21:21:17 -04:00
Michael Rash
41f12eba81 [libfko] Memory leak bug fix in GnuPG handling
Bug fix to correct a memory leak in GnuPG SPA packet handling within
the gpg_decrypt() function.  Here is the specific valgrind leak record
that enabled the bug to be found (note that the new valgrind
suppressions usage was critical for finding this bug among all other
libgpgme memory leaks):

==23983== 1,044 bytes in 1 blocks are definitely lost in loss record 7 of 8
==23983==    at 0x4C2C494: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==23983==    by 0x4E41D3A: gpg_decrypt (fko_encryption.c:422)
==23983==    by 0x4E42520: fko_decrypt_spa_data (fko_encryption.c:626)
==23983==    by 0x1155B0: incoming_spa (incoming_spa.c:519)
==23983==    by 0x1180A7: process_packet (process_packet.c:211)
==23983==    by 0x506D857: ??? (in /usr/lib/x86_64-linux-gnu/libpcap.so.1.4.0)
==23983==    by 0x117865: pcap_capture (pcap_capture.c:270)
==23983==    by 0x10F937: main (fwknopd.c:353)
2014-03-27 16:52:13 -04:00
Michael Rash
74a4cabb9c [test suite] Added valgrind suppressions for gpgme
Running the test suite with --enable-valgrind resulted in large numbers
of leaks detected in gpgme functions.  This commit adds a valgrind
suppressions file to squash these errors (which are not fwknop's fault),
and also enables the valgrind --child-slient-after-fork option by
default.  Both of these can disable in test suite execution with two
new options: --valgrind-disable-suppressions and
--valgrind-disable-child-silent.
2014-03-27 12:02:30 -04:00
Michael Rash
73bc473563 [client+server] verify GnuPG signatures by default
- [server] When GnuPG is used, the default now is to require that
incoming SPA packets are signed by a key listed in GPG_REMOTE_ID for each
access.conf stanza. In other words, the usage of GPG_REQUIRE_SIG
is no longer necessary in order to authenticate SPA packets via the
GnuPG signature. Verification of GnuPG signatures can be disabled with a
new access.conf variable GPG_DISABLE_SIG, but this is NOT a
recommended configuration.
- [client+server] Add --gpg-exe command line argument and GPG_EXE
config variable to ~/.fwknoprc and the access.conf file so that the path
to GnuPG can be changed from the default /usr/bin/gpg path.
2014-03-25 19:53:13 -04:00
Michael Rash
a52aa8d54a [test suite] don't remove .gcov/.gcda profiling files in --list-mode 2014-03-18 20:39:25 -04:00
Michael Rash
6875d0092c [test suite] exercise fko_base64_encode() and fko_base64_decode() in fko-wrapper 2014-03-18 20:37:47 -04:00
Michael Rash
00f878c5ed [test suite] add --spoof-user test 2014-03-17 22:36:49 -04:00
Michael Rash
d98cb7fd2c [test suite] add --preserve-previous-profile-files 2014-03-17 22:36:17 -04:00
Michael Rash
a3762926b5 for --enable-profile-coverage add -lgcov to LDFLAGS and remove -O0 optimization switch 2014-03-17 22:07:42 -04:00
Michael Rash
46e8428e01 [extras] allow configure wrapper to pass on args to the configure script 2014-03-17 22:06:31 -04:00
Michael Rash
4ba55d6814 fix automake subdir-objects warning on Mac OS X, fixes part of #115 2014-03-17 22:05:45 -04:00
Michael Rash
b33a6e4c22 [test suite] ensure the fko multi-call wrapper is executed under valgrind 2014-03-17 21:43:36 -04:00
Michael Rash
490b8e3106 [test suite] add lcov html results for gcov profile coverage in --enable-profile-coverage mode 2014-03-17 21:42:31 -04:00
Michael Rash
7e290245b2 [libfko] per-SPA message type field count validation
This commit implements more rigorous SPA packet field count validation
that takes into account expected field counts for each SPA message type.
Two new libfko error codes have been added in support of this, and the
corresponding changes made in the perl and python modules.
2014-03-16 21:47:19 -04:00
Michael Rash
6de811cbc6 [libfko] minor error constant label typo fix 2014-03-16 16:37:21 -04:00
Michael Rash
2f9c20fb27 [test suite] minor bug fix to add udpraw mode for spoofed src test 2014-03-16 09:11:31 -04:00
Michael Rash
da09ba7300 [libfko] dedicated parsing functions for decoding client timeout and server auth SPA fields 2014-03-16 09:08:33 -04:00
Michael Rash
5baf8a3fa9 replace malloc() with calloc() calls 2014-03-15 22:02:57 -04:00
Michael Rash
2556433bba [libfko] add digest verification and length fcns to decode routine 2014-03-15 21:37:30 -04:00
Michael Rash
ded2443b00 ChangeLog updates for 2.6.1 2014-03-14 23:08:34 -04:00
Michael Rash
5fff8a7f4f Merge branch 'ms_compatible_usernames'
This merges in work on #114 to allow MS compatible usernames, and should
help Cygwin (and Windows) users.
2014-03-14 23:02:47 -04:00
Michael Rash
f5bb43927d Merge branch 'master' of https://github.com/mrash/fwknop 2014-03-14 22:57:53 -04:00
Michael Rash
0897bd54e1 [libfko] call SPA field parsers via function pointers in fko_decode_spa_data() 2014-03-14 22:57:36 -04:00
Michael Rash
2eff0c01aa [libfko] start on refactoring fko_decode_spa_data() to put SPA field parsing into dedicated functions 2014-03-14 21:11:25 -04:00
Michael Rash
cbc7584445 Merge branch 'master' of ssh://github.com/mrash/fwknop 2014-03-14 09:16:18 -04:00
Michael Rash
9e990c9be0 fix header non-ascii chars, and introduce test suite support for detecting this in source files 2014-03-14 09:14:35 -04:00
Michael Rash
ad512ff6e7 [test suite] added Rijndael+HMAC SPOOF_SRC fwknoprc file test 2014-03-13 21:43:51 -04:00
Michael Rash
4181b43f55 [test suite] Added Rijndael+HMAC NAT rand port via client rc file test 2014-03-13 20:10:26 -04:00
Michael Rash
83595bdabb [test suite] Added Rijndael+HMAC command execution test 2014-03-13 19:40:47 -04:00
Michael Rash
f82a7e3558 [perl FKO module] comment out username fuzzing packets that are now acceptable to libfko 2014-03-13 17:00:44 -04:00
Michael Rash
1213eae926 [test suite] allow fuzzing_spa_packet file comments to skip particular packets 2014-03-13 16:07:00 -04:00
Michael Rash
d963f74c46 fix header non-ascii chars, and introduce test suite support for detecting this in source files 2014-03-11 21:29:33 -04:00
Michael Rash
b5eb857533 [libfko] allow MS compatible usernames
Allow usernames that are compatible with Microsoft guidelines as defined
here:

http://technet.microsoft.com/en-us/library/bb726984.aspx

This allows for greater compatibility between fwknop clients on Windows
(for example that may be deployed with Cygwin) and fwknopd on other
systems.  This change was suggested by Gerry Reno, and tracked by Github
issue #114.
2014-03-09 23:12:53 -04:00
Michael Rash
0bae1a5a1b started on 2.6.1 ChangeLog entries 2014-03-09 19:16:36 -04:00
Michael Rash
08e5c9252c [client] bug fix to set non-zero random source port for UDP raw SPA mode 2014-03-09 19:08:40 -04:00
Michael Rash
be971e2ec8 [client] bug fix to convert UDP length header field to network byte order in UDP raw mode 2014-03-09 18:58:22 -04:00
Michael Rash
f3a02b5d2d [test suite] establish new test.log file in --list mode 2014-03-07 16:31:30 -05:00
Michael Rash
f476570b2a [test suite] minor --help update to include missed options 2014-03-07 15:54:59 -05:00
Michael Rash
bfdbb8f260 Updated authorship and copyright information
This commit updates all authorship and copyright information to include a
standard header that references the AUTHORS and CREDITS file. This standard
header was written by the Debian legal team at the request of Franck Joncourt.
2014-03-04 17:53:10 -05:00
Michael Rash
3eeca9b2e3 [server] minor comment typo fix 2014-03-01 14:34:20 -05:00
Michael Rash
14dc8c6ea2 [test suite] check for Darwin uname output for Mac OS X 2014-02-09 21:39:52 -05:00
Michael Rash
6409216d34 [test suite] added git branch and commit values to init 2014-02-07 07:58:12 -05:00