X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C805E6.2BAA0871@onstor-exch02.onstor.net>; Wed, 3 Oct 2007 10:52:31 -0700
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C805E6.2BAA0871"
Content-class: urn:content-classes:message
Subject: FW: PERFORCE change 25711 for review
Date: Wed, 3 Oct 2007 10:52:31 -0700
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E05CB873D@onstor-exch02.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: PERFORCE change 25711 for review
Thread-Index: AcgFx6YqoSs77iw5S3auDy0ej9ilwgAGzTWQ
From: "Charissa Willard" <charissa.willard@onstor.com>
To: "Brian DeForest" <brian.deforest@onstor.com>
Cc: "Sudharsan Srinivasan" <sudharsan@onstor.com>,
	"Jeyaram Sankar Gurusamy (HCL)" <jeyaramg@onstor.com>,
	"dl-Cougar" <dl-Cougar@onstor.com>

This is a multi-part message in MIME format.

------_=_NextPart_001_01C805E6.2BAA0871
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Brian,

=20

Rendell did a sync to the top of the tree and cannot run commands in the
nfxsh. Rendell is running on bobcat/linux. He had to back out the
changes in order to be able to use nfxsh.  =20

=20

Also, as a general rule, if code is to be added to check for NULL, the
variable should be initialized to NULL. I believe linux is more
susceptible to this problem then BSD. The change to illustrate this case
can be seen in /ssc-nfxsh/vtysh_config.c:

=20

/* Read up configuration file from file_name. */

void

vtysh_read_config (char *config_file,

                 char *config_current_dir,

                 char *config_default_dir)

{

   char *cwd;

   FILE *confp =3D NULL;

   char *fullpath; <=3D=3D fullpath pointer needs to be set to NULL here

   ...

=20

   if (confp =3D=3D NULL)

   {

      if(fullpath !=3D NULL) { <=3D=3D HCL added these 2 lines

         free(fullpath);

      }

      return; // S'OK if they don't have such a file

   }

   ...

}

=20

-Charissa

=20

Email from Rendell:

=20

The latest change in vtysh_config.c has potential problems. =20

=20

1. fullpath variable is not initialized prior to checking and freeing it
in all cases.  (The else case when config_file is NULL in particular)

    Freeing some arbitrary non-null memory address is a bad thing
indeed.

=20

2. fullpath should only be freed if it points to memory was previously
allocated in this local routine.

=20

3. Potential memory leak at line 140.

=20

=20

=3D=3D=3D=3D //depot/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c#3 -
/homes/rendellf/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c =3D=3D=3D=3D

154a155,157

>               if(fullpath !=3D NULL) {

>                 free(fullpath);

>               }

175a179,181

>   if(fullpath !=3D NULL) {

>     free(fullpath);

>   }

=20

=20

=20

=20

-----Original Message-----
From: Ken Renshaw=20
Sent: Wednesday, October 03, 2007 7:14 AM
To: Amit Bothra; Andy Sharp; Brian DeForest; Charissa Willard; Chris
Vandever; Danqing Jin; Deepak Veliath; Henry Lau; Ian Brown; Jobi
Ariyamannil; Jonathan Goldick; Ken Renshaw; Larry Scheer; Maxim
Kozlovsky; Mike Lee; Sandrine Boulanger; Tim Gardner
Subject: PERFORCE change 25711 for review

=20

Change 25711 by perforce@srinivasa-rfb-dev on 2007/10/03 02:11:52

=20

       Some bugs from the checkers RESOURCE_LEAK, PW.SET_BUT_NOT_USED,

       TAINTED_SCALARS e.t.c have been resolved.

       Reviewed by perforce(prasanna).

=20

Affected files ...

=20

... //depot/dev/nfx-tree/code/sm-raidctrl/raid-main.c#3 edit

... //depot/dev/nfx-tree/code/sm-raidctrl/raid-ui.c#4 edit

... //depot/dev/nfx-tree/code/sm-sct/sct.c#3 edit

... //depot/dev/nfx-tree/code/sm-tape/mc-ui.c#4 edit

... //depot/dev/nfx-tree/code/sm-tape/tape-main.c#3 edit

... //depot/dev/nfx-tree/code/sm-tape/tape-sm.c#6 edit

... //depot/dev/nfx-tree/code/ssc-cluster/cluster-dcache-api.c#3 edit

... //depot/dev/nfx-tree/code/ssc-cluster/cluster-tape-api.c#3 edit

... //depot/dev/nfx-tree/code/ssc-elog-shell/elog-shell.c#5 edit

... //depot/dev/nfx-tree/code/ssc-nfxsh/vty.c#6 edit

... //depot/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c#4 edit

... //depot/dev/nfx-tree/code/ssc-rmc/rmc.c#6 edit

... //depot/dev/nfx-tree/code/ssc-rmc/rmc_api.c#6 edit

... //depot/dev/nfx-tree/code/ssc-rmc/rmc_mp.c#4 edit

... //depot/dev/nfx-tree/code/ssc-rmc/rmc_server.c#5 edit

=20

=20

http://liszt:1818/@md=3Dd&cd=3D//depot/$c=3DG35@/25711?ac=3D10


------_=_NextPart_001_01C805E6.2BAA0871
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:st1=3D"urn:schemas-microsoft-com:office:smarttags" =
xmlns=3D"http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)">
<o:SmartTagType =
namespaceuri=3D"urn:schemas-microsoft-com:office:smarttags"
 name=3D"PersonName"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:10.0pt;
	font-family:"Courier New";}
a:link, span.MsoHyperlink
	{color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{color:purple;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:9.0pt;
	font-family:"Courier New";}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 100.75pt 1.0in 100.75pt;}
div.Section1
	{page:Section1;}
-->
</style>

</head>

<body lang=3DEN-US link=3Dblue vlink=3Dpurple>

<div class=3DSection1>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>Brian,<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>Rendell did a sync to the top of the tree and cannot run commands =
in the
nfxsh. Rendell is running on bobcat/linux. He had to back out the =
changes in
order to be able to use nfxsh. &nbsp;&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>Also, as a general rule, if code is to be added to check for =
NULL, the variable
should be initialized to NULL. I believe linux is more susceptible to =
this
problem then BSD. The change to illustrate this case can be seen in =
/ssc-nfxsh/vtysh_config.c:<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>/* Read up configuration file from file_name. =
*/<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>void<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>vtysh_read_config (char =
*config_file,<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp; &nbsp;&nbsp;
char *config_current_dir,<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp; &nbsp;&nbsp;
char *config_default_dir)<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>{<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp; &nbsp;char *cwd;<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp; &nbsp;FILE *confp =3D NULL;<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp; &nbsp;<b><span style=3D'font-weight:bold'>char *fullpath; =
</span></b></span></font><b><font
face=3DWingdings><span =
style=3D'font-family:Wingdings;font-weight:bold'>&ccedil;</span></font>
fullpath pointer needs to be set to NULL here<o:p></o:p></b></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&#8230;<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp; &nbsp;if (confp =3D=3D NULL)<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp; &nbsp;{<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><b><font size=3D1 face=3D"Courier New"><span
style=3D'font-size:9.0pt;font-weight:bold'>&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;if(fullpath
!=3D NULL) { </span></font></b><b><font face=3DWingdings><span =
style=3D'font-family:
Wingdings;font-weight:bold'>&ccedil;</span></font> HCL added these 2 =
lines<o:p></o:p></b></p>

<p class=3DMsoPlainText><b><font size=3D1 face=3D"Courier New"><span
style=3D'font-size:9.0pt;font-weight:bold'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;
&nbsp;free(fullpath);<o:p></o:p></span></font></b></p>

<p class=3DMsoPlainText><b><font size=3D1 face=3D"Courier New"><span
style=3D'font-size:9.0pt;font-weight:bold'>&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;}<o:p></o:p></span></font></b></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;return; // S'OK if they don't have =
such a
file<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp; }<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp; &#8230;<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>}<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>-Charissa<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><u><font size=3D1 face=3D"Courier New"><span
style=3D'font-size:9.0pt'>Email from =
Rendell</span></font></u>:<o:p></o:p></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>The latest change in =
vtysh_config.c
has potential problems.&nbsp; <o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><o:p>&nbsp;</o:p></span></fo=
nt></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>1. fullpath variable is not
initialized prior to checking and freeing it in all cases.&nbsp; (The =
else case
when config_file is NULL in particular)<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&nbsp;&nbsp;&nbsp; Freeing =
some
arbitrary non-null memory address is a bad thing =
indeed.<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><o:p>&nbsp;</o:p></span></fo=
nt></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>2. fullpath should only be =
freed if
it points to memory was previously allocated in this local =
routine.<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><o:p>&nbsp;</o:p></span></fo=
nt></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>3. Potential memory leak at =
line
140.<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><o:p>&nbsp;</o:p></span></fo=
nt></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><o:p>&nbsp;</o:p></span></fo=
nt></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>=3D=3D=3D=3D
//depot/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c#3 -
/homes/rendellf/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c =
=3D=3D=3D=3D<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>154a155,157<o:p></o:p></span=
></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;if(fullpath !=3D NULL) {<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
free(fullpath);<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>175a179,181<o:p></o:p></span=
></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp; =
if(fullpath !=3D
NULL) {<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp;&nbsp;&nbsp;=

free(fullpath);<o:p></o:p></span></font></p>

<p class=3DMsoNormal style=3D'text-autospace:none'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>&gt;&nbsp;&nbsp; =
}<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>-----Original Message-----<br>
From: Ken Renshaw <br>
Sent: Wednesday, October 03, 2007 7:14 AM<br>
To: <st1:PersonName w:st=3D"on">Amit Bothra</st1:PersonName>; =
<st1:PersonName
w:st=3D"on">Andy Sharp</st1:PersonName>; Brian DeForest; <st1:PersonName =
w:st=3D"on">Charissa
 Willard</st1:PersonName>; <st1:PersonName w:st=3D"on">Chris =
Vandever</st1:PersonName>;
Danqing Jin; Deepak Veliath; <st1:PersonName w:st=3D"on">Henry =
Lau</st1:PersonName>;
<st1:PersonName w:st=3D"on">Ian Brown</st1:PersonName>; <st1:PersonName =
w:st=3D"on">Jobi
 Ariyamannil</st1:PersonName>; <st1:PersonName w:st=3D"on">Jonathan =
Goldick</st1:PersonName>;
Ken Renshaw; <st1:PersonName w:st=3D"on">Larry Scheer</st1:PersonName>; =
Maxim Kozlovsky;
<st1:PersonName w:st=3D"on">Mike Lee</st1:PersonName>; <st1:PersonName =
w:st=3D"on">Sandrine
 Boulanger</st1:PersonName>; <st1:PersonName w:st=3D"on">Tim =
Gardner</st1:PersonName><br>
Subject: PERFORCE change 25711 for review</span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>Change 25711 by perforce@srinivasa-rfb-dev on 2007/10/03 =
02:11:52<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Some bugs from the checkers
RESOURCE_LEAK, PW.SET_BUT_NOT_USED,<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TAINTED_SCALARS e.t.c have =
been
resolved.<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Reviewed by =
perforce(prasanna).<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>Affected files ...<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-raidctrl/raid-main.c#3 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-raidctrl/raid-ui.c#4 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-sct/sct.c#3 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-tape/mc-ui.c#4 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-tape/tape-main.c#3 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/sm-tape/tape-sm.c#6 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-cluster/cluster-dcache-api.c#3 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-cluster/cluster-tape-api.c#3 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-elog-shell/elog-shell.c#5 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-nfxsh/vty.c#6 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-nfxsh/vtysh_config.c#4 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-rmc/rmc.c#6 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-rmc/rmc_api.c#6 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-rmc/rmc_mp.c#4 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>... //depot/dev/nfx-tree/code/ssc-rmc/rmc_server.c#5 =
edit<o:p></o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoPlainText><font size=3D1 face=3D"Courier New"><span =
style=3D'font-size:
9.0pt'>http://liszt:1818/@md=3Dd&amp;cd=3D//depot/$c=3DG35@/25711?ac=3D10=
<o:p></o:p></span></font></p>

</div>

</body>

</html>

------_=_NextPart_001_01C805E6.2BAA0871--
