GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > LCS / V1-2-1

Constituent: lcs_test     Tag: rad750


Interface   Data Structures   File List   Data Fields   Globals  

LCS_robust.c File Reference

Test robustness. More...

#include <stdio.h>
#include <string.h>
#include <time.h>
#include "ITC/ITC_drvdefs.h"
#include "ITC/ITC_pubdefs.h"
#include "LCS/LCS_msgs.h"
#include "LCS_prvdefs.h"
#include "LCS_prvtest.h"

Include dependency graph for LCS_robust.c:

Include dependency graph

Functions

unsigned int length (void *prm, LTX_Engine *txe, LCBD_cl_event *cl)
 Corrupt the message length.

unsigned int sequence (void *prm, LTX_Engine *txe, LCBD_cl_event *cl)
 The mis-sequence test point plug-in.

unsigned int stall (void *prm, LTX_Engine *txe, LCBD_cl_event *cl)
 The stall test point plug-in.

unsigned int transaction (void *prm, LTX_Engine *txe, LCBD_cl_event *cl)
 The transaction number test point plug-in.

unsigned int LCS_testLength (ITC_QueueID qid)
 Deliberately damage a message length.

unsigned int LCS_testSequence (ITC_QueueID qid, int tgt)
 Deliberately damage a packet sequence count.

unsigned int LCS_testStall (ITC_QueueID qid, int tgt)
 Deliberately stall a transmission.

unsigned int LCS_testTransaction (ITC_QueueID qid, int tgt)
 Deliberately damage a packet transaction number.


Detailed Description

Test robustness.

CVS $Id: LCS_robust.c,v 1.3 2005/09/08 03:54:13 apw Exp $
Author:
A.P.Waite

Function Documentation

unsigned int LCS_testLength ITC_QueueID  qid  ) 
 

Deliberately damage a message length.

Parameters:
qid (in) Queue/engine to corrupt
LCS_testLength() will deliberately damage the message length (make it too large) the next time a protocol 3 allocation request is sent.

Here is the call graph for this function:

unsigned int LCS_testSequence ITC_QueueID  qid,
int  tgt
 

Deliberately damage a packet sequence count.

Parameters:
qid (in) Queue/engine to corrupt
tgt (in) Target packet to corrupt
Warning:
Only protocol 3 transactions make use of the sequence number, so the corruption set up here will be only be applied to the next protocol 3 transaction seen. Protocol 2 transactions are not affected (nor do they cancel this one-shot corruption).
LCS_testSequence() will deliberately damage the sequence count the next time it sees the sequence number tgt on queue/engine qid.

Here is the call graph for this function:

unsigned int LCS_testStall ITC_QueueID  qid,
int  tgt
 

Deliberately stall a transmission.

Parameters:
qid (in) Queue/engine to stall
tgt (in) Target packet to stall
Warning:
Only protocol 3 transactions can be stalled (it makes no sense to stall the single packet of a protocol 2 transaction ... how does the receiver figure out that it didn't receive something which it never knew was coming!), so the corruption set up here will be only be applied to the next protocol 3 transaction seen. Protocol 2 transactions are not affected (nor do they cancel this one-shot corruption).
LCS_testStall() will deliberately stall transmission at the target packet.

Here is the call graph for this function:

unsigned int LCS_testTransaction ITC_QueueID  qid,
int  tgt
 

Deliberately damage a packet transaction number.

Parameters:
qid (in) Queue/engine to corrupt
tgt (in) Target packet to corrupt
Warning:
Only protocol 3 transactions make use of the transaction number, so the corruption set up here will be only be applied to the next protocol 3 transaction seen. Protocol 2 transactions are not affected (nor do they cancel this one-shot corruption).
LCS_testTransaction() will deliberately damage the transaction number the next time it sees the sequence number tgt on queue/engine qid.

Here is the call graph for this function:

unsigned int length void *  prm,
LTX_Engine *  txe,
LCBD_cl_event *  cl
[static]
 

Corrupt the message length.

Parameters:
prm (in) User parameter
txe (in) LTX transmit engine
cl (in) LCB command list

unsigned int sequence void *  prm,
LTX_Engine *  txe,
LCBD_cl_event *  cl
[static]
 

The mis-sequence test point plug-in.

Parameters:
prm (in) User parameter
txe (in) LTX transmit engine
cl (in) LCB command list

unsigned int stall void *  prm,
LTX_Engine *  txe,
LCBD_cl_event *  cl
[static]
 

The stall test point plug-in.

Parameters:
prm (in) User parameter
txe (in) LTX transmit engine
cl (in) LCB command list

unsigned int transaction void *  prm,
LTX_Engine *  txe,
LCBD_cl_event *  cl
[static]
 

The transaction number test point plug-in.

Parameters:
prm (in) User parameter
txe (in) LTX transmit engine
cl (in) LCB command list


Generated on Tue Sep 20 21:46:53 2005 by doxygen 1.3.3