1 commit 7a231a3b72758d93b4b9425fd403247aa2018499
2 Author: Michael Rash <mbr@cipherdyne.org>
3 Date: Mon Dec 5 22:21:31 2011 -0500
5 added local_spa.key file
7 commit 3d0ceccf65010a84dd30fc5e9c567e24f03104ce
8 Author: Michael Rash <mbr@cipherdyne.org>
9 Date: Mon Dec 5 22:20:39 2011 -0500
11 added local_spa.key file
13 commit 710f98a9b572cd126cd3f662b29244bc0d6e6533
14 Author: Michael Rash <mbr@cipherdyne.org>
15 Date: Mon Dec 5 22:16:38 2011 -0500
17 minor addition of the CREDITS file for 'make dist'
19 commit 9bcd7cb137103db89400f4f652ab834e05ea5eba
20 Author: Michael Rash <mbr@cipherdyne.org>
21 Date: Mon Dec 5 22:16:03 2011 -0500
23 Added the CREDITS file for 'make dist'
25 commit 3b2ec921be16db4bcccb4a0bfe13ebdb620a5b31
26 Author: Michael Rash <mbr@cipherdyne.org>
27 Date: Mon Dec 5 22:11:58 2011 -0500
29 change log doc updates
31 commit 474a18b57d054939e6f4063d5ef491b4cee4a240
32 Author: Michael Rash <mbr@cipherdyne.org>
33 Date: Mon Dec 5 22:10:47 2011 -0500
35 Added various files to Makefile.am so that 'make dist' continues to work
37 commit 690fe25fa4201af8f76c28450177581ce14a1459
38 Author: Michael Rash <mbr@cipherdyne.org>
39 Date: Mon Dec 5 21:14:31 2011 -0500
41 added CREDITS file, bumped software version, added ChangeLog files
43 commit bcba9d6bdef6032a992e64a8bd6bd7604b83b006
44 Author: Michael Rash <mbr@cipherdyne.org>
45 Date: Mon Dec 5 21:14:14 2011 -0500
47 added CREDITS file, bumped software version, added ChangeLog files
49 commit 893b89a3eba5fa9945095f8df4460f912fdb0cbc
50 Author: Michael Rash <mbr@cipherdyne.org>
51 Date: Sat Dec 3 21:21:29 2011 -0500
53 minor compiler warning fix on OpenBSD
55 commit 860b4527a455d1d50f2b563f4939ee1990b53bd8
56 Author: Michael Rash <mbr@cipherdyne.org>
57 Date: Sat Dec 3 13:10:35 2011 -0500
59 minor compile fixes for FreeBSD
61 commit 9b7c1a8ce69fe51337458cce4e7b5e9cb3d7654b
62 Author: Michael Rash <mbr@cipherdyne.org>
63 Date: Wed Nov 30 20:51:19 2011 -0500
65 Added FORCE_NAT mode to the access.conf file
67 This commit adds a new configuration variable "FORCE_NAT" to the access.conf
70 For any valid SPA packet, force the requested connection to be NAT'd
71 through to the specified (usually internal) IP and port value. This is
72 useful if there are multiple internal systems running a service such as
73 SSHD, and you want to give transparent access to only one internal system
74 for each stanza in the access.conf file. This way, multiple external
75 users can each directly access only one internal system per SPA key.
77 This commit also implements a few minor code cleanups.
79 commit 8585958e6e164d47c3d9dc106d4a15aee18599b9
80 Author: Michael Rash <mbr@cipherdyne.org>
81 Date: Mon Nov 28 23:20:11 2011 -0500
83 minor newline fix for access.conf output dump
85 commit 2a1243fee6d618096bc402b5a56ae3c2670b8b50
86 Author: Michael Rash <mbr@cipherdyne.org>
87 Date: Mon Nov 28 23:18:07 2011 -0500
89 memory leak bugfix as a follow up to commit b280f5cde0246cdef33dee3f8be66a2bcef77336
91 commit b280f5cde0246cdef33dee3f8be66a2bcef77336
92 Author: Michael Rash <mbr@cipherdyne.org>
93 Date: Mon Nov 28 22:03:21 2011 -0500
95 Added access stanza expiration feature, multiple access stanza bug fix
97 This commit does two major things:
99 1) Two new access.conf variables are added "ACCESS_EXPIRE" and
100 "ACCESS_EXPIRE_EPOCH" to allow access stanzas to be expired without having
101 to modify the access.conf file and restart fwknopd.
103 2) Allow an access stanza that matches the SPA source address to not
104 automatically short circuit other stanzas if there is an error (such as when
105 there are multiple encryption keys involved and an incoming SPA packet is
106 meant for, say, the second stanza and the first therefore doesn't allow
109 commit 9e884e9759362ce401bf77dab819b24e10caca62
110 Author: Michael Rash <mbr@cipherdyne.org>
111 Date: Tue Nov 22 22:56:48 2011 -0500
113 added SPA packet aging tests
115 commit 72a4353fd850c099816f6e1acb9fad12bcb2ff27
116 Author: Michael Rash <mbr@cipherdyne.org>
117 Date: Tue Nov 22 22:56:36 2011 -0500
119 bug fix to exclude SPA packets with timestamps in the future that are too great (old packets were properly excluded already)
121 commit 644b9e943214ed6ede762af72f395b73ea03faf0
122 Author: Michael Rash <mbr@cipherdyne.org>
123 Date: Tue Nov 22 22:40:26 2011 -0500
125 added test for --test mode in the fwknop client
127 commit 0015da44427bf988372818b26916a6229e9f68ca
128 Author: Michael Rash <mbr@cipherdyne.org>
129 Date: Tue Nov 22 22:34:10 2011 -0500
131 bug fix to honor the fwknop client --time-offset-plus and --time-offset-minus options
133 commit 05b189ff4fe61c7149efcf4f18cada14553e6dbe
134 Author: Michael Rash <mbr@cipherdyne.org>
135 Date: Tue Nov 22 22:13:27 2011 -0500
137 added DNAT mode tests, minor memory leak fix in NAT mode, added fwknopd check for ENABLE_IPT_FORWARDING variable before attempting NAT access
139 commit dd2deec73dc5f0d630ab86e92fe1e0073d692414
140 Author: Michael Rash <mbr@cipherdyne.org>
141 Date: Fri Nov 18 23:23:50 2011 -0500
143 added tests for various access.conf variables
145 commit 63498c9032bfe74bc91de5d6607391e7b7cdfe36
146 Author: Michael Rash <mbr@cipherdyne.org>
147 Date: Thu Nov 17 21:17:50 2011 -0500
149 added IP/subnet match tests, added --Anonymize-results mode
151 commit 34cd0c7a78a62e1df2533641ca08adaaafa2aa7d
152 Author: Michael Rash <mbr@cipherdyne.org>
153 Date: Tue Nov 15 21:45:51 2011 -0500
155 simplified the client/server interaction code, started on IP filtering tests, added spoof username tests
157 commit 3d94aaa9205e5703c50635b9007efab485d9b2da
158 Author: Michael Rash <mbr@cipherdyne.org>
159 Date: Thu Nov 10 22:54:25 2011 -0500
161 minor test wording consolidation
163 commit 50b48147c0392cd91f7ad83af56b20d0abbd3c3e
164 Author: Michael Rash <mbr@cipherdyne.org>
165 Date: Thu Nov 10 22:33:32 2011 -0500
167 This commit fixes two memory leaks and adds a common exit function.
169 The two memory leaks were found with the test suite running in
170 --enable-valgrind mode - here are the relevant error messages:
172 For fwknopd server GPG clean up:
174 ==345== 9 bytes in 1 blocks are definitely lost in loss record 2 of 2
175 ==345== at 0x4C2815C: malloc (vg_replace_malloc.c:236)
176 ==345== by 0x52F6B81: strdup (strdup.c:43)
177 ==345== by 0x10FA57: add_string_list_ent (access.c:308)
178 ==345== by 0x110513: parse_access_file (access.c:387)
179 ==345== by 0x10B5FB: main (fwknopd.c:193)
181 For fwknop client rc file processing:
183 ==8045== 568 bytes in 1 blocks are still reachable in loss record 12 of 12
184 ==8045== at 0x4C2815C: malloc (vg_replace_malloc.c:236)
185 ==8045== by 0x50A53AA: __fopen_internal (iofopen.c:76)
186 ==8045== by 0x10C3FF: process_rc (config_init.c:446)
187 ==8045== by 0x10C8F6: config_init (config_init.c:671)
188 ==8045== by 0x10AC9E: main (fwknop.c:62)
190 There is also a new clean_exit() function that makes it easier to ensure that
191 resources are deallocated upon existing.
193 commit 9ebd55f52289d5904fbde3b8838ca92c7271d9e9
194 Author: Michael Rash <mbr@cipherdyne.org>
195 Date: Thu Nov 10 22:33:00 2011 -0500
197 remove CMD timestamps for --diff mode
199 commit 9e19b8bc267031900c555c55fc5c1e54b6093461
200 Author: Michael Rash <mbr@cipherdyne.org>
201 Date: Sun Nov 6 13:51:23 2011 -0500
203 added --diff mode to the test suite to compare results from one execution to the next
205 commit a5a3c06ef225c737acbd21c6cedd1a94f1a6c484
206 Author: Michael Rash <mbr@cipherdyne.org>
207 Date: Fri Nov 4 23:46:31 2011 -0400
209 consolidated several test functions into a single generic_exec() function
211 commit f41a26b389605311a21a95a9ad2b23f460ed02ee
212 Author: Michael Rash <mbr@cipherdyne.org>
213 Date: Thu Nov 3 22:15:19 2011 -0400
215 Fixed fwknopd memory leak, several other fixes and updates
217 This commit does several things. First, a memory leak in fwknopd has been
218 fixed by ensuring to free access.conf stanzas. This bug was found with the
219 new test suite running in --enable-valgrind mode. Here is what some of the
220 valgrind output looked like to find the leak:
222 ==19217== 11 bytes in 1 blocks are indirectly lost in loss record 3 of 5
223 ==19217== at 0x4C2815C: malloc (vg_replace_malloc.c:236)
224 ==19217== by 0x52F6B81: strdup (strdup.c:43)
225 ==19217== by 0x10FC8B: add_acc_string (access.c:49)
226 ==19217== by 0x1105C8: parse_access_file (access.c:756)
227 ==19217== by 0x10B79B: main (fwknopd.c:194)
229 ==19217== 16 bytes in 1 blocks are indirectly lost in loss record 4 of 5
230 ==19217== at 0x4C27480: calloc (vg_replace_malloc.c:467)
231 ==19217== by 0x10FEC0: add_source_mask (access.c:88)
232 ==19217== by 0x110100: expand_acc_source (access.c:191)
233 ==19217== by 0x1104B0: parse_access_file (access.c:500)
234 ==19217== by 0x10B79B: main (fwknopd.c:194)
236 ==19217== 183 (152 direct, 31 indirect) bytes in 1 blocks are definitely lost in loss record 5 of 5
237 ==19217== at 0x4C27480: calloc (vg_replace_malloc.c:467)
238 ==19217== by 0x1103E4: parse_access_file (access.c:551)
239 ==19217== by 0x10B79B: main (fwknopd.c:194)
241 ==19217== LEAK SUMMARY:
242 ==19217== definitely lost: 152 bytes in 1 blocks
243 ==19217== indirectly lost: 31 bytes in 3 blocks
244 ==19217== possibly lost: 0 bytes in 0 blocks
245 ==19217== still reachable: 8 bytes in 1 blocks
246 ==19217== suppressed: 0 bytes in 0 blocks
248 Second, this commit changes how fwknopd acquires packet data with
249 pcap_dispatch() - packets are now processed within the callback function
250 process_packet() that is provided to pcap_dispatch(), the global packet
251 counter is incremented by the return value from pcap_dispatch() (since this is
252 the number of packets processed per pcap loop), and there are two new
253 fwknopd.conf variables PCAP_DISPATCH_COUNT and PCAP_LOOP_SLEEP to control the
254 number of packets that pcap_dispatch() should process per loop and the number
255 of microseconds that fwknopd should sleep per loop respectively. Without this
256 change, it was fairly easy to cause fwknopd to miss packets by creating bursts
257 of packets that would all be processed one at time with the usleep() delay
258 between each. For fwknopd deployed on a busy network and with a permissive
259 pcap filter (i.e. something other than the default that causes fwknopd to look
260 at, say, TCP ACK's), this change should help.
262 Third, the criteria that a packet must reach before data copying into the
263 buffer designed for SPA processing has been tightened. A packet less than
264 /greater than the minimum/maximum expected sizes is ignored before data is
265 copied, and the base64 check is done as well.
267 commit 97a8d751c1b02271e812701d4cb938833d36918a
268 Author: Michael Rash <mbr@cipherdyne.org>
269 Date: Sun Oct 30 22:14:00 2011 -0400
271 added complete SPA cycle tests for tcp ports 23 and 9418 (git), and for udp 53 dns
273 commit 044ea54d936745e29c856de71818f0497633d531
274 Author: Michael Rash <mbr@cipherdyne.org>
275 Date: Sat Oct 29 23:49:29 2011 -0400
277 updated client SPA verbose message to include the server IP/host
279 commit 8e4b45dd568ef86ba773605662a5d058be714d33
280 Author: Michael Rash <mbr@cipherdyne.org>
281 Date: Sat Oct 29 23:48:42 2011 -0400
283 minor looping criteria update for valgrind tests
285 commit ea3e81787121e56e1a44cc0a5ee3b9ba64c4f5eb
286 Author: Michael Rash <mbr@cipherdyne.org>
287 Date: Sat Oct 29 16:59:57 2011 -0400
289 [test-suite] added the ability to run all fwknop tests through valgrind
291 commit f999e2e6720021328e2f34bf57d05b8081d8ffae
292 Author: Michael Rash <mbr@cipherdyne.org>
293 Date: Sat Oct 29 16:55:28 2011 -0400
295 bugfix to return preprocess_spa_data() result properly to calling function
297 commit b1b830f744b01e0a3f0d4a19b6d38dd51afaae1f
298 Author: Michael Rash <mbr@cipherdyne.org>
299 Date: Fri Oct 28 23:01:06 2011 -0400
301 update to remove packet direction requirement when sniffing on OpenBSD loopback interfaces
303 commit cde71b1b274cae5af3b6e986e5ac369d79c0cc3a
304 Author: Michael Rash <mbr@cipherdyne.org>
305 Date: Fri Oct 28 23:00:26 2011 -0400
307 minor whitespace removal
309 commit dbbbe60fe4b6908bff56d026d886381c83a44087
310 Author: Michael Rash <mbr@cipherdyne.org>
311 Date: Fri Oct 28 22:59:52 2011 -0400
313 added stack protection detection for OpenBSD systems
315 commit 2e96ece4b074beff06aaca2f51bd90c84bfeeef8
316 Author: Michael Rash <mbr@cipherdyne.org>
317 Date: Fri Oct 28 22:42:27 2011 -0400
319 Update to ensure libfko.so path is detected properly on OpenBSD
321 commit 464dbe95d07657794aaac9e230153ffd84a2ed06
322 Author: Michael Rash <mbr@cipherdyne.org>
323 Date: Thu Oct 27 21:51:55 2011 -0400
325 Update to print all firewall commands in --verbose mode
327 This commit makes it easier to determine exactly which commands fwknopd
328 runs in --verbose mode when interacting with the underlying firewall.
329 This commit also adds --verbose --verbose mode to the test suite.
331 commit 6388e8ac7fab3d89b164862c9e113fed37e9f397
332 Author: Michael Rash <mbr@cipherdyne.org>
333 Date: Tue Oct 25 21:00:40 2011 -0400
335 added 'const' to function prototype vars where possible
337 Added the 'const' qualifier to function prototype variables where possible.
338 In addition, reduced some functions to file-scope with 'static' where possible.
340 Also made a few minor changes to remove extra whitespace, and fixed a bug
341 in create_fwknoprc() to ensure the new fwknoprc filehandle is closed.
343 commit 85377267e299118d5302afde3dfeed426b353879
344 Author: Michael Rash <mbr@cipherdyne.org>
345 Date: Mon Oct 24 21:52:13 2011 -0400
347 compiler warning fix for sscanf() on freebsd
349 This commit fixes the following gcc warning on freebsd systems:
351 replay_cache.c: In function 'replay_file_cache_init':
352 replay_cache.c:312: warning: format '%ld' expects type 'long int *', but argument 9 has type 'time_t *'
354 commit 1c6fc0f3f80e086b43471e756f8249015fe2e4b2
355 Author: Michael Rash <mbr@cipherdyne.org>
356 Date: Mon Oct 24 20:48:56 2011 -0400
358 update to detect loopback interface
360 commit 3299fb25815bcec09b5410d3393ab806f8b78a68
361 Author: Michael Rash <mbr@cipherdyne.org>
362 Date: Mon Oct 24 20:48:20 2011 -0400
364 minor whitespace removal
366 commit c9860811f5de4b28f674d53d16b1bca10f12bed8
367 Author: Michael Rash <mbr@cipherdyne.org>
368 Date: Sat Oct 22 22:29:27 2011 -0400
370 added LD_LIBRARY_PATH to all fwknop/fwknopd commands to make manual command execution easier
372 commit 50bcc537eea23e9cd269a51e63d9da525c0a91ac
373 Author: Michael Rash <mbr@cipherdyne.org>
374 Date: Sat Oct 22 22:06:00 2011 -0400
376 added digest cache validation after GPG tests
378 commit 1b8606461cc21108b190f871bf2d8b0929589fce
379 Author: Michael Rash <mbr@cipherdyne.org>
380 Date: Sat Oct 22 21:54:22 2011 -0400
382 minor update to match include/exclude criteria on the whole test message
384 commit 9e3a4b4c920444df10b6a74eb574a542091adbfc
385 Author: Michael Rash <mbr@cipherdyne.org>
386 Date: Sat Oct 22 21:29:44 2011 -0400
388 extended packet validity tests in GPG mode
390 commit 09e6ed1405436b975cb41c89dc2517f0e73c54bb
391 Author: Michael Rash <mbr@cipherdyne.org>
392 Date: Sat Oct 22 16:48:30 2011 -0400
394 added first GPG complete cycle SPA test
396 commit 2d9dbe1fca011cd6bf726b86fb21af97da11ce49
397 Author: Michael Rash <mbr@cipherdyne.org>
398 Date: Sat Oct 22 15:19:54 2011 -0400
400 minor whitespace removal
402 commit e4f4ee78253f1f44c8809173ad2209ba8364e2c5
403 Author: Michael Rash <mbr@cipherdyne.org>
404 Date: Sat Oct 22 14:25:56 2011 -0400
406 added test to validate digest.cache structure
408 commit 266150218a021894e6dab0a8b4d7525183fe004a
409 Author: Michael Rash <mbr@cipherdyne.org>
410 Date: Sat Oct 22 10:57:25 2011 -0400
412 added -P bpf test for complete SPA cycle over non standard SPA port
414 commit 0ab39a64a5b86babdd0c5f7412fe160bca13cb69
415 Author: Michael Rash <mbr@cipherdyne.org>
416 Date: Sat Oct 22 10:48:37 2011 -0400
418 added -P bpf filter test
420 commit 6848983b474d4571b1434a349d10ac21b278ebda
421 Author: Michael Rash <mbr@cipherdyne.org>
422 Date: Fri Oct 21 23:43:08 2011 -0400
424 added Rijndael SPA validity tests
426 commit 081b58d9510e4bbafb6dd57b4e55a02d7105e43a
427 Author: Michael Rash <mbr@cipherdyne.org>
428 Date: Fri Oct 21 23:13:24 2011 -0400
430 added rule timeout detection
432 commit 9b816ed29af1be3a259d9c154418cbe624c2a93f
433 Author: Michael Rash <mbr@cipherdyne.org>
434 Date: Fri Oct 21 22:55:45 2011 -0400
436 added replay attack detection test
438 commit 0bda4ee1e5f671c2e64a2b961de2f2ed0f9170a5
439 Author: Michael Rash <mbr@cipherdyne.org>
440 Date: Fri Oct 21 22:54:49 2011 -0400
442 minor removal of whitespace
444 commit caf458ad3fb2ce9408035630869e877f0c97768d
445 Author: Michael Rash <mbr@cipherdyne.org>
446 Date: Thu Oct 20 23:33:41 2011 -0400
448 added first complete SPA cycle test
450 commit 44598fd7dd6be8207bae512b8b6e13f08e265d2a
451 Author: Michael Rash <mbr@cipherdyne.org>
452 Date: Thu Oct 20 23:31:59 2011 -0400
454 Added --digest-file and --pid-file args
456 Added --digest-file and --pid-file args so that the user can easily alter
457 these paths from the command line.
459 commit 6f699f7e5d28ac1d8e66d66b9cedb3094a35439e
460 Author: Michael Rash <mbr@cipherdyne.org>
461 Date: Thu Oct 20 00:06:58 2011 -0400
463 added client/server interaction test capability
465 commit b8571bcc05cc81448b8d52ef8eef71f2eaefa987
466 Author: Michael Rash <mbr@cipherdyne.org>
467 Date: Tue Oct 18 21:28:38 2011 -0400
469 Minor PID string length fix
471 Changed PID string length to 7 to accomodate an ending newline and NULL
472 char when writing to the fwknopd .pid file. Without this fix, with a
473 5 digit PID the trailing newline would be truncated (no room for the
476 commit 0e7a0e9a378c5b9605228075718f53012e87cadd
477 Author: Michael Rash <mbr@cipherdyne.org>
478 Date: Mon Oct 17 23:03:28 2011 -0400
480 Added --fw-list-all and --fw-flush
482 Added new command line options --fw-list-all and --fw-flush to allow all
483 firewall rules to be displayed including those not created by fwknopd, and
484 allow all firewall rules created by fwknopd to be deleted.
486 Also switched -D config dump output to stdout.
488 commit e479e776dbd848ba82e65e22b35e7e479a788161
489 Author: Michael Rash <mbr@cipherdyne.org>
490 Date: Mon Oct 17 22:55:01 2011 -0400
492 Added usage of sudo for recompilation test
494 The test suite now recompiles fwknop only if the --enable-recompile-check
495 option is used, and if so, uses sudo (if installed) to have the resulting
496 binaries own by the original user (instead of by root). Also made a couple
497 of API changes to create test output files automatically if they don't
500 commit 11c240c41b74c110068b8748b28a074ac121608c
501 Author: Michael Rash <mbr@cipherdyne.org>
502 Date: Thu Oct 13 22:44:35 2011 -0400
504 minor update to allow fw rules to be dumped before parsing the access.conf file
506 commit e36c833f554f59312c02e5efec0bbc77ab0ee301
507 Author: Michael Rash <mbr@cipherdyne.org>
508 Date: Thu Oct 13 22:02:21 2011 -0400
510 minor whitespace fixes
512 commit 9962dc08088b31d116b7b5d41bf8e3ced8cfa814
513 Author: Michael Rash <mbr@cipherdyne.org>
514 Date: Thu Oct 13 20:59:30 2011 -0400
516 minor wording update netfilter -> iptables
518 commit 45ecc6f39932271f7a70b1fe8dec99dc9d2438c0
519 Author: Michael Rash <mbr@cipherdyne.org>
520 Date: Thu Oct 13 20:41:12 2011 -0400
522 minor bugfix to ensure that the proper firewall is used to collect system specs
524 commit 103cd2a8fb0ebe7919a5647ae90a9425242ca0ae
525 Author: Michael Rash <mbr@cipherdyne.org>
526 Date: Thu Oct 13 20:30:05 2011 -0400
528 added the test/conf/ directory for config files use by the test suite
530 commit 6f0d2c509121de45f470dae4c17b6a7e46ea19d0
531 Author: Michael Rash <mbr@cipherdyne.org>
532 Date: Thu Oct 13 20:29:37 2011 -0400
536 commit 64160a0c57aee0c406be5158836fe10b3f38e3f9
537 Author: Michael Rash <mbr@cipherdyne.org>
538 Date: Thu Oct 13 20:29:19 2011 -0400
540 started on basic SPA generation, updated to use LD_LIBRARY_PATH for local libfko instance
542 commit a1f4a65f27b73ebe5744c7ae4bf64a0876032e13
543 Author: Michael Rash <mbr@cipherdyne.org>
544 Date: Wed Oct 12 23:37:28 2011 -0400
546 interim commit to add major functionality to the fwknop test suite
548 commit 4a41ecc9556fedd4bb04206081b4096a2fddaeee
549 Author: Michael Rash <mbr@cipherdyne.org>
550 Date: Wed Oct 12 23:36:51 2011 -0400
554 commit 88d8eb03b30a03ebb43a7da33c5f65d2de2c3289
555 Author: Michael Rash <mbr@cipherdyne.org>
556 Date: Wed Oct 12 23:36:04 2011 -0400
558 minor update to switch to stdout when exiting with success
560 commit 41c0be29b7a3ea6a0c859b43e43ccdc3aa5e30ba
561 Author: Michael Rash <mbr@cipherdyne.org>
562 Date: Thu Oct 6 23:02:29 2011 -0400
564 switched --help output to stdout from stderr
566 commit 26f58a705dbdf9a07e430fc2558871d491c27d63
567 Author: Michael Rash <mbr@cipherdyne.org>
568 Date: Thu Oct 6 22:53:27 2011 -0400
570 minor update to account for hardening-check return values
572 commit 1a3e1caffe707e71fd3cf99ffaa4547f7fda017a
573 Author: Michael Rash <mbr@cipherdyne.org>
574 Date: Tue Oct 4 23:15:04 2011 -0400
576 Initial start on a test suite
578 This commit begins development on a comprehensive test suite for fwknop.
579 The initial tests are focused on compilation correctness and security options
580 as determined by the "hardening-check" script from Kees Cook of the Debian
583 commit 05f3cec96a03251d1a308d90200c9dc479ae4558
584 Author: Michael Rash <mbr@cipherdyne.org>
585 Date: Sun Sep 25 21:12:30 2011 -0400
587 Added --help usage information
589 With the --help command line argument, the following information is printed:
591 $ ./fwknop-launcher-lsof.pl --help
593 Usage: fwknop-launcher-lsof.pl [options]
597 -c, --config <file> - Path to fwknop-launcher.conf config file.
598 -l, --lsof-cmd <path> - Path to lsof command.
599 -f, --fwknop-cmd <path> - Path to fwknop client command.
600 -s, --sleep <seconds> - Specify sleep interval (default:
602 -n --no-daemon - Run in foreground mode.
603 -u, --user <username> - Specify username (usually this is not
605 --home-dir <dir> - Path to user's home directory (usually
607 -v --verbose - Print verbose information to the terminal
608 (requires --no-daemon).
609 --help - Print usage info and exit.
611 commit 71ea0c6bfd3be6ff8d95e6f1d1029394e51c07f4
612 Merge: 7748423 35ee5a2
613 Author: Michael Rash <mbr@cipherdyne.org>
614 Date: Sun Sep 25 21:02:54 2011 -0400
616 Merge branch 'master' into fwknop-launcher
618 commit 7748423b15958fedfcaeb942f3f26cdc5b40dcde
619 Author: Michael Rash <mbr@cipherdyne.org>
620 Date: Sat Sep 24 22:24:30 2011 -0400
622 Added the fwknop lsof launcher under the extras/ directory
624 The fwknop lsof launcher (extras/fwknop-launcher/fwknop-launcher-lsof.pl) is a
625 lightweight daemon that allows the user to not have to manually run the fwknop
626 client when attempting to gain access to a service that is protected by Single
627 Packet Authorization via fwknopd. This is accomplished by checking the output
628 of lsof to look for pending connections in the SYN_SENT state, which (usually)
629 indicate that a remote firewall is blocking the attempted connection. At this
630 point, the launcher executes the fwknop client with the --get-key arg (so the
631 user must place the key in the local filesystem) to generate an SPA packet for
632 the attempted connection. The remote fwknopd daemon will reconfigure the
633 firewall to allow temporary access, and this usually happens fast enough that
634 the original connection attempt will then succeed.
636 The idea for this was originally for a pcap-based connection watcher by
639 commit 35ee5a202debe2e7c15227f7704753c977281de2
640 Merge: 35abc34 668ed90
641 Author: Michael Rash <michael.rash@gmail.com>
642 Date: Wed Sep 21 18:10:16 2011 -0700
644 Merge pull request #5 from maxkas/master
646 Fwknop client for iPhone devices - contributed by Max Kastanas
648 commit 668ed9033f601f052fe58ebf87a8eff144b50fcf
649 Author: Max Kastanas <max2idea@users.sf.net>
650 Date: Fri Sep 16 22:51:53 2011 -0700
652 Codebase of Fwknop client for iOS (iPhone) devices
654 commit 35abc349ab91ff40f0706a66e9ba50188cb94cb2
655 Author: Michael Rash <mbr@cipherdyne.org>
656 Date: Mon Sep 12 23:04:41 2011 -0400
658 minor typo fix: fwkop -> fwknop
660 commit f693a2721cf499815853639c8dfb924ab4c427cd
661 Merge: e07ccdd 87416c0
662 Author: Damien Stuart <dstuart@dstuart.org>
663 Date: Sat Sep 10 11:30:09 2011 -0400
665 Merge branch 'master' of https://github.com/mrash/fwknop
667 commit e07ccdd5508c488a818790c16728ebdc13be284c
668 Author: Damien Stuart <dstuart@dstuart.org>
669 Date: Sat Sep 10 11:25:08 2011 -0400
671 Added the cmd_opts.h file to server and client's Makefile.am so they are included with make dist.
673 commit 87416c0cdf544ff636ea963bd90f1f22dd7ca49a
674 Author: Michael Rash <mbr@cipherdyne.org>
675 Date: Fri Sep 9 22:09:37 2011 -0400
677 Replaced all strcpy() calls with strlcpy()
679 OpenBSD especially gives compiler warnings whenever strcpy() is used. All such
680 calls have been replaced with strlcpy().
682 commit 0b8c4890758bfd6612780c28041d7b1e3e9f1a15
683 Author: Michael Rash <mbr@cipherdyne.org>
684 Date: Thu Sep 8 23:44:50 2011 -0400
686 Added read-only relocations and immediate bindings
688 Commit 4248b2687054b38e79e2ab9eecf71e5b299172f4 removed read-only relocations
689 and immediate bindings for FreeBSD systems (and the same was done for OpenBSD
690 systems too). This commit adds these security features back in as linker
691 options by only changing LDFLAGS as opposed to also adding the corresponding
692 flags to CFLAGS. The end result is that the following errors are fixed:
694 gcc: -z: linker input file unused because linking not done
695 gcc: relro: linker input file unused because linking not done
697 commit c65e25c6568c53d44d0163ebd4889260466bcdfa
698 Author: Michael Rash <mbr@cipherdyne.org>
699 Date: Thu Sep 8 21:33:52 2011 -0400
701 Check for active_rules > 0 before decrementing
703 In the fw_config struct the active_rules member is unsigned, so this change
704 ensures that we don't try to decrement it below zero whenever a firewall rule
705 is deleted or an error condition occurs.
707 commit 88b6d44f1f70daf951cf7e1d237114f96ad30a9a
708 Author: Michael Rash <mbr@cipherdyne.org>
709 Date: Thu Sep 8 00:20:20 2011 -0400
711 Update to make _exp_ string a #define
713 Replaced all instances of "_exp_" with the #define EXPIRE_COMMENT_PREFIX so
714 that the prefix can easily be changed. so
715 that the prefix can easily be changed. so
716 that the prefix can easily be changed. so
717 that the prefix can easily be changed.
719 commit 2531896ebf98d80380f462b4fae9e16940206a40
720 Author: Michael Rash <mbr@cipherdyne.org>
721 Date: Wed Sep 7 23:24:18 2011 -0400
723 Added the ability to delete PF rules
725 This commit adds the ability to fwknopd to delete PF rules after the SPA timer
726 expires. The strategy implemented is similar to iptables and ipfw, except
727 that all PF rules are added to an 'anchor', and deleting a specific expired
728 rule is done by listing all rules in the anchor and reinstantiating it via
729 'pfctl -a <anchor> -f -' with the expired rule deleted. fwknopd uses the
730 "_exp_<expire time>" convention in a PF rule label similarly to how fwknopd
731 interfaces with iptables (via the 'comment' match), and ipfw (via the
732 "//<comment>" feature).
734 commit f9810904c36c270a5d19111ae7566c6d410bed4a
735 Author: Michael Rash <mbr@cipherdyne.org>
736 Date: Sat Sep 3 21:00:12 2011 -0400
738 minor comment typo fixes
740 commit d60dde17b71b898a821a60d9a1166c32436c17c2
741 Author: Michael Rash <mbr@cipherdyne.org>
742 Date: Sat Sep 3 14:50:28 2011 -0400
744 PF rules are now added to the fwknop anchor
746 This commit implements the ability to add PF firewall rules to the fwknop
747 anchor after a valid SPA packet is sniffed off the wire. A subsequent commit
748 will add the ability to delete these rules.
750 commit 6938f7a6aecb1395f750c56a4e10489d6d060fc9
751 Author: Michael Rash <mbr@cipherdyne.org>
752 Date: Sun Aug 28 13:37:23 2011 -0400
754 Minor copyright holder update
756 Minor copyright holder update
758 commit 10ff421e1ef86c1b437645764abe11819a88c292
759 Author: Michael Rash <mbr@cipherdyne.org>
760 Date: Sun Aug 28 13:27:15 2011 -0400
762 For PF firewalls implemented a check for an active fwknop anchor
764 This commit ensures that for PF firewalls that the fwknop anchor is active and
765 linked into the running PF policy. This is accomplished by looking for the
766 string 'anchor "fwknop"' in the output of "pfctl -s rules". If the anchor
767 exists, then fwknopd will be able to influence traffic via rules added and
768 removed from the fwknop anchor.
770 commit 5bc5ef4305cafd26ee3faaf5eefb3f6b9f05441e
771 Author: Michael Rash <mbr@cipherdyne.org>
772 Date: Sat Aug 27 11:07:19 2011 -0400
774 Added --fw-list info to --help
776 Added --fw-list output to usage info when --help is specified from the command
779 commit 0649ef924a8c979fd815c2d2e8416a16aeabeb62
780 Author: Michael Rash <mbr@cipherdyne.org>
781 Date: Sat Aug 27 10:57:17 2011 -0400
783 PF support on OpenBSD in progress, fwknop --fw-list now works
785 This is the first commit that has fwknopd interact with the PF firewall on
786 OpenBSD (via fwknopd --fw-list to show any active fwknopd rules).
788 commit dcf2d94bf675a906c570814d9cd65e2a1bfd2e77
789 Author: Michael Rash <mbr@cipherdyne.org>
790 Date: Wed Aug 24 23:55:36 2011 -0400
792 Added autoconf check for pf firewalls
794 On OpenBSD systems fwknop now checks for pf firewalls via autoconf. The next
795 step will be to fill in support for pf via the C code.
797 commit 649b7a88c1d6caa0e3760c7694b9d5b5b855dd4c
798 Author: Michael Rash <mbr@cipherdyne.org>
799 Date: Wed Aug 24 23:17:45 2011 -0400
801 Disabled read-only relocations and immediate binding compiler protections
803 Similarly to FreeBSD systems, gcc throws the following warnings with read-only
804 relcations and immediate binding protections - disbabled for now:
806 gcc: -z: linker input file unused because linking not done
807 gcc: relro: linker input file unused because linking not done
808 gcc: -z: linker input file unused because linking not done
809 gcc: now: linker input file unused because linking not done
811 commit 47da588003b9bf1645a97823cfa940b8c5a93071
812 Author: Michael Rash <mbr@cipherdyne.org>
813 Date: Mon Aug 22 21:39:28 2011 -0400
815 removed 2.0.0 branch specific ChangeLog, ShortLog and diffstat files