// Purpose
// unknown
int sec_flags = RDPConnection.conf.encryption ? (RDP5_FLAG | Secure.SEC_ENCRYPT) : RDP5_FLAG;
RdpPackage data = SecureLayer.init(sec_flags, 6 + 14 + caplen + RDP_SOURCE.length);
// RdpPackage data = this.init(14 + caplen +
// RDP_SOURCE.length);
data.setLittleEndian16(2 + 14 + caplen + RDP_SOURCE.length);
data.setLittleEndian16((RDP_PDU_CONFIRM_ACTIVE | 0x10));
data.setLittleEndian16(RDPConnection.conf.mcs.getUserID() /* McsUserID() */ + 1001);
data.setLittleEndian32(this.rdp_shareid);
data.setLittleEndian16(0x3ea); // user id
data.setLittleEndian16(RDP_SOURCE.length);
data.setLittleEndian16(caplen);
data.copyFromByteArray(RDP_SOURCE, 0, data.getPosition(),
RDP_SOURCE.length);
data.incrementPosition(RDP_SOURCE.length);
data.setLittleEndian16(0xd); // num_caps
data.incrementPosition(2); // pad
this.sendGeneralCaps(data);
// ta.incrementPosition(this.RDP_CAPLEN_GENERAL);
this.sendBitmapCaps(data);
this.sendOrderCaps(data);
// if (RDPConnection.conf.use_rdp5 && RDPConnection.conf.persistent_bitmap_caching) {
if (RDPConnection.conf.use_rdp5) {
// logger.info("Persistent caching enabled");
this.sendBitmapcache2Caps(data);
} else {
this.sendBitmapcacheCaps(data);
}
this.sendColorcacheCaps(data);
this.sendActivateCaps(data);
this.sendControlCaps(data);
this.sendPointerCaps(data);
this.sendShareCaps(data);
// this.sendUnknownCaps(data);
this.sendUnknownCaps(data, 0x0d, 0x58, caps_0x0d); // rdp_out_unknown_caps(s,
// 0x0d, 0x58,
// caps_0x0d); /*
// international? */
this.sendUnknownCaps(data, 0x0c, 0x08, caps_0x0c); // rdp_out_unknown_caps(s,
// 0x0c, 0x08,
// caps_0x0c);
this.sendUnknownCaps(data, 0x0e, 0x08, caps_0x0e); // rdp_out_unknown_caps(s,
// 0x0e, 0x08,
// caps_0x0e);
this.sendUnknownCaps(data, 0x10, 0x34, caps_0x10); // rdp_out_unknown_caps(s,
// 0x10, 0x34,
// caps_0x10); /*
// glyph cache? */
data.markEnd();
// logger.debug("confirm active");
// this.send(data, RDP_PDU_CONFIRM_ACTIVE);
RDPConnection.conf.secure.send(data, sec_flags);
}