public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Jonathan Larmour <jlarmour@redhat.com>
To: Grant Edwards <grante@visi.com>
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] Redboot: net_io_getc_nonblock not setting return value?
Date: Fri, 09 Feb 2001 10:26:00 -0000	[thread overview]
Message-ID: <3A843664.C65509A2@redhat.com> (raw)
In-Reply-To: <20010209121337.A4524@visi.com>

Grant Edwards wrote:
> 
> On Fri, Feb 09, 2001 at 05:52:23PM +0000, Jonathan Larmour wrote:
> 
> > >    160  static cyg_bool
> > >    161  net_io_getc_nonblock(void* __ch_data, cyg_uint8* ch)
> > >    162  {
> > >    163      if (_net_io_getc_nonblock(__ch_data, ch)) {
> > >    164          if (*ch == TELNET_IAC) {
> > >    165              cyg_uint8 esc;
> > >    166              // Telnet escape - need to read/handle more
> > >    167              while (!_net_io_getc_nonblock(__ch_data, &esc)) ;
> > >    168              if (esc == TELNET_IP) {
> > >    169                  // Special case for ^C == Interrupt Process
> > >    170                  *ch = 0x03;
> > >    171                  // Just in case the other end needs synchronizing
> > >    172                  net_io_putc(__ch_data, TELNET_IAC);
> > >    173                  net_io_putc(__ch_data, TELNET_WONT);
> > >    174                  net_io_putc(__ch_data, TELNET_TM);
> > >    175                  net_io_flush();
> > >    176                  return true;
> > >    177              }
> > >    178              if (esc == TELNET_DO) {
> > >    179                  // Telnet DO option
> > >    180                  while (!_net_io_getc_nonblock(__ch_data, &esc)) ;
> > >    181                  // Respond with WONT option
> > >    182                  net_io_putc(__ch_data, TELNET_IAC);
> > >    183                  net_io_putc(__ch_data, TELNET_WONT);
> > >    184                  net_io_putc(__ch_data, esc);
> > >    185                  return false;  // Ignore this whole thing!
> > >    186              }
> > >    187          }
> > >    188      } else {
> > >    189          return false;
> > >    190      }
> > >    191  }
> > >
> > > Should there be a "return true;" either between lines 187/188
> > > or just before the final brace at line 191?
> >
> > It should probably just have a default return false at the end. i.e. just
> >
> > >    187          }
> > >    188      }
> > >    189      return false;
> > >    191  }
> >
> > I'll change it.
> 
> I'm confused.  Why is it false and not true?  How would reading
> a normal character ever return a true status?
> 
> My brain can't handle things nested too deeply -- especially w/
> K&R brace placement ;).  I ended up fixing my copy like this:

Sorry you're right (I tried to answer too quickly :-/ ). I'll change it to
the way you did it.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

      reply	other threads:[~2001-02-09 10:26 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-02-09  9:32 Grant Edwards
2001-02-09  9:52 ` Jonathan Larmour
2001-02-09 10:09   ` Grant Edwards
2001-02-09 10:26     ` Jonathan Larmour [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3A843664.C65509A2@redhat.com \
    --to=jlarmour@redhat.com \
    --cc=ecos-discuss@sources.redhat.com \
    --cc=grante@visi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).