[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ns] BayTcp files created?
On Tue, 12 Jun 2001, Brian Lee Bowers wrote:
> On Monday 11 June 2001 14:02, Michele Clark Weigle wrote:
> > I've updated to ns-2.1b8 and now, everytime I run a simulation,
> > ftpdly.tr and ftpfilesize.tr are created in my working directory.
> > I tracked this down to BayTcp (ftps.cc and ftpc.cc), but I haven't
> > figured out how to get around this yet. Any ideas?
>
> While I didn't write the code, the two files look like they are used
> for debugging purposes. A FILE* is created for each file (one in
> ftpc.cc and one in ftps.cc) that is used in a commented-out fprintf
> statement.
>
> Since the FILE* is not used in either file currently, you can apply a
> short term fix by changing the initialization of static member
> variables fp_ in each file from
> FILE* <classname>::fp_ = fopen(...);
ns
> to
> FILE* <classname>::fp_ = NULL;
>
> It isn't very elegant, and could be a problem if the fprintf
> statments are ever uncommented. Slightly more elegant approach
> follows
The universal debug_ class variable may be of use here, not least
because it can be enabled on a per-object basis.
if (debug_) {
}
L.
> /* added at the top of ftps.cc and ftpc.cc */
> #define DEBUGoff
>
> /* replace static variable initialization line with following */
> /* have to do this in both ftps.cc and ftpc.cc */
> #ifdef DEBUG
> FILE* <classname>::fp_ = fopen(...);
> #else
> FILE* <classname>::fp_ = NULL;
> #endif
>
> /* uncomment the fprintf statements, then bracket with */
> /* again, in both ftpc.cc and ftps.cc */
> #ifdef DEBUG
> fprintf(...); /* this is the uncommented fprintf */
> #endif
>
> DEBUG might not be the best choice for this macro variable. If the
> author/maintainer wants to chime in with a better name .... :)
>
> Brian Lee Bowers | RADIANT Team
> [email protected] | Los Alamos National Laboratory
<[email protected]>PGP<http://www.ee.surrey.ac.uk/Personal/L.Wood/>