seqdiag {
// Do not show activity line
activation = none;
// actor order
Client
Attacker
AP
// auth
Client -> AP [diagonal, label = "Authentication Request"];
Client <- AP [diagonal, label = "Authentication Response"];
// association
Client -> AP [diagonal, label = "Association Request"];
Client <- AP [diagonal, label = "Association Response"];
// normal function
Client -> AP [diagonal, label = "Data"];
// attack is mounted
Attacker -> AP [diagonal, label = "Deauthentication", color = red];
// failed data attempt -- attack has done its work
Client -> AP [diagonal, label = "Data", failed, note="Blocked"];
Client <- AP [diagonal, label = "Deauthentication"];
}