This is an automated email from the git hooks/post-receive script.

sthibault pushed a commit to branch upstream
in repository hurd.

commit aaba23a7f450d43d0062d66a712e5d0de62f7e87
Author: Justus Winter <[email protected]>
Date:   Wed Nov 6 10:37:42 2013 +0100

    term: fix error handling in hurdio_mdmctl
    
    hurdio_mdmctl allows one to set and clear bits from the modem control
    bit vector. However, plausible code paths exist that leave oldbits
    uninitialized. Fix this by returning an error instead if retrieving
    the oldbits failed and the bit set or clear operation was selected.
    
    Found using the Clang Static Analyzer.
    
    * term/hurdio.c (hurdio_mdmctl): Fix error handling.
---
 term/hurdio.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/term/hurdio.c b/term/hurdio.c
index 357ab38..b34854c 100644
--- a/term/hurdio.c
+++ b/term/hurdio.c
@@ -585,10 +585,15 @@ hurdio_mdmctl (int how, int bits)
            {
              error_t err = tioctl_tiocmodg (ioport, &oldbits);
              if (err && (err == EMIG_BAD_ID || err == EOPNOTSUPP))
-               tioc_caps &= ~TIOC_CAP_MODG;
+               {
+                 tioc_caps &= ~TIOC_CAP_MODG;
+                 return EOPNOTSUPP;
+               }
              else if (err)
                return err;
            }
+         else
+           return EOPNOTSUPP;
        }
 
       if (how == MDMCTL_BIS)

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-hurd/hurd.git

Reply via email to