Commit Graph

1599 Commits

Author SHA1 Message Date
Cas Cremers
b6f4fcbb7a Removed a slightly more complex trampoline by making a stateful iterator. 2018-10-22 00:17:53 +02:00
Cas Cremers
4748d2f4d2 Introduced state in iterate_role_sends.
Initial tests look good; this version doesn't use the state yet, but just passes it on.
2018-10-22 00:17:53 +02:00
Cas Cremers
1c81b04aa2 Removed another simple trampoline. 2018-10-21 18:52:20 +02:00
Cas Cremers
d9e17005ae Fix duplicate trampoline counting bug in script. 2018-10-21 17:29:55 +02:00
Cas Cremers
54b3654b07 Updated regression tests. 2018-10-21 17:09:29 +02:00
Cas Cremers
1c3e32a2da Refactoring. 2018-10-19 21:28:22 -04:00
Cas Cremers
178c20a61c Refactoring code. 2018-10-19 20:27:35 -04:00
Cas Cremers
024a76a32b Minor refactoring. 2018-10-19 20:17:50 -04:00
Cas Cremers
45b2d97883 Another trampoline gone. 2018-10-19 16:17:06 -04:00
Cas Cremers
24c6e47f07 Removed dead code that nevertheless produced a trampoline warning. 2018-10-19 16:08:47 -04:00
Cas Cremers
15c64c8a55 Down to 20. 2018-10-19 16:06:08 -04:00
Cas Cremers
38d57ed91d Nearly at 20 trampolines left. 2018-10-19 16:01:44 -04:00
Cas Cremers
9da05f738c Another trampoline gone. 2018-10-19 15:55:39 -04:00
Cas Cremers
e831a9d51b Another simple trampoline removed. 2018-10-19 15:51:47 -04:00
Cas Cremers
fe2bc26e71 Removed one more. 2018-10-19 15:46:48 -04:00
Cas Cremers
6ee81d304d Another double trampoline removed. 2018-10-19 15:43:08 -04:00
Cas Cremers
38bb02aa61 Removed another simple trampoline. 2018-10-19 15:33:41 -04:00
Cas Cremers
d4c188659c Removed another trampoline. 2018-10-19 15:28:51 -04:00
Cas Cremers
26bf502428 Removed another trampoline. 2018-10-19 15:18:17 -04:00
Cas Cremers
ad06600bd8 Removed a further simple trampoline. 2018-10-19 15:10:28 -04:00
Cas Cremers
128189bb54 Added counter script. 2018-10-19 14:35:56 -04:00
Cas Cremers
ac7e0a144b Fixed another nested functions. 2018-10-15 17:31:53 -04:00
Cas Cremers
0d9c23c33b Reindent code for consistency. 2018-10-15 09:40:07 -04:00
Cas Cremers
369ae1e3f8 Refactoring another bit of code to avoid trampoline. 2018-10-14 22:11:25 +02:00
Cas Cremers
b56c66db0b Added some safety checks and a missing deVar to the code that localises terms. 2018-10-14 22:00:16 +02:00
Cas Cremers
69c0486376 Another removal of a nested function.
Note this one is relatively complex and error prone.
2018-10-14 21:46:55 +02:00
Cas Cremers
ec8ea5f95c Copied another iterator to remove a trampoline. 2018-10-14 20:51:19 +02:00
Cas Cremers
2ad030f919 Removed another nested function by duplicating iterator code. 2018-10-14 20:42:54 +02:00
Cas Cremers
7956eb5953 Removed a simple nested function. 2018-10-14 17:43:13 +02:00
Cas Cremers
08adc5b518 Removed a further nested function call. 2018-10-14 17:39:29 +02:00
Cas Cremers
2b4af1c290 Removed nested function in goal_add. 2018-10-14 17:29:15 +02:00
Cas Cremers
61beae203b Got rid of one nested function. 2018-10-14 17:19:05 +02:00
Cas Cremers
792eaab09c Enable warning to help locate the problem areas to fix. 2018-10-14 17:04:42 +02:00
Cas Cremers
1c278ca427 Fixing installation instructions since Python 2 is no longer in default Ubuntu installs. 2017-12-14 16:24:10 +00:00
Cas Cremers
5103876969 Merge pull request #14 from kamphaus/master
Keyboard shortcuts & new file command.
2016-06-27 15:22:29 +02:00
Christophe Kamphaus
faf6c57069 Added a new-file command with standard new-file keyboard shortcut 2016-02-28 23:33:18 +01:00
Christophe Kamphaus
53de782d3c Changed default filename to empty string
When trying to save a new file it opens the save-as dialog
2016-02-28 23:24:20 +01:00
Christophe Kamphaus
b386274738 Added standard keyboard shortcuts for opening and saving files 2016-02-28 23:21:24 +01:00
Christophe Kamphaus
94f7b2ce43 Added standard keyboard shortcuts for closing windows 2016-02-28 23:18:21 +01:00
Cas Cremers
457c68580f Added explicit flag for using gnu89 C standard. 2015-11-27 21:07:30 +00:00
Cas Cremers
2116fde993 Merge branch 'master' of github.com:cascremers/scyther 2015-11-27 20:58:04 +00:00
Cas Cremers
4d8c8a7336 Minor fix. 2015-05-02 14:20:42 +01:00
Cas Cremers
bfbd57aede Merge branch 'master' of /home/cas/Dropbox/repos/scyther
Conflicts:
	src/arachne.c
2014-12-09 22:47:31 +00:00
Cas Cremers
ba513ea45d Fixing small wxPython error. 2014-07-14 16:56:48 +01:00
Cas Cremers
6374683d17 Visualisation improvement: role variables get priority in assigning concrete values.
Previously, if a local (non-role) variable would have (implicit) agent type,
it would be assigned a concrete term before the roles. This would lead to
non-optimal choices, since we care more about the role instantiations than about other variables.

However, when making traces concrete, we use the run's 'locals' list. Because of
the way this is constructed (in reverse), non-role variables precede the role variables.
We therefore choose to traverse the list in reverse.
2014-07-06 21:31:20 +01:00
Cas Cremers
277bb0a256 BUGFIX: Use name as reference point, not after deVar.
This is not a real bug but only in the sense that the heuristic didn't always work as intended for choosing names.
2014-06-30 23:22:11 +01:00
Cas Cremers
b0e5128e23 Attack output improvement: better choice of agent names.
When an attack pattern is displayed, Scyther instantiates open variables with concrete names.
This is often more intuitive for humans.

In the case of instantiating role names, we often ended up assigning Alice to the B role and
Bob to the A role. This patch provides a more clever heuristic to find agent names
that start with the same letter as the role (variable) name. In case this fails, we
still try to map Alice to roles starting with 'I' and Bob to 'R', and otherwise we just pick something.

Also added "Simon" and "Pete" to cover some common role names.

Conflicts:
	src/arachne.c
2014-06-30 17:06:23 +01:00
Cas Cremers
e966bc88dd BUGFIX: --one-role-per-agent switch had a bug that made it cut too many patterns. 2014-06-20 17:30:13 +01:00
Cas Cremers
4f252d55a7 Bugfix in case commandline text is empty. 2014-06-10 14:55:13 +01:00
Cas Cremers
f1f2f28f61 Rewriting option parser wrapper to ensure memory is not lost.
The option parser wrapper allocated memory in an incorrect way, which
could lead to problems especially with --xml-output, since it would
access the memory at a later point in the execution. This could then
propagate to GUI problems, since the GUI uses the --xml-output switch.
Rewrote the code to be more readable and less incorrect.
2014-06-10 14:37:40 +01:00