diff options
author | patacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679> | 2012-02-01 21:10:40 +0000 |
---|---|---|
committer | patacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679> | 2012-02-01 21:10:40 +0000 |
commit | a1646787df582b65dcfe0fd0d0b9b251a613a5f3 (patch) | |
tree | f543747f552741b311effcf385e00bda0be40e74 /apps/netutils | |
parent | 2a2655f8e0dc040d62c3c6d19bc298fc0ebb3f64 (diff) | |
download | px4-firmware-a1646787df582b65dcfe0fd0d0b9b251a613a5f3.tar.gz px4-firmware-a1646787df582b65dcfe0fd0d0b9b251a613a5f3.tar.bz2 px4-firmware-a1646787df582b65dcfe0fd0d0b9b251a613a5f3.zip |
Re-verficatin of examples/telnetd after refactoring of fgets/readline functionality
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4358 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'apps/netutils')
-rw-r--r-- | apps/netutils/telnetd/telnetd_driver.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/apps/netutils/telnetd/telnetd_driver.c b/apps/netutils/telnetd/telnetd_driver.c index 7d36e9d2d..eb43012c4 100644 --- a/apps/netutils/telnetd/telnetd_driver.c +++ b/apps/netutils/telnetd/telnetd_driver.c @@ -518,8 +518,12 @@ static int telnetd_close(FAR struct file *filep) psock_close(&priv->td_psock); - /* Release the driver memory. What if there are threads - * waiting on td_exclsem? They will never be awakened! + /* Release the driver memory. What if there are threads waiting on + * td_exclsem? They will never be awakened! How could this happen? + * crefs == 1 so there are no other open references to the driver. + * But this could have if someone were trying to re-open the driver + * after every other thread has closed it. That really should not + * happen in the intended usage model. */ DEBUGASSERT(priv->td_exclsem.semcount == 0); @@ -733,6 +737,8 @@ FAR char *telnetd_driver(int sd, FAR struct telnetd_s *daemon) /* Initialize the allocated driver instance */ + sem_init(&priv->td_exclsem, 0, 1); + priv->td_state = STATE_NORMAL; priv->td_crefs = 0; priv->td_pending = 0; |