Commit Graph

39 Commits

Author SHA1 Message Date
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
7dcbec07a0 Cleanup: removing unused variables. 2014-03-18 13:53:33 +00:00
Cas Cremers
d06247fcfe Updating time stamps for next release. 2013-10-05 23:56:12 +01:00
Cas Cremers
45d5cb0a3a Cleanup: Cleanup of some spacing, conform coding conventions.
This is simply the result from running reindent.sh again.
2013-06-19 23:03:26 +02:00
Cas Cremers
d88402998e NEW: Added '--one-role-per-agent' switch.
This switch disallows agents from performing multiple roles.

Conflicts:
	src/prune_theorems.c
2012-12-14 17:06:55 +01:00
Cas Cremers
8372078d07 Corrected minor comment typos.
Conflicts:
	src/prune_theorems.c
2012-12-14 17:05:20 +01:00
Cas Cremers
fedd729ab2 Added support for inequality tests.
There is a new event:

  not match(t1,t2)

where t1,t2 are terms.

They are implemented by using a special claim that simply stores the
intended inequality. The pruning theorems (prune_theorems.c) ensure that
these terms never become equal. If there are equal, the constraint is
violated. As long as they are not equal, there exists a solution using
groung terms such that their instantiation is not equal.

Currently not very efficient implemented and the graph out output is
also ugly for now.

Conflicts:
	gui/Scyther/Trace.py
	src/compiler.c
	src/scanner.l
2012-11-21 13:40:15 +01:00
Cas Cremers
ccae884942 Rephrasing comments. 2012-05-01 15:02:45 +02:00
Cas Cremers
5608b29dc0 Refactored first_origination code. 2012-05-01 14:46:01 +02:00
Cas Cremers
2242a5fcbd Fixing read->recv conventions. 2012-04-25 09:53:07 +02:00
Cas Cremers
1cbe9826ac Updated dates. 2012-04-24 13:56:51 +02:00
Cas Cremers
93cbb3e0f8 NEW: Added --role-unique switch to enforce that an agent can perform only one role. 2011-04-01 15:24:14 +02:00
Cas Cremers
5f7138c300 BUGFIX: Partial implementation of chosen name attacks could yield false type flaw attacks.
For the typed model, this was not an issue.
2011-01-18 17:03:20 +01:00
Cas Cremers
9624c49885 Disable some aggressive error reporting: unclear why this is actually invalid per se
in the presence of agent name variables (role names) with non-basic typing.
2010-12-31 15:43:00 +01:00
Cas Cremers
a7c1d8c696 Improved handling of cases with untyped variables.
When untyped variables occur, the encryption level depth pruning is for
now unjustified. Maybe we can get a proof later.  Previously this was
hidden, which was a bad design decision.  Now the output is much
clearer.
2008-01-28 15:23:40 +01:00
Cas Cremers
7d584cca1e Added GPL 2 License to the C sources.
A first step towards releasing Scyther completely to the public.
2007-06-11 14:01:04 +02:00
ccremers
eaf4506634 - Warning fixes. 2007-01-31 11:23:53 +00:00
ccremers
eaa6ef1345 - Added feature for multi-party protocols (weaker precondition on Reachable) 2007-01-16 17:22:51 +00:00
ccremers
89c3a20acf - Many cleanups to make -Wall happy. Next up is pedantic... 2007-01-06 14:45:29 +00:00
ccremers
d87d9ede30 - Fixed some comments. 2006-06-12 14:48:57 +00:00
ccremers
974e5f7315 - Reset encryption level issue. 2006-04-13 12:43:13 +00:00
ccremers
4d7b744e1b - Discovered ugly bit in de-class code, which causes what seem to be
errors with --extravert: even if Alice is already occurring in the
  system, the name can be used.
- Added explicit level 2 encryption bound. This is technically
  incorrect, but for now it should work.
2006-03-31 10:12:58 +00:00
ccremers
cb440700e3 - Added --unique responder/initiator switches, which are both implied by
--extravert.
2006-03-31 08:24:41 +00:00
ccremers
5fe55d35cf - Code refactoring. 2006-03-28 14:45:02 +00:00
ccremers
b224344b59 - Bugfixed --extravert. 2006-03-28 14:24:46 +00:00
ccremers
1ce03104c5 Major:
- Added rho/sigma/constants fields to the runs, on which the new code is
  based. Over time, .locals should be deprecated in favour of these
  better variants.
- Untyped variant is out of grace for the time being (cf. Athena interm
  problems)
- Improved graph output further.

Minor:
- Added TERMLISTADD and APPEND macros for more concise code.
2006-03-15 21:30:19 +00:00
ccremers
2b9246bb64 - Bug report: this should be fixed. 2006-03-15 08:33:09 +00:00
ccremers
2830c8e8ff - Fixed some Doxygen documentation errors. 2006-03-08 12:38:39 +00:00
ccremers
527bf8baa5 - Better error reporting for local order constraints. 2006-02-28 15:33:12 +00:00
ccremers
a4429d548f - Turned 'hidden' term lemma back on by default. 2006-02-28 13:57:38 +00:00
ccremers
00616e45ed - Bit masking was incorrect: & binds less strong than == !
This caused many of the --experimental switches not to work.
2006-02-28 13:41:36 +00:00
ccremers
cf832ca1b1 - Seems to work again, but further testing is needed. 2006-02-27 22:27:09 +00:00
ccremers
b49d13b6ee - [[[ Broken commit. ]]]
Stuff seems to be working again, slightly less efficient though (count
  states).
2006-02-27 16:08:17 +00:00
ccremers
921c82876d - experimental=4 now disables some things. Weirdly enough, they don't
seem to make much difference.
2006-02-22 09:53:50 +00:00
ccremers
dbc0a3583d - Better setup for --experimental= switch using bit masks. 2006-02-22 08:55:42 +00:00
ccremers
b2e40e07f3 - Some more work on hidelevel backbone.
- Added '--count-states' switch for the Arachne engine.
2006-02-22 08:24:29 +00:00
ccremers
bb7259a1ad - Removed some too interesting pruning methods that really need theorems
first. Revealed by the certified e-mail protocol by Abadi and
  Blanchet.
2006-01-17 16:18:26 +00:00
ccremers
6676266f4a - More refactoring to improve the code. 2006-01-02 20:18:47 +00:00
ccremers
e592a0a432 - Refactoring code: splitting stuff out of arachne.c 2006-01-02 18:43:25 +00:00