Luc,
I have to post
an updated patch because I overlooked one case in my original test – the output
redirection was left enabled after the sial command completed. It caused
subsequent sial commands to be redirected (undesirable).
This update saves
and restores the original fp at the end of a redirection. Sorry...
- Robert -
Generated By:
Teradata Corporation (Mon Nov 12 21:19:08 PST 2007)
extensions.c
| 12 +++++++++++++++++++++++++++++++++++++++++++++++++
extensions/sial.c
| 13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files
changed, 25 insertions(+), 0 deletions(-)
Index:
crash-4.0-4.8/extensions/sial.c
===================================================================
--- crash-4.0-4.8-orig/extensions/sial.c
2007-11-12 21:15:36.000000000 -0800
+++
crash-4.0-4.8/extensions/sial.c 2007-11-12 21:19:03.000000000 -0800
@@ -638,7
+638,20 @@
run_callback(void)
{
extern char
*crash_global_cmd();
+extern FILE
*crash_cmd_filep();
+
+ FILE
*fp,
+
*ofp = NULL;
+
+ if ((fp
= crash_cmd_filep()) != NULL) {
+
ofp = sial_getofile();
+
sial_setofile(fp);
+ }
+
sial_cmd(crash_global_cmd(), args, argcnt);
+ if (ofp)
{
+
sial_setofile(ofp);
+ }
}
Index:
crash-4.0-4.8/extensions.c
===================================================================
---
crash-4.0-4.8-orig/extensions.c 2007-11-12 21:15:36.000000000 -0800
+++
crash-4.0-4.8/extensions.c 2007-11-12 21:15:57.000000000 -0800
@@ -374,3
+374,15 @@
{
return
pc->cmd_table;
}
+
+FILE *
+crash_cmd_filep(void)
+{
+ if
(pc->redirect & REDIRECT_TO_FILE) {
+
return pc->ofile;
+ } else
if (pc->redirect & REDIRECT_TO_PIPE) {
+
return pc->pipe;
+ } else {
+
return NULL;
+ }
+}
From:
crash-utility-bounces@redhat.com [mailto:crash-utility-bounces@redhat.com] On Behalf Of Chouinard, Luc
Sent: Monday, November 12, 2007
5:20 PM
To: Discussion list for crash
utility usage, maintenance and development; crash-utility@redhat.com
Subject: RE: [Crash-utility] sial
output redirection
Very useful thing to have. Looks good. Dave can you
queue it?
Luc
-----Original Message-----
From: crash-utility-bounces@redhat.com on behalf of Denman, Robert
Sent: Mon 11/12/2007 6:43 PM
To: crash-utility@redhat.com
Subject: [Crash-utility] sial output redirection
Luc,
The following patch will allow the output of SIAL commands to be
redirected to a file or pipe. I did not handle all cases supported by
crash (e.g. multi-pipes), only simple output redirection. Would you
please consider this change or something like it in the next release?
Thanks.
- Robert -
Generated By: Teradata Corporation (Mon Nov 12 15:29:56 PST 2007)
extensions.c | 12
++++++++++++++++++++++++++++++++++++++++++++++++++++++
extensions/sial.c | 7 +++++++++++++++++++++++++++++++
2 files changed, 19 insertions(+), 0 deletions(-)
Index: crash-4.0-4.8/extensions/sial.c
===================================================================
---
crash-4.0-4.8-orig/extensions/sial.c
2007-10-30
08:51:54.000000000 -0
700
+++ crash-4.0-4.8/extensions/sial.c 2007-11-12
15:28:55.000000000
-0800
@@ -638,6 +638,13 @@
run_callback(void)
{
extern char *crash_global_cmd();
+extern FILE *crash_cmd_filep();
+
+ FILE *fp;
+
+ if ((fp = crash_cmd_filep()) != NULL) {
+
sial_setofile(fp);
+ }
sial_cmd(crash_global_cmd(), args,
argcnt);
}
Index: crash-4.0-4.8/extensions.c
===================================================================
--- crash-4.0-4.8-orig/extensions.c 2007-10-30
08:51:54.000000000
-0700
+++ crash-4.0-4.8/extensions.c 2007-11-12 15:27:21.000000000 -0800
@@ -374,3 +374,15 @@
{
return pc->cmd_table;
}
+
+FILE *
+crash_cmd_filep(void)
+{
+ if (pc->redirect &
REDIRECT_TO_FILE) {
+
return pc->ofile;
+ } else if (pc->redirect &
REDIRECT_TO_PIPE) {
+
return pc->pipe;
+ } else {
+
return NULL;
+ }
+}
Confidentiality Notice This e-mail (including any attachments) is intended only
for the recipients named above. It may contain confidential or privileged
information and should not be read, copied or otherwise used by any other
person. If you are not a named recipient, please notify the sender of that fact
and delete the e-mail from your system.