public WrapToken_v2(Krb5Context context,MessageProp prop,byte[] dataBytes,int dataOffset,int dataLen) throws GSSException {
  super(Krb5Token.WRAP_ID_v2,context);
  confounder=Confounder.bytes(CONFOUNDER_SIZE);
  genSignAndSeqNumber(prop,dataBytes,dataOffset,dataLen);
  if (!context.getConfState())   prop.setPrivacy(false);
  privacy=prop.getPrivacy();
  if (!privacy) {
    tokenData=new byte[dataLen + checksum.length];
    System.arraycopy(dataBytes,dataOffset,tokenData,0,dataLen);
    System.arraycopy(checksum,0,tokenData,dataLen,checksum.length);
  }
 else {
    tokenData=cipherHelper.encryptData(this,confounder,getTokenHeader(),dataBytes,dataOffset,dataLen,getKeyUsage());
  }
}

public WrapToken_v2 ( Krb5Context context , MessageProp prop , byte [ ] dataBytes , int dataOffset , int dataLen ) throws GSSException { super ( Krb5Token . WRAP_ID_v2 , context ) ; confounder = Confounder . bytes ( CONFOUNDER_SIZE ) ; genSignAndSeqNumber ( prop , dataBytes , dataOffset , dataLen ) ; if ( ! context . getConfState ( ) ) prop . setPrivacy ( false ) ; privacy = prop . getPrivacy ( ) ; if ( ! privacy ) { tokenData = new byte [ dataLen + checksum . length ] ; System . arraycopy ( dataBytes , dataOffset , tokenData , 0 , dataLen ) ; System . arraycopy ( checksum , 0 , tokenData , dataLen , checksum . length ) ; } else { tokenData = cipherHelper . encryptData ( this , confounder , getTokenHeader ( ) , dataBytes , dataOffset , dataLen , getKeyUsage ( ) ) ; } }
writes a wraptoken_v2 object
