FileDocCategorySizeDatePackage
SmbComNtTransaction.javaAPI DocJCIFS 1.3.17 API3188Tue Oct 18 15:26:24 BST 2011jcifs.smb

SmbComNtTransaction

public abstract class SmbComNtTransaction extends SmbComTransaction

Fields Summary
private static final int
NTT_PRIMARY_SETUP_OFFSET
private static final int
NTT_SECONDARY_PARAMETER_OFFSET
static final int
NT_TRANSACT_QUERY_SECURITY_DESC
int
function
Constructors Summary
SmbComNtTransaction()


     
        super();
        primarySetupOffset = NTT_PRIMARY_SETUP_OFFSET;
        secondaryParameterOffset = NTT_SECONDARY_PARAMETER_OFFSET;
    
Methods Summary
intwriteParameterWordsWireFormat(byte[] dst, int dstIndex)

        int start = dstIndex;

        if (command != SMB_COM_NT_TRANSACT_SECONDARY) {
            dst[dstIndex++] = maxSetupCount;
        } else {
            dst[dstIndex++] = (byte)0x00;          // Reserved
        }
        dst[dstIndex++] = (byte)0x00;          // Reserved
        dst[dstIndex++] = (byte)0x00;          // Reserved
        writeInt4( totalParameterCount, dst, dstIndex );
        dstIndex += 4;
        writeInt4( totalDataCount, dst, dstIndex );
        dstIndex += 4;
        if (command != SMB_COM_NT_TRANSACT_SECONDARY) {
            writeInt4( maxParameterCount, dst, dstIndex );
            dstIndex += 4;
            writeInt4( maxDataCount, dst, dstIndex );
            dstIndex += 4;
        }
        writeInt4( parameterCount, dst, dstIndex );
        dstIndex += 4;
        writeInt4(( parameterCount == 0 ? 0 : parameterOffset ), dst, dstIndex );
        dstIndex += 4;
        if (command == SMB_COM_NT_TRANSACT_SECONDARY) {
            writeInt4( parameterDisplacement, dst, dstIndex );
            dstIndex += 4;
        }
        writeInt4( dataCount, dst, dstIndex );
        dstIndex += 4;
        writeInt4(( dataCount == 0 ? 0 : dataOffset ), dst, dstIndex );
        dstIndex += 4;
        if (command == SMB_COM_NT_TRANSACT_SECONDARY) {
            writeInt4( dataDisplacement, dst, dstIndex );
            dstIndex += 4;
            dst[dstIndex++] = (byte)0x00;      // Reserved1
        } else {
            dst[dstIndex++] = (byte)setupCount;
            writeInt2( function, dst, dstIndex );
            dstIndex += 2;
            dstIndex += writeSetupWireFormat( dst, dstIndex );
        }

        return dstIndex - start;