how are different nasl scripts linked to each other? there is a difference between the two openvas scans that include group of families and a single family? does families also depend on each other? why?
for example after a scan i can see the log of a.nasl script. the result in the log is found by b.nasl script. how can we know that they are linked and how to know how many scripts a.nasl depends on?
as pointed out via IRC please have a look at the “Golden Rules” and “How to write a product detection VT” parts of the following high level overview / description VT Development which should answer most of the questions.
A short sum-up to your related questions in this thread:
Via the script_dependencies() as well as via the script_require_keys() and/or script_mandatory_keys() described in the linked article.
Families are not relevant for the VT and are only used to allow the end user to create own scan configurations with VTs of specific families.
Via the script_dependencies() described above.
You would need to follow the script_dependencies() of each .nasl file on your local file system and grep through your plugins folder so see the dependencies.
Thank you very much for the response. Is there any priority while mentioning scripts inside script_dependencies(). for example d.nasl has script_dependencies(a.nasl, b.nasl,c.nasl) and I run two different scans:
with single family in scan config: This shows only result of c.nasl and doesnt show the result of a.nasl where both of them belong to the same family as mentioned in scan config.
2)with two families in scan config: This shows result of a.nasl directly without even mentioning c.nasl anywhere in the log.
How are these dependencies related?