@Override protected int readDataWireFormat ( byte[] buffer, int bufferIndex, int len ) { int start = bufferIndex; SmbShareInfo e; setUseUnicode(false); SmbShareInfo[] results = new SmbShareInfo[getNumEntries()]; for ( int i = 0; i < getNumEntries(); i++ ) { results[ i ] = e = new SmbShareInfo(); e.netName = readString(buffer, bufferIndex, 13, false); bufferIndex += 14; e.type = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; int off = SMBUtil.readInt4(buffer, bufferIndex); bufferIndex += 4; off = ( off & 0xFFFF ) - this.converter; off = start + off; e.remark = readString(buffer, off, 128, false); if ( log.isTraceEnabled() ) { log.trace(e.toString()); } } setResults(results); return bufferIndex - start; }
@Override public String toString () { return new String( "NetShareEnumResponse[" + super.toString() + ",status=" + getStatus() + ",converter=" + this.converter + ",entriesReturned=" + getNumEntries() + ",totalAvailableEntries=" + this.totalAvailableEntries + "]"); } }
@Override protected int readParametersWireFormat ( byte[] buffer, int bufferIndex, int len ) { int start = bufferIndex; setStatus(SMBUtil.readInt2(buffer, bufferIndex)); bufferIndex += 2; this.converter = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; setNumEntries(SMBUtil.readInt2(buffer, bufferIndex)); bufferIndex += 2; this.totalAvailableEntries = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; return bufferIndex - start; }
static FileEntry[] doNetShareEnum ( SmbTreeHandleImpl th ) throws CIFSException { SmbComTransaction req = new NetShareEnum(th.getConfig()); SmbComTransactionResponse resp = new NetShareEnumResponse(th.getConfig()); th.send(req, resp); if ( resp.getStatus() != WinError.ERROR_SUCCESS ) throw new SmbException(resp.getStatus(), true); return resp.getResults(); }
@Override protected int readParametersWireFormat ( byte[] buffer, int bufferIndex, int len ) { int start = bufferIndex; setStatus(SMBUtil.readInt2(buffer, bufferIndex)); bufferIndex += 2; this.converter = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; setNumEntries(SMBUtil.readInt2(buffer, bufferIndex)); bufferIndex += 2; this.totalAvailableEntries = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; return bufferIndex - start; }
static FileEntry[] doNetShareEnum ( SmbTreeHandleImpl th ) throws CIFSException { SmbComTransaction req = new NetShareEnum(th.getConfig()); SmbComTransactionResponse resp = new NetShareEnumResponse(th.getConfig()); th.send(req, resp); if ( resp.getStatus() != WinError.ERROR_SUCCESS ) throw new SmbException(resp.getStatus(), true); return resp.getResults(); }
@Override protected int readDataWireFormat ( byte[] buffer, int bufferIndex, int len ) { int start = bufferIndex; SmbShareInfo e; setUseUnicode(false); SmbShareInfo[] results = new SmbShareInfo[getNumEntries()]; for ( int i = 0; i < getNumEntries(); i++ ) { results[ i ] = e = new SmbShareInfo(); e.netName = readString(buffer, bufferIndex, 13, false); bufferIndex += 14; e.type = SMBUtil.readInt2(buffer, bufferIndex); bufferIndex += 2; int off = SMBUtil.readInt4(buffer, bufferIndex); bufferIndex += 4; off = ( off & 0xFFFF ) - this.converter; off = start + off; e.remark = readString(buffer, off, 128, false); if ( log.isTraceEnabled() ) { log.trace(e.toString()); } } setResults(results); return bufferIndex - start; }
@Override public String toString () { return new String( "NetShareEnumResponse[" + super.toString() + ",status=" + getStatus() + ",converter=" + this.converter + ",entriesReturned=" + getNumEntries() + ",totalAvailableEntries=" + this.totalAvailableEntries + "]"); } }