Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r66010 - trunk/boost/asio/impl
From: chris_at_[hidden]
Date: 2010-10-16 07:04:11


Author: chris_kohlhoff
Date: 2010-10-16 07:04:08 EDT (Sat, 16 Oct 2010)
New Revision: 66010
URL: http://svn.boost.org/trac/boost/changeset/66010

Log:
Add support for hardware flow control on QNX. Refs #4625.

Text files modified:
   trunk/boost/asio/impl/serial_port_base.ipp | 13 +++++++++++++
   1 files changed, 13 insertions(+), 0 deletions(-)

Modified: trunk/boost/asio/impl/serial_port_base.ipp
==============================================================================
--- trunk/boost/asio/impl/serial_port_base.ipp (original)
+++ trunk/boost/asio/impl/serial_port_base.ipp 2010-10-16 07:04:08 EDT (Sat, 16 Oct 2010)
@@ -253,12 +253,16 @@
     storage.c_iflag &= ~(IXOFF | IXON);
 # if defined(_BSD_SOURCE)
     storage.c_cflag &= ~CRTSCTS;
+# elif defined(__QNXNTO__)
+ storage.c_cflag &= ~(IHFLOW | OHFLOW);
 # endif
     break;
   case software:
     storage.c_iflag |= IXOFF | IXON;
 # if defined(_BSD_SOURCE)
     storage.c_cflag &= ~CRTSCTS;
+# elif defined(__QNXNTO__)
+ storage.c_cflag &= ~(IHFLOW | OHFLOW);
 # endif
     break;
   case hardware:
@@ -266,6 +270,10 @@
     storage.c_iflag &= ~(IXOFF | IXON);
     storage.c_cflag |= CRTSCTS;
     break;
+# elif defined(__QNXNTO__)
+ storage.c_iflag &= ~(IXOFF | IXON);
+ storage.c_cflag |= (IHFLOW | OHFLOW);
+ break;
 # else
     ec = boost::asio::error::operation_not_supported;
     return ec;
@@ -304,6 +312,11 @@
   {
     value_ = hardware;
   }
+# elif defined(__QNXNTO__)
+ else if (storage.c_cflag & IHFLOW && storage.c_cflag & OHFLOW)
+ {
+ value_ = hardware;
+ }
 # endif
   else
   {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk