mirror of
https://github.com/samba-team/samba.git
synced 2025-01-04 05:18:06 +03:00
parent
f221bfa4ac
commit
3d4b2c8b5e
@ -39,7 +39,7 @@ BOOL do_event_open(struct cli_state *cli, uint16 fnum, char *log, POLICY_HND *hn
|
||||
prs_init(&rbuf, 0 , 4, SAFETY_MARGIN, True );
|
||||
|
||||
/* store the parameters */
|
||||
make_eventlog_q_open(&q, log);
|
||||
make_eventlog_q_open(&q, log, NULL);
|
||||
|
||||
/* turn parameters into data stream */
|
||||
eventlog_io_q_open("", &q, &buf, 0);
|
||||
|
@ -27,21 +27,21 @@ extern int DEBUGLEVEL;
|
||||
|
||||
/*******************************************************************
|
||||
********************************************************************/
|
||||
void make_eventlog_q_open(EVENTLOG_Q_OPEN *q_u, char *journal)
|
||||
void make_eventlog_q_open(EVENTLOG_Q_OPEN *q_u, char *journal, char *unk)
|
||||
{
|
||||
q_u->ptr0=0x1;
|
||||
int len_journal = journal != NULL ? strlen(journal) : 0;
|
||||
int len_unk = unk != NULL ? strlen(unk) : 0;
|
||||
|
||||
q_u->ptr0=0x1;
|
||||
q_u->unk0=0x5c;
|
||||
q_u->unk1=0x01;
|
||||
|
||||
q_u->unk2=2*(strlen(journal)+1);
|
||||
q_u->unk3=2*(strlen(journal)+1);
|
||||
|
||||
q_u->ptr_source=0x01;
|
||||
make_buf_unistr2(&(q_u->source), &(q_u->ptr_source), journal);
|
||||
make_uni_hdr(&(q_u->hdr_source), len_journal);
|
||||
make_unistr2(&(q_u->uni_source), journal, len_journal);
|
||||
|
||||
make_uni_hdr(&(q_u->hdr_unk), len_unk);
|
||||
make_unistr2(&(q_u->uni_unk), unk, len_unk);
|
||||
|
||||
q_u->unk4=0x00;
|
||||
q_u->unk5=0x00;
|
||||
q_u->unk6=0x01;
|
||||
q_u->unk7=0x01;
|
||||
}
|
||||
@ -59,16 +59,17 @@ void eventlog_io_q_open(char *desc, EVENTLOG_Q_OPEN *q_u, prs_struct *ps, int de
|
||||
|
||||
prs_uint16("unk0", ps, depth, &(q_u->unk0));
|
||||
prs_uint16("unk1", ps, depth, &(q_u->unk1));
|
||||
prs_uint16("unk2", ps, depth, &(q_u->unk2));
|
||||
prs_uint16("unk3", ps, depth, &(q_u->unk3));
|
||||
|
||||
prs_uint32("ptr_source", ps, depth, &(q_u->ptr_source));
|
||||
|
||||
smb_io_unistr2("", &(q_u->source), q_u->ptr_source, ps, depth);
|
||||
smb_io_unihdr("hdr_source", &(q_u->hdr_source), ps, depth);
|
||||
smb_io_unistr2("uni_source", &(q_u->uni_source),
|
||||
q_u->hdr_source.buffer, ps, depth);
|
||||
prs_align(ps);
|
||||
|
||||
smb_io_unihdr("hdr_unk", &(q_u->hdr_unk), ps, depth);
|
||||
smb_io_unistr2("uni_unk", &(q_u->uni_unk),
|
||||
q_u->hdr_unk.buffer, ps, depth);
|
||||
prs_align(ps);
|
||||
|
||||
prs_uint32("unk4", ps, depth, &(q_u->unk4));
|
||||
prs_uint32("unk5", ps, depth, &(q_u->unk5));
|
||||
prs_uint32("unk6", ps, depth, &(q_u->unk6));
|
||||
prs_uint32("unk7", ps, depth, &(q_u->unk7));
|
||||
}
|
||||
@ -90,7 +91,6 @@ void eventlog_io_r_open(char *desc, EVENTLOG_R_OPEN *r_u, prs_struct *ps, int de
|
||||
void make_eventlog_q_close(EVENTLOG_Q_CLOSE *q_u, POLICY_HND *pol)
|
||||
{
|
||||
memcpy(&(q_u->pol.data), pol->data, sizeof(q_u->pol.data));
|
||||
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
@ -102,7 +102,6 @@ void eventlog_io_q_close(char *desc, EVENTLOG_Q_CLOSE *q_u, prs_struct *ps, int
|
||||
|
||||
prs_align(ps);
|
||||
smb_io_pol_hnd("", &(q_u->pol), ps, depth);
|
||||
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
|
@ -41,9 +41,10 @@ extern FILE* out_hnd;
|
||||
void cmd_eventlog(struct client_info *info)
|
||||
{
|
||||
uint16 nt_pipe_fnum;
|
||||
BOOL res = True;
|
||||
BOOL res = True;
|
||||
BOOL res1 = True;
|
||||
POLICY_HND hnd;
|
||||
uint32 number;
|
||||
uint32 number = 0;
|
||||
uint32 flags;
|
||||
uint32 offset;
|
||||
uint32 num_of_bytes;
|
||||
@ -60,17 +61,17 @@ void cmd_eventlog(struct client_info *info)
|
||||
}
|
||||
|
||||
/* open scheduler session. */
|
||||
res = res ? cli_nt_session_open(smb_cli, PIPE_EVENTLOG, &nt_pipe_fnum) : False;
|
||||
res1 = res1 ? cli_nt_session_open(smb_cli, PIPE_EVENTLOG, &nt_pipe_fnum) : False;
|
||||
|
||||
res = res ? do_event_open(smb_cli, nt_pipe_fnum, journal, &hnd) : False;
|
||||
res1 = res1 ? do_event_open(smb_cli, nt_pipe_fnum, journal, &hnd) : False;
|
||||
|
||||
res = res ? do_event_numofeventlogrec(smb_cli, nt_pipe_fnum, &hnd, &number) : False;
|
||||
res = res1 ? do_event_numofeventlogrec(smb_cli, nt_pipe_fnum, &hnd, &number) : False;
|
||||
|
||||
fprintf(out_hnd, "Number of events: %d\n", number);
|
||||
|
||||
display_eventlog_eventrecord(out_hnd, ACTION_HEADER, &ev);
|
||||
|
||||
for (offset=0; offset<number; offset++)
|
||||
for (offset = 0; offset < number && res; offset++)
|
||||
{
|
||||
num_of_bytes=0;
|
||||
|
||||
@ -87,7 +88,7 @@ void cmd_eventlog(struct client_info *info)
|
||||
|
||||
display_eventlog_eventrecord(out_hnd, ACTION_FOOTER, &ev);
|
||||
|
||||
res = res ? do_event_close(smb_cli, nt_pipe_fnum, &hnd): False;
|
||||
res1 = res1 ? do_event_close(smb_cli, nt_pipe_fnum, &hnd): False;
|
||||
|
||||
/* close the session */
|
||||
cli_nt_session_close(smb_cli, nt_pipe_fnum);
|
||||
|
Loading…
Reference in New Issue
Block a user