[PATCH] libcsupport: Fix TOCTOU in getchark()
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed Jul 28 14:50:24 UTC 2021
Fix format, add Doxygen comments, and reduce includes.
---
cpukit/libcsupport/src/getchark.c | 21 +++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git a/cpukit/libcsupport/src/getchark.c b/cpukit/libcsupport/src/getchark.c
index 5a9afbda7a..cfe9c022d6 100644
--- a/cpukit/libcsupport/src/getchark.c
+++ b/cpukit/libcsupport/src/getchark.c
@@ -1,8 +1,9 @@
/**
- * @file
+ * @file
*
- * @brief Get Character from Stdin
- * @ingroup libcsupport
+ * @ingroup BSPIO
+ *
+ * @brief This source file contains the implementation of getchark().
*/
/*
@@ -18,13 +19,17 @@
#include "config.h"
#endif
-#include <rtems.h>
#include <rtems/bspIo.h>
-int getchark(void)
+int getchark( void )
{
- if ( BSP_poll_char )
- return (*BSP_poll_char)();
+ BSP_polling_getchar_function_type poll_char;
+
+ poll_char = BSP_poll_char;
+
+ if ( poll_char == NULL ) {
+ return -1;
+ }
- return -1;
+ return ( *poll_char )();
}
--
2.26.2
More information about the devel
mailing list