# CfXitData Structure

The CfXitData structure is contained in the CfXitData.h file, which is by default located in the $CFROOT/samples directory.

See the following example of the CfXitData.h file:

    typedef struct __CfXitData {
    	int StatusDiagCode;
    	BYTE StatusSeverity;
    	BYTE Compression;
    	char RecordFormat[2];
    	short int BlockSize;
    	BYTE PermittedActions;
    	char StatusMsg[255];
    	char LocalUserId[255];
    	DWORD Key;
    	DWORD AllocationPrimary;
    	DWORD AllocationSecondary;
    	DWORD RecordLength;
    	DWORD EncryptionType;
    	char VolSer[7];
    	int IsVolSer;
    	char UNIT[9];
    	int IsUnit;
    	char AllocationType[2];
    	char NewFileAvail[2];
    	char LocalPassword[255];
    	char IpAddress[255];
    	char RemoteUserId[255];
    	char RemotePassword[255];
    	char RemoteDomain[255];
    	char LocalFileName[255];
    	char RemoteFileName[255];
    	char TraceFileName[255];
    	char WriteMode[2];
    	char TransferFunction[2];
    	char TransactionNumber[11];
    	char TransferWork[2];
    	char CheckPointRestart[2];
    	char CR_LF[2];
    	int DataType;
    	int Port;
    	DWORD ByteCount;
    	BOOL FirstTime;
    	int GoingToRetry;
    	int TryCount;
    	int TriedCount;
    }CfXitData;

The following table lists the parameters that define the CfXitData structure:

Field Names | Data Type | Field Values
--- | --- | ---
StatusDiagCode | int | Indicates the return code on reply: x00: Success x01: Failure x09: Abort
StatusSeverity | BYTE | Indicates the severity of the transfer status: x00: Success x01: Informational x02: Warning x03: Error x10: No Checkpoint x20: No Restart x80: Retry network error x81: Retry file error
Compression | BYTE | Indicates the type of compressions: x00: No compression x11: LZ compression x12: RLE compression
RecordFormat | char[2] | Indicates the remote file record format: F: Fixed blocked V: Variable blocked U: Undefined X: Fixed Y: Variable
BlockSize | Short int | Indicates the z/OS dataset block size.
PermittedActions | BYTE | Indicates the type of permitted actions: x00: None x02: EOF x04: CRLFEOF x08: System x10: Hidden x20: Archive x40: Read Only x80: NTFS Compressed
StatusMsg | char[255] | Indicates the text message with transfer status.
LocalUserId | char[255] | Indicates the local user ID that initiates the transfer.
AllocationPrimary | DWORD | Indicates the initial number of units for physical storage to allocate when creating datasets.
AllocationSecondary | DWORD | Indicates the next number of units for physical storage to allocate as soon as the initial allocation in the datasets is used up.
RecordLength | DWORD | Indicates the maximum logical record length, that is, the string length used to encode the data records of the file. The maximum logical record length in a z/OS system is 32,760. For best results, you might omit this parameter if you want to send or receive a file into a file that already exists, because the file can be determined with an appropriate length . Note: This parameter is ignored when you perform a send transfer to TIBCO MFT Platform Server for Windows, because it is a z/OS-specific parameter.
EncryptionType | DWORD | Indicates the type of encryption: x80: Data is not encrypted (check x00 too) x40: DES Encryption x20: 3DE Encryption x10: Blowfish Encryption x08: Blowfish Long x04: Rijndael x00: No encryption (check x80 too)
VolSer | char[7] | Indicates the remote file volume name.
IsVolSer | int | N/A
UNIT | char[9] | Indicates the remote file unit name.
IsUnit | int | N/A
AllocationType | char[2] | Indicates the type of allocation: T: Tracks C: Cylinders K: Kilobytes M: Megabytes
NewFileAvail | char[2] | Indicates whether the new file is available: I: Immediate D: Deferred (Tape)
LocalPassword | char[255] | Indicates the password for local system (occasionally NULL).
IpAddress | char[255] | Indicates the IP address of the remote system.
RemoteUserId | char[255] | Indicates the user ID on the remote system.
RemotePassword | char[255] | Indicates the password to log in to the remote system.
RemoteDomain | char[255] | Indicates the Windows NT Domain for login (not required in all transfers).
LocalFileName | char[255] | Indicates the name of the local file for the transfer.
RemoteFileName | char[255] | Indicates the name of the remote file for the transfer.
TraceFileName | char[255] | Indicates the name of the file which tracing is logged to.
WriteMode | char[2] | Indicates the options for file creation: R: Replace A: Append C: Create X: Create / Replace Y: Create / Append Z: Create / Replace / New
TransferFunction | char[2] | Indicates the transfer types: S: Send R: Receive
TransactionNumber | char[11] | Indicates the transaction number for the transfer.
TransferWork | char[2] | Indicates the type of file transfers: F: File to File P: File to Print C: Remote Command J: File to Job
CheckPointRestart | char[2] | Indicates whether to use checkpoint: Y: Checkpoint used N: Checkpoint not used
CR_LF | char[2] | Indicates whether to use the CR/LF delimitation: Y: Yes N: No L: Line Feed only
DataType | int | Indicates the type of data: 0: Binary 1: ASCII 2: EBCDIC
Port | int | Indicates the IP port number used for transfer.
ByteCount | DWORD | Indicates the number of bytes transmitted.
GoingToRetry | int | Indicates whether the transfer is successful and to retry: 0: transfer is successful and never retried. 4: transfer is unsuccessful due to a network error and to retry later. 8: transfer is unsuccessful due to something other than a network error and to retry later.
TryCount | int | Indicates the value assigned to the TryNumber parameter.
TriedCount | int | Indicates the number of attempts for transfer.

Copyright © 2022. TIBCO Software Inc. All Rights Reserved.