📄 srvsvc.java
字号:
_dst.enc_ndr_referent(array, 1);
if (array != null) {
_dst = _dst.deferred;
int _arrays = count;
_dst.enc_ndr_long(_arrays);
int _arrayi = _dst.index;
_dst.advance(40 * _arrays);
_dst = _dst.derive(_arrayi);
for (int _i = 0; _i < _arrays; _i++) {
array[_i].encode(_dst);
}
}
}
public void decode(NdrBuffer _src) throws NdrException {
_src.align(4);
count = (int)_src.dec_ndr_long();
int _arrayp = _src.dec_ndr_long();
if (_arrayp != 0) {
_src = _src.deferred;
int _arrays = _src.dec_ndr_long();
int _arrayi = _src.index;
_src.advance(40 * _arrays);
if (array == null) {
if (_arrays < 0 || _arrays > 0xFFFF) throw new NdrException( NdrException.INVALID_CONFORMANCE );
array = new ShareInfo502[_arrays];
}
_src = _src.derive(_arrayi);
for (int _i = 0; _i < _arrays; _i++) {
if (array[_i] == null) {
array[_i] = new ShareInfo502();
}
array[_i].decode(_src);
}
}
}
}
public static class ShareEnumAll extends DcerpcMessage {
public int getOpnum() { return 0x0f; }
public int retval;
public String servername;
public int level;
public NdrObject info;
public int prefmaxlen;
public int totalentries;
public int resume_handle;
public ShareEnumAll(String servername,
int level,
NdrObject info,
int prefmaxlen,
int totalentries,
int resume_handle) {
this.servername = servername;
this.level = level;
this.info = info;
this.prefmaxlen = prefmaxlen;
this.totalentries = totalentries;
this.resume_handle = resume_handle;
}
public void encode_in(NdrBuffer _dst) throws NdrException {
_dst.enc_ndr_referent(servername, 1);
if (servername != null) {
_dst.enc_ndr_string(servername);
}
_dst.enc_ndr_long(level);
int _descr = level;
_dst.enc_ndr_long(_descr);
_dst.enc_ndr_referent(info, 1);
if (info != null) {
_dst = _dst.deferred;
info.encode(_dst);
}
_dst.enc_ndr_long(prefmaxlen);
_dst.enc_ndr_long(resume_handle);
}
public void decode_out(NdrBuffer _src) throws NdrException {
level = (int)_src.dec_ndr_long();
_src.dec_ndr_long(); /* union discriminant */
int _infop = _src.dec_ndr_long();
if (_infop != 0) {
if (info == null) { /* YOYOYO */
info = new ShareInfoCtr0();
}
_src = _src.deferred;
info.decode(_src);
}
totalentries = (int)_src.dec_ndr_long();
resume_handle = (int)_src.dec_ndr_long();
retval = (int)_src.dec_ndr_long();
}
}
public static class ShareGetInfo extends DcerpcMessage {
public int getOpnum() { return 0x10; }
public int retval;
public String servername;
public String sharename;
public int level;
public NdrObject info;
public ShareGetInfo(String servername,
String sharename,
int level,
NdrObject info) {
this.servername = servername;
this.sharename = sharename;
this.level = level;
this.info = info;
}
public void encode_in(NdrBuffer _dst) throws NdrException {
_dst.enc_ndr_referent(servername, 1);
if (servername != null) {
_dst.enc_ndr_string(servername);
}
_dst.enc_ndr_string(sharename);
_dst.enc_ndr_long(level);
}
public void decode_out(NdrBuffer _src) throws NdrException {
_src.dec_ndr_long(); /* union discriminant */
int _infop = _src.dec_ndr_long();
if (_infop != 0) {
if (info == null) { /* YOYOYO */
info = new ShareInfo0();
}
_src = _src.deferred;
info.decode(_src);
}
retval = (int)_src.dec_ndr_long();
}
}
public static class ServerInfo100 extends NdrObject {
public int platform_id;
public String name;
public void encode(NdrBuffer _dst) throws NdrException {
_dst.align(4);
_dst.enc_ndr_long(platform_id);
_dst.enc_ndr_referent(name, 1);
if (name != null) {
_dst = _dst.deferred;
_dst.enc_ndr_string(name);
}
}
public void decode(NdrBuffer _src) throws NdrException {
_src.align(4);
platform_id = (int)_src.dec_ndr_long();
int _namep = _src.dec_ndr_long();
if (_namep != 0) {
_src = _src.deferred;
name = _src.dec_ndr_string();
}
}
}
public static class ServerGetInfo extends DcerpcMessage {
public int getOpnum() { return 0x15; }
public int retval;
public String servername;
public int level;
public NdrObject info;
public ServerGetInfo(String servername, int level, NdrObject info) {
this.servername = servername;
this.level = level;
this.info = info;
}
public void encode_in(NdrBuffer _dst) throws NdrException {
_dst.enc_ndr_referent(servername, 1);
if (servername != null) {
_dst.enc_ndr_string(servername);
}
_dst.enc_ndr_long(level);
}
public void decode_out(NdrBuffer _src) throws NdrException {
_src.dec_ndr_long(); /* union discriminant */
int _infop = _src.dec_ndr_long();
if (_infop != 0) {
if (info == null) { /* YOYOYO */
info = new ServerInfo100();
}
_src = _src.deferred;
info.decode(_src);
}
retval = (int)_src.dec_ndr_long();
}
}
public static class TimeOfDayInfo extends NdrObject {
public int elapsedt;
public int msecs;
public int hours;
public int mins;
public int secs;
public int hunds;
public int timezone;
public int tinterval;
public int day;
public int month;
public int year;
public int weekday;
public void encode(NdrBuffer _dst) throws NdrException {
_dst.align(4);
_dst.enc_ndr_long(elapsedt);
_dst.enc_ndr_long(msecs);
_dst.enc_ndr_long(hours);
_dst.enc_ndr_long(mins);
_dst.enc_ndr_long(secs);
_dst.enc_ndr_long(hunds);
_dst.enc_ndr_long(timezone);
_dst.enc_ndr_long(tinterval);
_dst.enc_ndr_long(day);
_dst.enc_ndr_long(month);
_dst.enc_ndr_long(year);
_dst.enc_ndr_long(weekday);
}
public void decode(NdrBuffer _src) throws NdrException {
_src.align(4);
elapsedt = (int)_src.dec_ndr_long();
msecs = (int)_src.dec_ndr_long();
hours = (int)_src.dec_ndr_long();
mins = (int)_src.dec_ndr_long();
secs = (int)_src.dec_ndr_long();
hunds = (int)_src.dec_ndr_long();
timezone = (int)_src.dec_ndr_long();
tinterval = (int)_src.dec_ndr_long();
day = (int)_src.dec_ndr_long();
month = (int)_src.dec_ndr_long();
year = (int)_src.dec_ndr_long();
weekday = (int)_src.dec_ndr_long();
}
}
public static class RemoteTOD extends DcerpcMessage {
public int getOpnum() { return 0x1c; }
public int retval;
public String servername;
public TimeOfDayInfo info;
public RemoteTOD(String servername, TimeOfDayInfo info) {
this.servername = servername;
this.info = info;
}
public void encode_in(NdrBuffer _dst) throws NdrException {
_dst.enc_ndr_referent(servername, 1);
if (servername != null) {
_dst.enc_ndr_string(servername);
}
}
public void decode_out(NdrBuffer _src) throws NdrException {
int _infop = _src.dec_ndr_long();
if (_infop != 0) {
if (info == null) { /* YOYOYO */
info = new TimeOfDayInfo();
}
info.decode(_src);
}
retval = (int)_src.dec_ndr_long();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -