Cleanup: Refactoring XML output code to facilitate introduction of protocol xml output.

This commit is contained in:
Cas Cremers 2014-04-15 22:12:43 +01:00
parent dc4432a18f
commit 9cc323004c

View File

@ -676,6 +676,30 @@ xmlRoleEventlist (const System sys, Roledef rd, int index)
xmlPrint ("</eventlist>");
}
//! Output a protocol description
void
xmlProtocol (const System sys, Protocol p)
{
Role r;
xmlPrint ("<protocol>");
xmlindent++;
xmlOutTerm ("name", p->nameterm);
r = p->roles;
while (r != NULL)
{
xmlPrint ("<role>");
xmlindent++;
xmlRoleTermPrint (r->nameterm);
xmlRoleEventlist (sys, r->roledef, 0);
xmlindent--;
xmlPrint ("</role>");
r = r->next;
}
xmlindent--;
xmlPrint ("</protocol>");
}
//! Show all protocol roles that are in the attack.
void
xmlInvolvedProtocolRoles (const System sys)
@ -687,24 +711,7 @@ xmlInvolvedProtocolRoles (const System sys)
{
if (isProtocolInvolved (sys, p))
{
Role r;
xmlPrint ("<protocol>");
xmlindent++;
xmlOutTerm ("name", p->nameterm);
r = p->roles;
while (r != NULL)
{
xmlPrint ("<role>");
xmlindent++;
xmlRoleTermPrint (r->nameterm);
xmlRoleEventlist (sys, r->roledef, 0);
xmlindent--;
xmlPrint ("</role>");
r = r->next;
}
xmlindent--;
xmlPrint ("</protocol>");
xmlProtocol (sys, p);
}
p = p->next;
}