Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

getTransitions() doesn't return all possible correct transitions #404

Open
rakshitkr opened this issue Sep 19, 2020 · 3 comments
Open

getTransitions() doesn't return all possible correct transitions #404

rakshitkr opened this issue Sep 19, 2020 · 3 comments

Comments

@rakshitkr
Copy link
Contributor

rakshitkr commented Sep 19, 2020

The method getTransitions in StateMachineGraphAnalyser is currently unable to handle multiple initial transitions like in SSLParameters rule. Additionally, it is doesn't return expected transitions when | operator is used in ORDER section.

In order to avoid cycles in the graph, the code here skips already visited transition in the graph. Since Stores is already visited in Gets->Loads->GetEntry->GetKey->SetEntry->Stores, the transitions Gets->Loads->SetEntry->Stores and Gets->Loads->GetKey->SetEntry->Stores containing Stores are skipped

@rakshitkr
Copy link
Contributor Author

rakshitkr commented Sep 19, 2020

Happens for MessageDigest rule

Expected:

Gets, DWOU
Gets, Updates, Digests
Gets, DWOU, Updates, Digests

Returned:

Gets, DWOU
Gets, DWOU, Updates, Digests

@rakshitkr
Copy link
Contributor Author

rakshitkr commented Oct 24, 2020

Happens for KeyStore rule

Expected:

Gets, Loads, GetEntry, GetKey, SetEntry, Stores
Gets, Loads, GetKey, SetEntry, Stores
Gets, Loads, GetEntry, GetKey
Gets, Loads, SetEntry, Stores
Gets, Loads, GetKey
Gets, Loads

Returned:

Gets, Loads, GetEntry, GetKey, SetEntry, Stores
Gets, Loads, GetEntry, GetKey
Gets, Loads, GetKey
Gets, Loads

@rakshitkr
Copy link
Contributor Author

rakshitkr commented Oct 24, 2020

Happens for SecureRandom rule

Expected:

Ins, Seeds, Ends, Seeds
Ins, Ends, Seeds
Ins, Seeds, Seeds
Ins, Seeds, Ends
Ins, Seeds
Ins, Ends
Ins

Returned:

Ins, Seeds, Ends, Seeds
Ins, Seeds, Ends
Ins, Seeds
Ins, Ends
Ins

@rakshitkr rakshitkr changed the title getTransitions method is not returning all possible transitions getTransitions() doesn't return all possible correct transitions Dec 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant